1 静态编译
打开工程属性页面,如下两图所示进行设置:
如果出现警告:warning LNK4098: defaultlib 'LIBCMT' conflicts with use of other use of other libs; use /NODEFAULTLIB:library ,可如下进行设置:(其他警告不一定适用)
2 动态编译生成安装包
1 具体生成安装包的步骤可参考以下文章
简单点说就是,右键解决方案-》新建工程-》添加安装部署;在应用程序文件夹中右键添加主输出。
2 下面对我遇到的问题和一些理解记录下:
(1)卸载程序msiexec.exe的引用路径必须是:c:\windows\system32,
如果把这个程序复制到其他路径下引用会出现错误:
Error:Unable to build shortcut named 'Shortcut to msiexec.exe', located in '[ProgramMenuFolder]'
(2)另外,在“系统必备”选择对话框中,除了.NET Framework 2.0外,我自己还选择了以下2项:
其中Visual C++ Runtime Libraries(x86) 既是:vcredist_x86.exe,是微软公司Visual C++的32位运行时库,包含了一些Visual C++的库函数。一般用Visual C++开发的Windows应用程序需要这个运行时库的支持才能在没有安装Visual C++的计算机上正常运行。具体可以参考百度百科:http://baike.baidu.com/view/6665757.htm
(3)另外,在生成安装包后会有些警告,我试图更正它们时发现没有更正必要。以下是大家讨论警告:Two or more objects have the same target location '<location>'的网址:http://msdn.microsoft.com/en-us/library/zhx4ah11(VS.80).aspx