2010-08-31

Visual Studio 2010 英文版 .NET 3.5 SP1 Crystal Report 2008 FP31 Winform 內嵌於 Setup 專案內的解決方案

1.安裝VS2010英文版!(中文版不知行不行,請測過的朋友告知,謝謝!)
2.安裝cr4vs2010.exe 如果無法下載!請網路上自行尋找,下載網址如下:
http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/20322
目前有二個版本:
Beta 1 MD5: 48B63F922440CC98C207720D48FE0E79
Beta 2 MD5: 7E6D73E19C4ECC252B61C7529C44AD39
3.將Crystal Report 2008更新到最新的Service Pack
筆者是安裝Crystal Report 2008 SP0然後一路安裝升級包
SP1, SP2, SP3, FP31,目前最新的Pack,安裝網址如下:
https://websmp130.sap-ag.de/sap%28bD1lbiZjPTAwMQ==%29/bc/bsp/spn/bobj_download/main.htm
下拉選單:
Software Product 選 Crystal Reports
Product Version (optional) 選 Crystal Reports 2008
Software Type (optional) 選 Utility
然後按下Search按鈕
裝完最新的service pack fp31 之後別忘了還要下載Crystal Reports 2008 Fix Pack 3.1 - Merge Modules
下載完成會得到cr2008sp3_mm_fp31.zip
請解壓後,把CRRuntime_12_3.msm,如果需要繁簡體,請一起複制起來,CRRuntime_12_3_zh_CN.msm,CRRuntime_12_3_zh_TW.msm
放到C:\Program Files (x86)\Common Files\Merge Modules
32位元作業系統請把(x86)拿掉
4.請參考VS2008 SP1 如何設定讓 .NET 3.5 SP1 內嵌於 Setup 專案內
5.將Microsoft Visual C++ 2005 Redistributable Package (x86)也內嵌於專案內
http://www.xun6a.us/file/8bf2543d8/vcredist_x86_2005.zip.html
於此下載,解壓後會得到一個vcredist_x86_2005目錄,將此目錄複制貼到以下路徑
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\


注意:如果客戶端不想用內嵌的方式,則必需自行安裝.Net Framework 3.5 SP1和
Microsoft Visual C++ 2005 Redistributable Package (x86)

------------------------------------------------------------------------------------------------------------
開始測試:
1.先開一個新的空的專案選要存的地方(桌面),執行環境別忘了要選.Net Framework 3.5
2.在空的專案內按右鍵,加入Windows Form專案選.Net Framework 3.5
加一個新的WinForm在左邊Toolbar選到Crystal Report Viewer拉到視窗內,按下Show All Files按鈕
就會看到References裡面多了6個Crystal Report的dll

請把這6個Crystal開頭的References記下來
然後選起來之後選右鍵,Remove掉
再依序到以下目錄一個一個加回來
C:\Program Files (x86)\Business Objects\Common\4.0\managed
C:\Program Files (x86)\Business Objects\Common\4.0\managed\dotnet2

3.在空的專案內按右鍵,加入Setup專案選.Net Framework 3.5
在Setup專案上按右鍵選Add=>Merge Module...選CRRuntime_12_3.msm,如需繁簡體CRRuntime_12_3_zh_CN.msm,CRRuntime_12_3_zh_TW.msm也一併加入
4.選到CRRuntime_12_3.msm右鍵Properties看到MergeModuleProperties,在Keycode輸入
5.在空的專案內按右鍵Properties選到Prerequisites...按鈕
把.net4.0 勾勾取消
.NET Framework 3.5 SP1打勾
Microsoft Visual C++ 2005打勾
Installwindows 3.1打勾
選Download prerequisites from the same location as my application

如果是自己安裝不需內嵌的客戶端,那就都
把.net4.0 勾勾取消把.NET Framework 3.5 SP1打勾
其他留預設就行
Download prerequisites from the component vendor's web site

6.在Setip專案內Detected Dependencies目錄展開選到Microsoft .NET Framework點二下
把Version從.NET 4.0改成.NET Framework 3.5


7.搞定囉,可以開始編譯了
最後會得到



執行setup.exe就會檢查.NET 3.5 SP1和Microsoft Visual C++ 2005
如果沒有就會自動裝好,搞定收工!

後記,編譯時會得到15個Warnings,但是不影響執行結果
如果有解決Warnings的朋友請幫忙告知,如何解決,多謝

0 comments: