網頁

ASP.NET Web網站部署(2) -- InstallShield Limited Edition

在Visual Studio 2010新增一種部署方式「InstallShield Limited Edition」,我們先看MSDN的介紹(部署的新功能):

InstallShield 2010 限量版自 Visual Studio 2010 起,您可以使用免費的 InstallShield 2010 限量版 (其可以取代 Visual Studio 安裝和部署專案範本中的功能) 來部署應用程式。如果您需要對部署方式進行更進階的自訂,可以升級至 InstallShield 完整版。

不過因為InstallShield 2010(簡稱IS)不是微軟體產品,所以MSDN上資訊有限,但InstallShield使用起來不會太複雜,也是不錯的選擇。

要使用IS必須先下載軟體安裝後必可以在Visual Studio 2010新增IS專案。

  1. 先到IS Limited Edition專頁
  2. 輸入必要資料,Email必須正確,序號會寄送到Email
  3. 下載安裝IS,重新啟動VS 2010
我本身下載了二次,第二次是提示我有更新,由此可知,雖然是限量版但還是有在維護更新,可以放心使用。

 開啟前一次專案,然後「加入」「新增專案」選擇「InstallShield LE」專案;

新增IS LE專案
IS專案
接下來就簡單了,你依畫面最下方的「Application Information」、「Installation Requirements」…一個一個設定,最後就完成了。另外在方案總管中如果你有看一個「鎖」的就是需要付費升級才能使用的功能。

選擇Application Information:

應用程式資訊
選擇Installation Requirements:
設定必要條件
 
選擇Installtion Architechture:

安裝架構
此為付費版本功能。

選擇Application Files:

輸出專案
選擇「內容檔」
選擇Application Shortcuts:
是否需要建立Web應用程式捷徑列,我們是網站,所以不需要。

選擇Application Registry:
是否要對機碼(Registry)做異動。我們不需要。

選擇Installation Interview:

細部設定
這是主要設定是否顯示「版權宣告」,是否需要輸入「使用者名稱、公司名稱」,是否可以「改變安裝路徑」等。

這樣就差不多設定好了,你可以直接點選IS專案,按「建置」就可以產生安裝檔。不過IS 2010還提供其他更進階的功能。

選擇方案總管:IS專案:1:General Information:

一般設定
例如我們可以在這裡選擇安裝操作過程的語言、公司名稱、支援資訊…。

選擇方案總管:IS專案:2:Files:
可以把其他檔案也加入安裝檔之中。

選擇方案總管:IS專案:2:Redistributables:
更細部設定「必要條件」。

選擇方案總管:IS專案:3:Internet Information Services:(重點)
我們可以直接針對IIS來設定。

新增Web網站
設定此網站細節
接下來我們就可以建置此安裝部署檔:

------ 已開始建置: 專案: ISSetup, 組態: DVD-5 ------
Created release folders
AdminExecuteSequence table successfully built
AdminUISequence table successfully built
AdvtExecuteSequence table successfully built
AdvtUISequence table successfully built
InstallExecuteSequence table successfully built
InstallUISequence table successfully built
Directory table successfully built
Feature table successfully built
FeatureComponents table successfully built
Component table successfully built
Loading File table
Building File table
File table successfully built
Building MsiFileHash table
MsiFileHash table successfully built
Class table successfully built
Extension table successfully built
ActionText table successfully built
AppSearch table successfully built
CCPSearch table successfully built
Condition table successfully built
AppId table successfully built
Started signing B109.tmp ...
Property table successfully built
Binary table successfully built
CompLocator table successfully built
ControlCondition table successfully built
ControlEvent table successfully built
CreateFolder table successfully built
CustomAction table successfully built
Error table successfully built
DrLocator table successfully built
DuplicateFile table successfully built
Environment table successfully built
EventMapping table successfully built
Font table successfully built
IniFile table successfully built
IniLocator table successfully built
ProgId table successfully built
ISIISItem table successfully built
ISIISProperty table successfully built
ISSelfReg table successfully built
LaunchCondition table successfully built
MIME table successfully built
MoveFile table successfully built
MsiAssembly table successfully built
MsiAssemblyName table successfully built
MsiDigitalCertificate table successfully built
MsiDigitalSignature table successfully built
MsiPackageCertificate table successfully built
MsiPatchCertificate table successfully built
MsiShortcutProperty table successfully built
PatchPackage table successfully built
PublishComponent table successfully built
Registry table successfully built
RegLocator table successfully built
RemoveFile table successfully built
RemoveIniFile table successfully built
RemoveRegistry table successfully built
ReserveCost table successfully built
SelfReg table successfully built
Shortcut table successfully built
Signature table successfully built
TextStyle table successfully built
TypeLib table successfully built
UIText table successfully built
Upgrade table successfully built
Verb table successfully built
_Validation table successfully built
Searching project for extract-at-build components...
Validating Custom Action sequencing
Embedding manifest SetupExe.Invoker.manifest into setup.exe
Dialog AdminChangeFolder for language 中文 (繁體,台灣): 中文(繁體) built
Dialog AdminNetworkLocation for language 中文 (繁體,台灣): 中文(繁體) built
Dialog AdminWelcome for language 中文 (繁體,台灣): 中文(繁體) built
Dialog CancelSetup for language 中文 (繁體,台灣): 中文(繁體) built
Dialog CustomSetup for language 中文 (繁體,台灣): 中文(繁體) built
Dialog CustomSetupTips for language 中文 (繁體,台灣): 中文(繁體) built
Dialog CustomerInformation for language 中文 (繁體,台灣): 中文(繁體) built
Dialog DatabaseFolder for language 中文 (繁體,台灣): 中文(繁體) built
Dialog DestinationFolder for language 中文 (繁體,台灣): 中文(繁體) built
Dialog DiskSpaceRequirements for language 中文 (繁體,台灣): 中文(繁體) built
Dialog FilesInUse for language 中文 (繁體,台灣): 中文(繁體) built
Dialog InstallChangeFolder for language 中文 (繁體,台灣): 中文(繁體) built
Dialog InstallWelcome for language 中文 (繁體,台灣): 中文(繁體) built
Dialog LicenseAgreement for language 中文 (繁體,台灣): 中文(繁體) built
Dialog MaintenanceType for language 中文 (繁體,台灣): 中文(繁體) built
Dialog MaintenanceWelcome for language 中文 (繁體,台灣): 中文(繁體) built
Dialog MsiRMFilesInUse for language 中文 (繁體,台灣): 中文(繁體) built
Dialog OutOfSpace for language 中文 (繁體,台灣): 中文(繁體) built
Dialog PatchWelcome for language 中文 (繁體,台灣): 中文(繁體) built
Dialog ReadmeInformation for language 中文 (繁體,台灣): 中文(繁體) built
Dialog ReadyToInstall for language 中文 (繁體,台灣): 中文(繁體) built
Dialog ReadyToRemove for language 中文 (繁體,台灣): 中文(繁體) built
Dialog SetupCompleteError for language 中文 (繁體,台灣): 中文(繁體) built
Dialog SetupCompleteSuccess for language 中文 (繁體,台灣): 中文(繁體) built
Dialog SetupError for language 中文 (繁體,台灣): 中文(繁體) built
Dialog SetupInitialization for language 中文 (繁體,台灣): 中文(繁體) built
Dialog SetupInterrupted for language 中文 (繁體,台灣): 中文(繁體) built
Dialog SetupProgress for language 中文 (繁體,台灣): 中文(繁體) built
Dialog SetupResume for language 中文 (繁體,台灣): 中文(繁體) built
Dialog SetupType for language 中文 (繁體,台灣): 中文(繁體) built
Dialog SplashBitmap for language 中文 (繁體,台灣): 中文(繁體) built
Resolving strings...
Language 中文 (繁體,台灣): 中文(繁體) built
Files built
Media table successfully built
Setup.exe created
Automatic update notification disabled
Express\DVD-5 - 0 error(s), 0 warning(s)
Log file has been created:

========== 建置: 1 成功、0 失敗、0 最新、0 略過 ==========

總結


在Visual Studio 2010裡已經包含相當多元的安裝及部署方式,每一種都有其優點,有些簡單好用,有些功能強大,利用以上介紹這些方法,你可以在不同環境選擇不同的方式,例如,我現在管理台灣及大陸兩地的網站,台灣網站在公司自己的機房裡,機房離我不到十公尺,那使用專案部署可就大材小用,內網速度快,用xcopy寫個批次檔可能是最快的方式。只要合適都是好方法,用對武器最重要。

沒有留言:

張貼留言

感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。