2010-03-09 112 views
3

我想創建一個安裝程序,其中的 只會將幾個文件和文件夾 轉儲到用戶指定的位置。但是 問題是這些文件是 需要從固定的 源文件夾中獲取,然後安裝程序 被構建。此外,這些文件可能會隨時更改 ,然後安裝程序的新版本 需要創建爲 。在.net中創建安裝程序

我想使用安裝和部署項目在.Net中執行此操作。我不知道如何做到這一點。 我是否需要用安裝程序創建另一個類庫項目?

其實安裝程序將有兩種選擇:

  1. 在指定位置
  2. 嵌入企業內網SharePoint網站的文件(HTML文件)簡單地提取文件。

有沒有人有任何想法?

+2

檢出http://www.installsite.org/pages/en/msi/authoring.htm – Ravisha 2010-03-09 11:37:31

+3

我認爲WiX工具箱比安裝和部署項目更好。 – munissor 2010-03-09 11:38:20

回答

0

我創建了幾種形式做所有需要的東西,一個Windows應用程序。這個Windows應用程序的行爲像一個安裝程序。

1

考慮一個自解壓ZIP文件。

你可以用DotNetZip建立一個。它需要目標機器上的.NET。它將文件解壓縮到用戶指定的位置,然後可以選擇運行您指定的程序。該程序可能是解壓縮的文件之一,或者可能是其他內容。

若要使用DotNetZip一個自解壓存檔,這是代碼:

// create the SFX 
using (ZipFile zip1 = new ZipFile()) 
{ 
    zip1.AddFile(filename1, "");  // extract to toplevel 
    zip1.AddFile(filename2, "subdir"); // extract to subdir 
    zip1.AddFile(filename3, "subdir"); 
    zip1.Comment = "This will be embedded into a self-extracting exe"; 
    zip1.AddEntry("Readme.txt", "This is Update XXX of product YYY"); 
    var sfxOptions = new SelfExtractorSaveOptions { 
     Flavor = SelfExtractorFlavor.WinFormsApplication, 
     Quiet = false, // false == show a UI 
     DefaultExtractDirectory = UnpackDirectory 
    } 
    zip1.SaveSelfExtractor(SfxFileToCreate, sfxOptions); 
} 

生成的自解壓的UI看起來是這樣的:

alt text http://i50.tinypic.com/349bhvc.jpg

的SFX不依賴在MSI上,所以沒有卸載選項。這可能會也可能不會是一件好事。

1

建立在設置和部署項目是我的經驗的痛苦,所以相反,我使用Advanced installer。它便宜且易於使用。我認爲他們也有免費版本。

相關問題