首页 Inno 正文
278

Inno程序打包脚本示例

  • yiqingpeng
  • 2015-04-08
  • 0
  •  
; 脚本由 Inno Setup 脚本向导 生成!
; 有关创建 Inno Setup 脚本文件的详细资料请查阅帮助文档!

#define MyAppName "IP解析插件"
#define MyAppVersion "1.0"
#define MyAppPublisher "你的剑就是我的剑"
#define MyAppURL "http://www.xxxx.com/"
#define MyAppExeName "MyProg.exe"

[Setup]
; 注: AppId的值为单独标识该应用程序。
; 不要为其他安装程序使用相同的AppId值。
; (生成新的GUID,点击 工具|在IDE中生成GUID。)
AppId={{700E39C5-6652-40B9-B731-E5F0441A0223}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
CreateAppDir=no
;InfoBeforeFile=开始安装插件
;InfoAfterFile=非常感谢您的使用
OutputDir=C:\Users\Administrator\Documents\addins
OutputBaseFilename=setup
SetupIconFile=E:\vba之internet控件\msxlsicon.ico
Compression=lzma
SolidCompression=yes

[Languages]
Name: "chinesesimp"; MessagesFile: "compiler:Default.isl"
Name: "english"; MessagesFile: "compiler:Languages\English.isl"

[Files]
;将控件复制到系统目录,并注册到系统,注意regserver选项 
Source: "E:\vba之internet控件\MSINET.OCX"; DestDir: "{win}\system32"; Flags: onlyifdoesntexist regserver
Source: "E:\vba之internet控件\MSWINSCK.OCX"; DestDir: "{win}\system32"; Flags: onlyifdoesntexist regserver
;将vb6cli目录下的所有文件暂时复制到c:\windows\temp目录下,安装结束后需要调用vb6c.exe程序, 调用完之后系统会自动删除之。
Source: "E:\vba之internet控件\vb6cli\*"; DestDir: "{tmp}"; Flags: ignoreversion recursesubdirs createallsubdirs
;注意下面的目标目录路径是由函数excelPath生成的 
Source: "E:\vba之internet控件\MSWINSCK.OCX"; DestDir: "{code:excelPath}"; Flags: onlyifdoesntexist
; 注意: 不要在任何共享系统文件上使用“Flags: ignoreversion”

[Registry]
;以下是在注册表中写入键值,以获得控件的使用许可 
 Root: HKCR; Subkey: "Licenses"; ValueType: "string"; ValueData:"Licensing: Copying the keys may be a violation of established copyrights."
 ;下面这个许可id是让没有安装vb6.0的机器获得vb6中控件的许可
 Root: HKCR; Subkey: "Licenses\6000720D-F342-11D1-AF65-00A0C90DCA10"; ValueType: "string"; ValueData:"kefeflhlhlgenelerfleheietfmflelljeqf"
 Root: HKCR; Subkey: "Licenses\EAC52060-7A39-11D1-9C87-C81E5A000000"; ValueType: "string"; ValueData:"qefaankadbhakbtyfnqosezhvrdusdxrmbaa"
 Root: HKCR; Subkey: "Licenses\E32E2733-1BC5-11d0-B8C3-00A0C90DCA10"; ValueType: "string"; ValueData:"kmhfimlflmmfpffmsgfmhmimngtghmoflhsg"
 Root: HKCR; Subkey: "Licenses\CEDD4F80-B43C-11cf-837C-00AA00573EDE"; ValueType: "string"; ValueData:"gxwaezucfyqpwjgqbcmtsncuhwsnyhiohwxz"
 Root: HKCR; Subkey: "Licenses\D015B071-D2ED-11d0-A31A-00AA00688B10"; ValueType: "string"; ValueData:"gjdcfjpcmjicjcdcoihcechjlioiccechepd"
 Root: HKCR; Subkey: "Licenses\a8a9f020-b426-11cf-bf3b-00a0d10003fa"; ValueType: "string"; ValueData:"eesjgjnekjeeheijrfheiegepftigeljfepi"
 Root: HKCR; Subkey: "Licenses\AC0871D0-6ACC-11cf-8ADB-00AA00C00905"; ValueType: "string"; ValueData:"knjnpgognginknggsmnnhnjnumvmlngnrlrk"
 Root: HKCR; Subkey: "Licenses\B1692F60-23B0-11D0-8E95-00A0C90F26F8"; ValueType: "string"; ValueData:"mjjjccncgjijrcfjpdfjfcejpdkdkcgjojpd"
 Root: HKCR; Subkey: "Licenses\B1EFCCF0-6AC1-11cf-8ADB-00AA00C00905"; ValueType: "string"; ValueData:"qqkjvqpqmqjjpqjjvpqqkqmqvkypoqjquoun"
 Root: HKCR; Subkey: "Licenses\BC96F860-9928-11cf-8AFA-00AA00C00905"; ValueType: "string"; ValueData:"mmimfflflmqmlfffrlnmofhfkgrlmmfmqkqj"
 Root: HKCR; Subkey: "Licenses\9DF1A470-BA8E-11D0-849C-00A0C90DC8A9"; ValueType: "string"; ValueData:"cchcqjejhcgcqcfjpdfcdjkckiqikchcojpd"
 Root: HKCR; Subkey: "Licenses\73A4C9C1-D68D-11d0-98BF-00A0C90DC8D9"; ValueType: "string"; 
 Root: HKCR; Subkey: "Licenses\73A4C9C1-D68D-11d0-98BF-00A0C90DC8D9\11.0"; ValueType: "string"; 
 Root: HKCR; Subkey: "Licenses\73A4C9C1-D68D-11d0-98BF-00A0C90DC8D9\11.0\Retail"; ValueType: "string"; ValueData:"sbbcdcprktpjtapmmfdacmupasbhscddncgp"
 Root: HKCR; Subkey: "Licenses\74872840-703A-11d1-A3AF-00A0C90F26FA"; ValueType: "string"; ValueData:"mninuglgknogtgjnthmnggjgsmrmgniglish"
 Root: HKCR; Subkey: "Licenses\74872841-703A-11d1-A3AF-00A0C90F26FA"; ValueType: "string"; ValueData:"klglsejeilmereglrfkleeheqkpkelgejgqf"
 Root: HKCR; Subkey: "Licenses\78E1BDD1-9941-11cf-9756-00AA00C00908"; ValueType: "string"; ValueData:"yjrjvqkjlqqjnqkjvprqsjnjvkuknjpjtoun"
 Root: HKCR; Subkey: "Licenses\7C35CA30-D112-11cf-8E72-00A0C90F26F8"; ValueType: "string"; ValueData:"whmhmhohmhiorhkouimhihihwiwinhlosmsl"
 Root: HKCR; Subkey: "Licenses\80E80EF0-DBBE-11D0-BCE2-00A0C90DCA10"; ValueType: "string"; ValueData:"qijimitpmpnpxplpvjnikpkpqoxjmpkpoivj"
 Root: HKCR; Subkey: "Licenses\6FB38640-6AC7-11cf-8ADB-00AA00C00905"; ValueType: "string"; ValueData:"gdjkokgdldikhdddpjkkekgknesjikdkoioh"
 Root: HKCR; Subkey: "Licenses\556C75F1-EFBC-11CF-B9F3-00A0247033C4"; ValueType: "string"; ValueData:"xybiedobrqsprbijaegcbislrsiucfjdhisl"
 Root: HKCR; Subkey: "Licenses\2c49f800-c2dd-11cf-9ad6-0080c7e7b78d"; ValueType: "string"; ValueData:"mlrljgrlhltlngjlthrligklpkrhllglqlrk"
 Root: HKCR; Subkey: "Licenses\38911DA0-E448-11D0-84A3-00DD01104159"; ValueType: "string"; ValueData:"mcpckchcdchjcjcclidcgcgchdqdcjhcojpd"
 Root: HKCR; Subkey: "Licenses\4250E830-6AC2-11cf-8ADB-00AA00C00905"; ValueType: "string"; ValueData:"kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun"
 Root: HKCR; Subkey: "Licenses\43478d75-78e0-11cf-8e78-00a0d100038e"; ValueType: "string"; ValueData:"imshohohphlmnhimuinmphmmuiminhlmsmsl"
 Root: HKCR; Subkey: "Licenses\12B142A4-BD51-11d1-8C08-0000F8754DA1"; ValueType: "string"; ValueData:"aadhgafabafajhchnbchehfambfbbachmfmb"

[Run]
;安装结束后运行temp目录中的vbc6.exe程序 
 Filename: "{tmp}\VBC6.EXE"; Description: "运行控件授权程序"; Flags: runhidden

[UninstallRun]
;卸载程序后对控件进行反注册 
Filename: "regsvr32"; Parameters:"/u MSINET.ocx"
Filename: "regsvr32"; Parameters:"/u MSWINSCK.ocx"

[Code]
{定义pascal函数获得excel的安装路径,注意此函数名是自定义的,但是必须传入一个参数}
function excelPath(Param:String):String;
var
  version:String;
  temp:String;
  regPath:String;
  path:String;
begin
  {获得Excel版本号 }
  if RegQueryStringValue(HKEY_LOCAL_MACHINE,'SOFTWARE\Classes\Excel.Application\CurVer','',version) Then
  begin
     //成功,此时version="Excel.Application.11"
     temp:=version;
     while Pos('.',temp)>0 do
     begin
        Delete(temp,1,Pos('.',temp));//分割之后temp=11
     end
     regPath:='SOFTWARE\Microsoft\Office\'+temp+'.0\Common\InstallRoot'
     RegQueryStringValue(HKEY_LOCAL_MACHINE,regPath,'Path',path)
  end;
  //Log('ExcelPath:'+path);
  Result := path+'XLSTART'; 
end;

正在加载评论...