這幾天一直在做乙個web程式的安裝包,使用vs做安裝程式需要注意的一些問題:
1. 關於兩種setup專案
vs 安裝程式專案模板有乙個setup project,還有乙個是web setup project。如果你的web程式可以安裝在c:/inetput/wwwroot下,那麼使用web setup project沒什麼問題,因為那是它的預設安裝路徑,且不能修改。這也是我放棄使用web setup project的原因,因為客戶要求程式檔案要安裝在c:/program files/comanyname/productname/目錄下。
2. 關於自定義banner
安裝嚮導介面的自定義banner的大小是500x70,如果需要自定義的banner,例如替換掉那個嚮導右上角預設的logo,可以用ps建乙個500x70的,在右上角新增自己的logo。如果大小不是500x70會被強制壓縮或拉伸為500x70,這樣會影響顯示質量。
3. 關於custom action
使用前面提到的setup project安裝web程式,就要自己寫custom action來建立iis站點,虛擬目錄。即使使用web setup project預設的會幫你建立站點及虛擬目錄,但是iis虛擬目錄的驗證方式等使用的是預設配置(允許匿名登入),如果你的程式使用的是其他驗證方式,還需要custom action來對iis進行操作。
custom action 其實就是自定義的class 只不過需要繼承自system.configuration.install.installer類 根據需要可重新該類的install, commit, uninstall, rollback等方法。這四個方法對應的就是custom action編輯器中的四種custom action型別 需要注意,custom action執行的時機:
因此,建立iis虛擬目錄的custom action應該是install型別的,而安裝結束後,開啟應用程式首頁的custom action應該是commit型別。
4. 關於custom action的引數傳遞
安裝嚮導與自定義的custom action直接的引數傳遞,例如使用者在安裝嚮導中配置的虛擬目錄名稱,可通過custom action data 來傳遞。setup專案中有許多內建的屬性 ,可直接作為引數使用。web setup 中還有自己特有的屬性 targetvdir, targetsite 分別表示iis虛擬目錄名,iis站點名。此外你還可以設定自定義的屬性,並作為引數供custom action使用,例如使用者在安裝嚮導中輸入的資料。
若要傳遞引數給custom action,需要在custom action編輯器中,選擇你的custom action > 屬性,在customactiondata屬性條碼中配置,例如, /domain="[domain]" /dgroup="[dgroup]"
其中 domain 及 dgroup就是我的自定義嚮導介面中的兩個輸入框對應的屬性值。
在custom action類中可通過如下**,來獲得使用者輸入值:
string domain = context.parameters["domain"];
string domaingroup = context.parameters["dgroup"];
5.關於web程式快捷方式
然後就可以在vs中建立基於這個.cmd的快捷方式了。在vs2008安裝專案的檔案系統編輯器中,建立使用者程式選單的快捷方式,可以先右鍵那個.cmd檔案,選擇建立快捷方式,然後將該快捷方式拖到[使用者程式選單]下面。
專案的總結
現在的專案快到結束了,該總結一下了。先寫下有關這個專案的一些標籤 三個月,乙個專案,還沒有做完,剛畢業,專案老套,技術落 後,同事缺乏交流,老闆不願重視,自己創造力不足,工作缺乏激情,做事條理不明,計畫嚴重滯後。剛畢業,進了一家好像很有前景的小公司,給了乙個 平台專案,從八月到十一月,三個月了,專案...
專案的總結
寫了兩天的課程設計,hibernate和stuts的結合,講一下自己的心得體會。以前這種感覺小,但是隨著慢慢的,這種感覺越來越強烈。乙個專案的實現這幾個步驟必不可少,否則,你的專案會出現你預想不到的問題。定義階段 一 需求分析,在寫專案時,要實現什麼首先要做需求分析,這個太重要了。二 可行性初步計畫...
VUE web專案的安裝
1 安裝nodejs 2 參考網上教程下安裝vue模組 檢視版本 npm v 最新穩定版 cnpm install vue 全域性安裝 vue cli cn pmin stal l gl obal vue cli創 建乙個基 於web pack 模板的新 專案c np mins tall glo b...