2008-11-10 162 views
2

我有一個ASP.NET 2.0(C#)網頁,其鏈接從MS SQL數據庫中提取blob,並以適當的文件格式輸出,即Word,WordPerfect,PDF。ASP.NET:如何將文件從數據庫發送到打印機?

我的用戶希望一鍵打印這些文件。現在他們必須點擊鏈接才能打開文件,然後在打開文件的應用程序中單擊「打印」按鈕。

另外,如果可能的話,我想用打印機將多個文檔發送到打印機。

謝謝。

回答

2

是否要打印到連接到服務器或連接到客戶端的打印機?

如果你想在客戶端上打印,你不會有太多機會。對於HTML內容,也許有些JavaScript或Flash可能會觸發打印對話框(不確定),但如果它是一個必須在第三方應用程序(如PDF,DOC,XLS等)中打開的文件,運氣。

如果是內部網絡,您可能會創建一個安裝在每個客戶端PC上的桌面應用程序,然後觸發打印。

如果它是連接到服務器的打印機,則可以使用標準.net工具進行打印,但您可能需要解決打印PDF/DOC/XLS等情況時需要解決的問題,因爲您需要使用自動化(COM或SendKeys之類的東西),這會導致您在服務器上頭痛。

所以簡而言之:沒有太多的事情可以只用ASP.net來處理。

+0

這將是連接到客戶端的打印機。 – 2008-11-10 20:47:43

+0

然後你有一個問題。出於安全原因,您將無法使用JavaScript從瀏覽器控制第三方應用程序,因此您需要某種在客戶端上運行的Helper Utility並觸發打印。 – 2008-11-10 20:50:43

0

我已經得到的最接近這一使用Javascript:

<body onload="window.print()"> 
... 
</body> 

這將彈出的打印對話框頁面加載時(見this post更多)。如果你仔細想想,除非你在內部網絡上,否則你可能無法做其他事情。您希望計算機如何「自動」開始打印彈出窗口?

相關問題