日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

VSTO详细打包过程

發布時間:2024/3/26 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VSTO详细打包过程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們開發完成一個插件之后,當然是打包發布給其他人安裝使用。

打包的作用是安裝必要的運行環境和減少安裝的難度。VSTO自帶有個發布安裝的功能,位置如下圖:

該功能生成的安裝包有自動檢查所需要的.Net框架和VSTO組件并下載和安裝。但其最后安裝的位置我們不能自己定義,會自動把插件安裝到用戶的AppData目錄里面。

so~ 還是考慮其他方案。另外鑒于C#開發的東西基本是公開源碼的,需要對生成的dll文件進行一定混淆加密處理。整理了一套流程。如下圖:

所需要的軟件可以到這里下載:http://pan.baidu.com/s/1i4OuVZn

下面開始詳細講解打包過程,圖片有點多。

?

1、用Release方式生成項目

?

C#生成項目程序有兩種方式:Debug和Release。Release方式體積更小、運行更快。

按照上圖修改方式之后,再右鍵項目,生成:

生成完畢之后,可以在項目目錄中的,bin/Release中看到項目文件。我的項目文件如下,這些都是需要打包的。

?

2、DLL代碼混淆

很多人不愿意用VSTO做插件,除了入門麻煩(需要學習C#和Office相關的東西)之外,還有就是生成的項目文件基本是源碼。稍微反編譯一下,就能被看得清清楚楚。

這里有兩個dll文件,其中Microsoft.Office.Tools.Common.v4.0.Utilities.dll不需要處理。只需對我們自己代碼的dll文件處理即可。包含我的代碼那個文件是DTPT.dll。

?

混淆工具:Eziriz .NET Reactor。界面如下:

混淆之前,記得備份一下生成的dll。我一般混淆采用如下設置:

再點擊左邊的protect生成即可。

沒什么問題,點擊Browse Folder按鈕,打開混淆生成的文件,復制替換項目文件。測試一下所有功能是否能夠正常使用
因為有時候,代碼混淆會導致某些代碼執行不了。

勾選的混淆選項越多越容易導致混淆之后的文件不能使用。但勾選越少越容易被反編譯,真矛盾。我多次測試,發現勾選這3個是比較保險的。有時不行,去掉Obfuscation。

若混淆后,有功能可能不能使用。則需要斟酌去掉某些混淆選項,再重新生成測試,直到混淆文件可以完全使用。

?

3、創建打包項目

打包工具:Advanced Installer

新建一個打包工程,選擇如下:

New --> Add-Ins --> Office Add-In --> CreateProject

?

輸入你插件的名稱和組織(公司或網站),下一步。

?

這一步是要打包成什么程序,這個打包工具建議用msi格式,下一步。

?

設置打包這個工程保存的位置,以及打包發布的位置,下一步。

?

由于我們使用VSTO開發的,當然選擇第1個。再繼續。

?

選擇你VSTO項目的解決方案sln文件。再下一步,將會自動讀取項目的內容。

?

選擇使用Release生成的項目文件,再下一步。

?

默認勾選即可。若你還有什么文件是必備的沒有被勾選,自行勾選即可,再繼續下一步。

?

這一步很重要,盡管我開發用vs2013,我還是選擇都2010。2010兼容性比較好,可以兼容2007、2010、2013、2016等版本。后面還會根據這個找到所需的環境。設置完成之后,下一步。

?

如上圖設置,這些都是一些基本設置。填上自己項目相關信息即可,繼續下一步。

?

這一步也會是比較重要,選擇.net版本。若不知道你VSTO使用哪個.net版本,可以帶VSTO項目,在“項目”-->“屬性”-->“應用程序”中可以看到。

另外,最后一個不要勾選,后面有相關設置。

下一步,步驟還有不少。

?

先勾選,添加.net框架。若你也是使用4.0版本的,注意不要選擇4.0 Client Profile,一定要選擇4.0完整版本。

這里會自動添加下載地址。當然,你也可以改成你服務器的下載地址。

另外,這里建議勾上靜默安裝這些環境運行包。先別點下一步,這一頁還沒設置完成。

?

勾選VSTO Runtime,這次默認配置即可。必備環境這兩個即可,可以下一步了。

?

這個步驟是選擇安裝程序的語言,根據自己需求選擇即可,下一步。

?

這個是填寫服務條款,就是不同意不給安裝。自行根據需要填寫即可,下一步。

?

點“完成”,構建打包項目。

?

相關設置都可以在這里找到,英語盲的話,自己查字典。下面再說一些我個人認為要注意的地方。

?

4、完善打包工程

一般我都會修改這個版本號,和去掉Comments的描述。

?

看看Install Parameters,這里需要注意兩個地方。修改默認安裝路徑和勾上Run as administrator(用管理員身份運行)。

默認安裝路徑我都是[ProgramFilesFolder]DTPT,其中[ProgramFilesFolder]是指C判斷的Program Files文件夾,DTPT是我的項目名稱。

?

打開Digital Signature,你是用中文版的,不知道這個是哪個?對照圖標和位置打開即可。

去掉Time stamp URL。

?

這一步很重要,打開Prerequisites。找到VSTO Runtime 4.0勾選(會彈窗提醒是否下載,點“否”),這個在Web Server分組上面。

再將其拖動到Pre-install中,這個是指安裝時就檢查并處理。如下圖:

?

再選擇這個VSTO Runtime,打開Setup Files選卡,設置下面3個。

這個是為了設置靜默安裝,不過這里測試達不到預想的效果。這些參數是參考.net設置,可能這里參數不對,若知道的話歡迎留言交流。

?

打開Registry,這個是寫注冊信息。其中[Manufacturer]項是無用的,刪掉。這里你也可以添加一些你所需的注冊信息。

?

最后,打開Media,此處是設置安裝包輸出的。這里我之前原本想只生成一個exe程序。但發現一個exe程序有問題,還是生成一個msi和exe程序,改一下默認命名。

?

5、發布生成安裝包

找到這個菜單中的Run,點擊生成安裝包。

我生成的安裝包如下:

可以在前面設置的打包發布位置找到。其中package.msi和setup.exe是安裝包,setup.exe是入口程序。

這里我會多一個en文件夾。因為我選擇了兩種語言,外面這個是中文安裝包,里面這個是英文安裝包。

來源:http://yshblog.com/blog/97

總結

以上是生活随笔為你收集整理的VSTO详细打包过程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。