NSIS安装程序制作工具判断系统是否安装.NET

网上找了NSIS这个开源的安装程序制作工具。翻看了一下它的说明,和网上的一些教程。最后打包出了一个个人认为还比较可以的安装程序。其中主要遇到的两个问题:

  1. 判断操作系统是否安装.NET
  2. 给安装界面配上友好的皮肤

由于程序是用C#写的,所以必需要判断客户机器上面是否安装了.NET框架。使用NSIS解决如下:
在代码中加上以下代码:
[code lang=”C”]
#– 判断.NET4.0是否安装 –#
Function CheckFramework4
;Clinet 和 Full存在一个都说明安装了Framework
ClearErrors
ReadRegDWORD $0 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client" "Install2"
IfErrors 0 ExitCheckFramework4
ClearErrors
ReadRegDWORD $0 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" "Install"
IfErrors 0 ExitCheckFramework4
;没有安装Framework
MessageBox MB_OK "装程序无法检测到.NET Framework V4.0 $\n或者没有安装。"
Abort
ExitCheckFramework4:
FunctionEnd
[/code]
再在.onInit函数第一句里面加上:“Call CheckFramework4”
OK,当你发给客户安装时如果客户没有安装.net4.0那么就会提示出该消息框。其实这里还可以把.net也打包进去,但是那样也比较麻烦。会导致安装包比较大。所以我采取的是联系我们人工安装。