Reference:
介紹 Windows Installer 好用的合併模組 (Merge Modules)
Crystal Reports and Visual Studio .NET
Crystal report load failed..?
1426232 - File not found error experienced after deploying application.
Regedit.exe import fails to pick up “text” field
緣由:
用 VS2003 開發的 Crystal report 給 User 使用,但不想在 User PC 安裝 VS2003。
方法:
用
Merge Modules 的方式 把 Crystal report 需要的檔案包成 msi 安裝檔,讓 User 執行安裝程式。
VS2003 Crystal report 需要的 Merge Modules:
Crystal_Database_Access2003.msm
Crystal_Database_Access2003_enu.msm
Crystal_Managed2003.msm
Crystal_regwiz2003.msm
VC_User_CRT71_RTL_X86_---.msm (used for reports based on ADO.NET)
VC_User_STL71_RTL_X86_---.msm (used for reports based on ADO.NET)
User 安裝後執行有錯誤訊息:
Cannot find KeycodeV2.dll, or invalid keycode.
Load report failed.
原因:
在封裝時輸入 Crystal report license key ,但無法裝到 User PC。
解法:
從開發者的電腦匯出 registry key,在 User PC 匯入。
但不能用 regedit 來做,因為 registry key 的內容有換行 (new line),匯入會失敗。
必須改用 reg export, save, import, restore。
步驟:
開發者電腦
reg export "HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crystal Decisions\Crystal Reports\VSNET\Keycodes\CR9 NET" key.reg
reg save "HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crystal Decisions\Crystal Reports\VSNET\Keycodes\CR9 NET" key.bin
User PC 用系統管理員權限開 cmd 執行
reg import key.reg
reg restore "HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Crystal Decisions\Crystal Reports\VSNET\Keycodes\CR9 NET" key.bin