在NSIS脚本内加入对.net framework和MDAC版本的判断
2008-09-23 08:36
375 查看
首先到NSIS官网上下载一个插件,名:XtInfoPlugin.zip,链接地址:http://nsis.sourceforge.net/mediawiki/images/d/de/XtInfoPlugin.zip
将插件:xtInfoPlugin.dll复制到NSIS安装目录..\NSIS\Plugins下
在脚本内添加一句
如:!addplugindir "C:\Program Files\NSIS\Plugins"
然后在Funtion.onInit内
;判断DotNetFramework 1.1是否已经安装
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop $0
${if} $0 == true
xtInfoPlugin::GetDotNetFrameworkId
; GetDotNetFrameworkId (id methods) return x.x and not build info
Pop $0
${if} $0 != "1.1"
Messagebox MB_OK "系统检测到您计算机上的DotNetFramework版本低于1.1,点击[确定]安装"
EXECWAIT '"$PLUGINSDIR\dotnetfx_cn.exe"'
;!insertmacro DetailText "正在安装.net framework 1.1组件"
${endif}
${else}
Messagebox MB_OK "系统检测到您计算机上没有安装DotNetFramework1.1,点击[确定]安装"
EXECWAIT '"$PLUGINSDIR\dotnetfx_cn.exe"'
;!insertmacro DetailText "正在安装.net framework 1.1组件"
${endif}
;判断MDAC当前版本
Strcpy $2 "2.7"
Push $2
xtInfoPlugin::GetMDACVersion
Pop $1
Push $1
xtInfoPlugin::CompareVersion
Pop $0
${if} $0 < 0
EXECWAIT '"$PLUGINSDIR\mdac_typ.exe"'
MessageBox MB_OK "MDAC version is OLDER than $2 (found: $1)"
${else}
MessageBox MB_OK "MDAC version is NEWER than $2 (found: $1)"
${endif}
over
其实在XtInfoPlugin.zip压缩包内有Example的
将插件:xtInfoPlugin.dll复制到NSIS安装目录..\NSIS\Plugins下
在脚本内添加一句
如:!addplugindir "C:\Program Files\NSIS\Plugins"
然后在Funtion.onInit内
;判断DotNetFramework 1.1是否已经安装
xtInfoPlugin::IsDotNetFrameworkInstalled
Pop $0
${if} $0 == true
xtInfoPlugin::GetDotNetFrameworkId
; GetDotNetFrameworkId (id methods) return x.x and not build info
Pop $0
${if} $0 != "1.1"
Messagebox MB_OK "系统检测到您计算机上的DotNetFramework版本低于1.1,点击[确定]安装"
EXECWAIT '"$PLUGINSDIR\dotnetfx_cn.exe"'
;!insertmacro DetailText "正在安装.net framework 1.1组件"
${endif}
${else}
Messagebox MB_OK "系统检测到您计算机上没有安装DotNetFramework1.1,点击[确定]安装"
EXECWAIT '"$PLUGINSDIR\dotnetfx_cn.exe"'
;!insertmacro DetailText "正在安装.net framework 1.1组件"
${endif}
;判断MDAC当前版本
Strcpy $2 "2.7"
Push $2
xtInfoPlugin::GetMDACVersion
Pop $1
Push $1
xtInfoPlugin::CompareVersion
Pop $0
${if} $0 < 0
EXECWAIT '"$PLUGINSDIR\mdac_typ.exe"'
MessageBox MB_OK "MDAC version is OLDER than $2 (found: $1)"
${else}
MessageBox MB_OK "MDAC version is NEWER than $2 (found: $1)"
${endif}
over
其实在XtInfoPlugin.zip压缩包内有Example的
相关文章推荐
- NSIS:判断并安装.NET Framework 4 的例子
- NSIS:判断并安装.NET Framework 4 的例子
- .Net Framework OleDb 数据提供程序要求 Microsoft Data Access Components(MDAC) 2.6 或更高版本。发现当前安装的版本是 2.50.4403.
- 如何判断 .NET Compact Framework 的版本
- NSIS:判断并安装.NET Framework的例子(转载)
- 如何判断 .NET Compact Framework 的版本
- 如何判断 .NET Compact Framework 的版本
- .Net Framework 数据提供程序要求 Microsoft Data Access Components(MDAC).请安装 Microsoft Data Access Components(MDAC) 2.6 或更高版本。
- .Net Framework OleDb 数据提供程序要求 Microsoft Data Access Components(MDAC) 2.6 或更高版本
- .Net Framework OleDb 数据提供程序要求 Microsoft Data Access Components(MDAC) 2.6 或更高版本。发现当前安装的版本是
- .NET Framework CLR 版本检测
- 【回答】:Microsoft .NET Framework 各个版本之间的关系?如何安装2.0,3.0,4.0?向下兼容?
- 如何检测已安装的Microsoft.Net Framework的版本
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本发布
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本━新增岗位管理-WinForm部分
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本━新增岗位管理-Web部分
- .NET Framework 3.0 版本命名與部署 Q&A
- Micro-soft .NetFramework 4.6.2_4.7.1版本资源汇总.
- NSIS安装MSDE2000和NET2.0脚本代码
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->Web版本工作流部分业务处理界面与查看界面全新展示