在脚本中加入下面的[Code]段即可: [Code] function InitializeSetup:Boolean; var Path:string ; ResultCode: Integer; dotNetV2RegPath:string; dotNetV2DownUrl:string; dotNetV2PackFile:string; begin dotNetV2RegPath:='SOFTWARE/Microsoft/.NETFramework/policy/v2.0'; dotNetV2DownUrl:='http://download.microsoft.com/download/5/6/7/567758a3-759e-473e-bf8f-52154438565a/dotnetfx.exe'; dotNetV2PackFile:='{src}/dotnetfx(x86).exe'; if RegKeyExists(HKLM, dotNetV2RegPath) then begin Result := true; end else begin if MsgBox('系统检测到您没有安装.Net Framework2.0运行环境,是否立即安装?', mbConfirmation, MB_YESNO) = idYes then begin Path := ExpandConstant(dotNetV2PackFile); if(FileOrDirExists(Path)) then begin Exec(Path, '/q', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode); if RegKeyExists(HKLM, dotNetV2RegPath) then begin Result := true; end else begin MsgBox('未能成功安装.Net Framework2.0运行环境,系统将无法运行,本安装程序即将退出!',mbInformation,MB_OK); end end else begin if MsgBox('软件安装目录中没有包含.Net Framework的安装程序,是否立即下载后安装?', mbConfirmation, MB_YESNO) = idYes then begin Path := ExpandConstant('{pf}/Internet Explorer/iexplore.exe'); Exec(Path, dotNetV2DownUrl , '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode); MsgBox('请安装好.Net Framework2.0环境后,再运行本安装包程序!',mbInformation,MB_OK); Result := false; end else begin MsgBox('不下载安装.Net Framework2.0运行环境,系统将无法运行,本安装程序即将退出!',mbInformation,MB_OK); Result := false; end end end else begin MsgBox('没有安装.Net Framework2.0运行环境,系统将无法运行,本安装程序即将退出!',mbInformation,MB_OK); Result := false; end; end; end; 其中:dotNetV2PackFile指定的是。net framework的安装包,放在生成的setup的同一个目录下。 如果没有可以通过网络下载,dotNetV2DownUrl指定下载地址。