2010-08-05 51 views
0

我正在使用Websupergoo的ABCpdf for ASP.NET,我正在嘗試在代碼中生成PDF。我的問題是,當我在我的開發環境中測試代碼時一切正常,但是當我將代碼發佈到我們的測試服務器時,它停止工作。我們的生產服務與我們的測試服務在同一臺機器上,但他們使用的是不同版本的ABCpdf,所以我不得不與DLL版本混爲一談,直到我們可以確認DLL的新版本與代碼一起工作。我試過使用32位和64位的DLL作爲生產服務器,以便可以同時使用不同的版本 - 但不管我做什麼測試服務器都停止生成PDF。更糟糕的是,服務器實際上並沒有拋出錯誤 - 所以我無法確定問題。ABCpdf DLL版本錯誤 - 接下來要做什麼?

請幫忙!!

回答

1

可能是一個權限問題。生產服務器上的安全策略通常比開發系統上的安全策略更嚴格,並且在部署過程中經常會導致問題

您可以嘗試以管理員身份登錄並嘗試運行組件的最小測試應用程序以查看是否屬於這種情況。如果您的代碼作爲獨立應用程序(exe)運行,但不作爲ASP.NET應用程序運行,則很可能您有權限問題。 ASP.NET通常在受限制的權限帳戶下運行,例如IUSR_MACHINENAME。

您可以使用Doc.GetInfo(0,「ABCpdfVersion」)檢查正在調用哪個版本的ABCpdf。通過爲交互式用戶調用ASP.NET的XSettings.LicenseDescription,還可以檢查許可證是否已正確安裝。您可以在產品文檔中找到更多信息manual installation...

在系統上安裝了多個版本的DLL時,可能會調用錯誤的DLL,但是通常我會希望看到某種錯誤消息或拋出異常。

如果您無法確切地確定故障位置,請使用Process Monitor from SystemInternals。這會讓你看到哪些文件和註冊表鍵正在被實時訪問。如果您在ABCpdf或IIS工作進程中看到「ACCESS DENIED」或「FAILURE」,那麼您應該查看這些情況發生的原因。

+0

您能否更新您的個人資料以披露您與ABCpdf的任何關係?你開始吸引垃圾郵件標誌。 – Will 2010-12-14 13:57:46