2011-08-29 45 views
0

我有一個WCF服務,它包裝了一些生成報告PDF的傳統DLL。這些遺留代碼在桌面應用程序中效果很好,但通過WCF服務調用時,PDF頁面大小由虛擬屏幕大小(頁面大小取決於比例變爲4:3)驅動,而不是實際的紙張大小。從IIS 7和Windows Server 2008上的WCF服務用戶調用的DLL看起來沒有默認打印機

我已經爲HKEY_CURRENT_USER下的打印機導出了各種註冊表項,並將它們重新導入到HKEY_USERS.DEFAULT下,並確保本地打印機可用於「每個人」。 PDF仍然出錯。

該站點運行在Windows Server 2008上的IIS 7中。該站點有自己的32-AppPool,作爲專門創建的用戶運行。該網站已禁用匿名身份驗證並禁用ASP.NET模擬。

奇怪的是,如果我將AppPool作爲自己運行,那麼報表PDF文件的頁面大小爲8.5 x 11。但是,只要我將它製作成特製的使用,頁面大小爲10.67 x 8.00英寸(4:3比例,例如1024x768)。

我錯過了什麼?

回答

0

我對WCF服務並不熟悉,但如果它們是真正的Windows服務,那麼它們就不會看到默認打印機就不足爲奇了。他們可能無法看到網絡共享。只需使用用戶帳戶而不是本地系統帳戶運行服務即可解決問題。

相關問題