转https://www.cnblogs.com/daban/archive/2012/06/27/2565449.html
1,在VS2010选择“新建项目” ----“其他项目类型” ----“VisualStudioInstallerà”安装项目“:
命名为:设置1。
这是在VS2010中将有三个文件夹,
1.“应用程序文件夹”表示要安装的应用程序需要添加的文件;
2.“用户的'程序'菜单”表示:应用程序安装完,用户的“开始菜单”中的显示的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序的.exe和卸载程序.EXE;
3.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.EXE文件快捷方式。
2,应用程序文件夹中点右键添加文件:表示添加要打包的文件;
添加的文件一般是已经编译过应用程序的调试目录下的文件;
如果调试下面有子文件夹则需要“添加文件夹”,(释放下也一样)例如:数据
然后把对应的子文件里的内容添加到此文件夹中;
把需要创建程序快捷方式的图标也添加进来:后缀名为:ICO
3,在创建的项目名称(设置1)上点击右键:属性
选择系统必备
然后选择.NET的版本,和Windows Installer3.1(可选项)
选择:“从与我应用程序相同的位置下载系统必备组件”
这样安装包就会打包.NET FrameWork,在安装时不会从网上下载.NET FrameWork组件;但是安装包会比较大。
添加VS的32/64位运行库
VS2010发布.NET2.0的版本,在创建安装程序时,需要设置启动条件:在项目名称(设置1)上,点击右键选择“视图”A“启动条件”:
然后VS2010会创建如下文件:
在“启动条件”中,点击“.NET Framework”在版本上面选择.NET Framework 2.0;(.NET Framework 4.0不需要设置启动项)
这样.NET Framework 2.0上创建的项目在安装时,就不会安装.NET3.5或其他版本,
也不会重启(解决.NET 2.0创建的项目,安装.NET FrameWork3.5的问题)。
如图4所示,设置安装文件的目录(路径)(可以不设置):
创建的项目名称(设置1)点击左键(不是右键),在属性中设置参数如下图:
其中作者为作者;制造商为公司名称;产品名称为应用程序的名字;
例如我们设置为:BeyondKKO;制造商:自由公司;产品名称:串口测试。
把InstallAllUsers设置为真。
(这样在“控制面板”程序中会显示公司的名称;
在安装时会默认为“任何人”,否则默认为“只有我”)
在应用程序上点击左键,如下图:第一个为系统主目录(默认C:\ PROGRAME),第二个为公司名([摘要]),第三个为应用程序名称,这样在安装时就会创建两层的文件路径需要删除DefaultLocation中的:[制造商]删除后只有应用程序的名称。
5, 创建应用程序图标与卸载程序:
A.“在应用程序文件夹”中的.EXE文件中,点击右键,创建快捷方式:
重命名“串口测试程序”,然后点击右键属性:选择图标(图标可以不创建)
双击进入选择我们之前添加的“MiXer.ico”
确定后,拖动此快捷方式到“用户桌面”
B.“用户的 '程序' 菜单”中添加一个文件夹,命名为:“串口程序”
然后同样的方式创建TEXTCOM.exe一个快捷方式(“串口测试程序”),拖动到“串口程序”中;
然后给.NET应用程序创建一个卸载程序(可以不创建):
在“应用程序文件夹”中添加:C:WINDOWS \ SYSTEM32 \ Msiexec.exe的
右键创建快捷方式,重命名为:卸载,把此快捷方式拖动到“串口程序”;
点击项目名称(设置1),在属性中找到:产品代码
复制此产品代码,粘贴到“卸载”快捷方式的Arguments属性,前面加/ x空格
6,完成以上步骤,就可以生成解决方案了。
如图7所示,生成解决方案后,在调试文件夹中就是我们需要的安装包。
如图8所示,安装完在开始菜单中有“串口程序”的文件夹,里面有我们创建的两个快捷方式;
桌面上也有快捷方式。
(完)
经过自己的测试,发现只有把调试文件夹整个都发给别的人,别人才能正常安装,否则就会出现错误。