在INI安装程序中将不带驱动器号的安装路径写入INI文件



我不知道如何从IDPath和所有后续行的文件夹路径中删除驱动器号。

这些部分的代码现在在[INI]中看起来是这样的:

[INI]
Filename: "{app}game.ini"; Section: "Nancy Data"; Key: "CDDrive1";  
String: "{drive:{src}}"; Flags: createkeyifdoesntexist
Filename: "{app}game.ini"; Section: "Nancy Data"; Key: "CDDrive2"; 
String: "{drive:{src}}"; Flags: createkeyifdoesntexist
Filename: "{app}game.ini"; Section: "Nancy Data"; Key: "HDDrive"; 
String: "{drive:{src}}"; Flags: createkeyifdoesntexist
Filename: "{app}game.ini"; Section: "Nancy Data"; Key: "IDPath"; 
String: "{app}Нэнси Дрю. Секреты могут убивать"; Flags: createkeyifdoesntexist
Filename: "{app}game.ini"; Section: "Nancy Data"; Key: "CifTreePath"; 
String: "{app}Нэнси Дрю. Секреты могут убиватьciftree"; 
Flags: createkeyifdoesntexist

创建的内容如下:

[Nancy Data]
CDDrive1=C:
CDDrive2=C:
HDDrive=C:
IDPath=C:Program Files (x86)My ProgramНэнси Дрю. Секреты могут убивать
CifTreePath=C:Program Files (x86)My ProgramНэнси Дрю. Секреты могут убиватьciftree

您可以使用脚本常量来自定义值:

[INI]
Filename: "{app}game.ini"; Section: "Nancy Data"; Key: "IDPath"; 
String: "{code:RemoveDrive|{app}Нэнси Дрю. Секреты могут убивать}"; 
Flags: createkeyifdoesntexist
[Code]
function RemoveDrive(Param: string): string;
begin
Result := Param;
if (Length(Result) >= 3) and (Result[2] = ':') and (Result[3] = '') then
Result := Copy(Result, 3, Length(Result) - 2);
end;

结果:

[Nancy Data]
IDPath=Program Files (x86)My ProgramНэнси Дрю. Секреты могут убивать

最新更新