在.net中创建安装程序
问题描述:
我想创建一个安装程序,其中的 只会将几个文件和文件夹 转储到用户指定的位置。但是 问题是这些文件是 需要从固定的 源文件夹中获取,然后安装程序 被构建。此外,这些文件可能会随时更改 ,然后安装程序的新版本 需要创建为 。在.net中创建安装程序
我想使用安装和部署项目在.Net中执行此操作。我不知道如何做到这一点。 我是否需要用安装程序创建另一个类库项目?
其实安装程序将有两种选择:
- 在指定位置
- 嵌入企业内网SharePoint网站的文件(HTML文件)简单地提取文件。
有没有人有任何想法?
答
我创建了几种形式做所有需要的东西,一个Windows应用程序。这个Windows应用程序的行为像一个安装程序。
答
考虑一个自解压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上,所以没有卸载选项。这可能会也可能不会是一件好事。
检出http://www.installsite.org/pages/en/msi/authoring.htm – Ravisha 2010-03-09 11:37:31
我认为WiX工具箱比安装和部署项目更好。 – munissor 2010-03-09 11:38:20