2009-04-22 73 views
1

我在Access窗體(版本2007,2003格式)中使用Crystal Reports Viewer 11 ActiveX控件。我的開發機器上安裝了CRXI,一切正常。我將引用的DLL複製到客戶端的機器上,但是當我嘗試註冊它時,它會顯示「無法找到模塊」(我對拼寫進行了雙重和三重檢查),並且當我嘗試打開表單時,它告訴我「當代碼嘗試創建報表對象的新實例時,ActiveX組件不能創建對象「。我懷疑這個DLL需要更多的依賴文件,但是我對於發現什麼以及如何去查找有點不知所措。儘管我使用CR控件,但我認爲這將適用於引發此錯誤的任何ActiveX控件。謝謝。訪問中的ActiveX依賴項

+0

你用什麼來發布你的Access應用程序? Access包和部署嚮導應該解決所有依賴關係,並將所有引用的DLL包含在安裝程序中,然後在安裝時註冊它們。 – 2009-04-22 23:54:07

回答

0

我在回答我自己的問題,以防有人在未來通過搜索找到該問題。我沒有訪問包&部署嚮導大衛上面提到(好吧,我可能擁有它,但無法找到它),但我想它可能會做我所需要的,所以我建議任何人先嚐試一下。相反,我能夠創建一個安裝程序,使用Visual Studio安裝程序和Crystal合併模塊安裝所需的文件;請注意,雖然這並不困難,也不愉快。

我從MSDN下載並安裝了Visual Studio Installer 1.1。這將在Visual Studio 6.0中創建新的項目類型(特別是,我使用InterDev 6.0),該類型創建Windows Installer(* .msi)安裝文件。由於其中一個Crystal合併模塊需要Crystal許可證密鑰,而VSI不支持合併模塊參數,因此我還必須使用可從Microsoft Windows SDK(也可在Microsoft下載站點上獲得)中獲得的合併模塊編輯器Orca。我建議閱讀MSDN上的SDK和Orca頁面以獲取更多信息。使用Orca,我能夠放置我的密鑰並重新編譯合併模塊,因此我不必將我的密鑰部署到我的用戶,而我的用戶不必輸入密鑰。

包裝&包裝&可能是一個更好的選擇,但是當面對使用合併模塊時(如Crystal),此方法將完成工作。

0

Crystal Help文件中應該有一個運行時分發文檔 - 根據以往經驗(Crystal 8.5),有多個文件需要分發和註冊。