windows – 如何在Inno Setup中使用Pascal变量?
发布时间:2020-12-13 22:40:08 所属栏目:Windows 来源:网络整理
导读:[Files]Source: "C:MyProg.exe"; DestDir: "{app}"; BeforeInstall: GetHome(); Flags: ignoreversion[INI]Filename: "{myVarFromPascal}.MyProgsettings.ini"; Section: "Settings"; Key: "sound"; String: "1"; Flags: createkeyifdoesntexist[Code]pro
[Files] Source: "C:MyProg.exe"; DestDir: "{app}"; BeforeInstall: GetHome(); Flags: ignoreversion [INI] Filename: "{myVarFromPascal}.MyProgsettings.ini"; Section: "Settings"; Key: "sound"; String: "1"; Flags: createkeyifdoesntexist [Code] procedure GetHome(); var myPascalVar: String; begin RegQueryStringValue(HKEY_CURRENT_USER,'Volatile Environment','USERPROFILE',myPascalVar); MsgBox('Value is "' + myPascalVar + '"',mbInformation,MB_OK); end; 这些是INNO Setup中的三个示例部分.我想在INI部分使用myPascalVar.我该怎么做? 解决方法
您需要将变量更改为全局范围,并为所谓的
scripted constant 编写一个简单的getter函数:
[Files] Source: "C:MyProg.exe"; DestDir: "{app}"; BeforeInstall: GetHome; Flags: ignoreversion [INI] Filename: "{code:GetMyVar}.MyProgsettings.ini"; Section: "Settings"; Key: "sound"; String: "1"; Flags: createkeyifdoesntexist [Code] var myPascalVar: string; function GetMyVar(Value: string): string; begin Result := myPascalVar; end; procedure GetHome; begin RegQueryStringValue(HKEY_CURRENT_USER,myPascalVar); MsgBox('Value is "' + myPascalVar + '"',MB_OK); end; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Windows – 没有共享存储的Hyper-V Live迁移?
- windows – 用户配置文件/文件夹重定向/主目录存档的最佳方
- xaml – 滚动ItemsControl
- 是否可以通过ACS 2.0身份提供商从Windows Live ID获得任何其
- windows – 哪里可以找到外观漂亮且Vista外观相似的用户界面
- windows-phone-7 – 我们如何在Windows Phone 7中实现应用程
- winapi – Windows 10中的Win32工具提示灰线错误
- 创建一个Windows 10映像以用作docker容器
- Windows – Active Directory如何在设置新密码时比较用户以
- 检测从.NET调用的调用dll的崩溃