2012-04-12 33 views
4

我開發了ASP.NET程序。問題是:我想選擇客戶端上的打印機並打印它。使用winform或應用程序打印客戶端

我知道這幾乎是不可能的,也許使用ActiveX,但我不太瞭解ActiveX,它只適用於IE。

所以我創建了一個解決方法。我創建了一個運行在PC客戶端上的Winfrom,並通過WCF連接到我的ASP.NET。

到現在爲止工作正常,但過程變得煩人的客戶端。因爲他必須使用ASP.NET來保存項目並運行Winform,並單擊它來從ASP.NET中檢索項目並將其打印出來。

現在我使用PULL方法,這意味着我的Winform PULL從ASP.NET的數據。 我不知道我是否可以使用PUSH方法,這意味着ASP.NET將數據推送到Winform,並且客戶端只在ASP.NET上的一個按鈕中單擊。 或者我怎樣才能讓我的winform總是聽ASP.NET?順便說一句,我想簡化客戶端,所以他只點擊一個按鈕而不是兩個。

謝謝你在前進, 甜菊

+4

爲什麼用戶不能在瀏覽器中使用他們的打印按鈕? – KingCronus 2012-04-12 14:07:03

+0

我做了,但它花費2點(1點保存項目和2點擊對話框打印) – user609511 2012-04-12 14:14:29

+0

您可以詳細說明「成本2點點」嗎?費用時間,金錢,什麼?對於用戶來說,啓動另一個應用程序的情況要糟得多。對於金錢,您不應該因爲與本地打印對話框交互而被收費。 我要回答約書亞德雷克的第三個建議。 – 2012-04-12 15:00:56

回答

1

當我看到它,你可以:

  1. 重拍你的WinForms應用程序在客戶端上運行Windows服務託管的WCF服務。這將使您的ASP.NET頁面可以調用WCF服務並讓它打印。
  2. 將Web瀏覽器控件添加到您的WinForms應用程序,並在單個應用程序中執行所有形式。
  3. 生成要在ASP.NET服務器端打印的信息,例如PDF,然後讓用戶正常打印。類似於@AdamKing。