论坛风格切换切换到宽版
  • 1850阅读
  • 3回复

请老虎版主帮忙修正这个脚本,谢谢 [复制链接]

上一主题 下一主题
离线546242502
 

发帖
332
金钱
-3060
威望
-306
只看楼主 倒序阅读 0 发表于: 2015-08-12


脚本文件.zip (1 K) 下载次数:3

离线546242502

发帖
332
金钱
-3060
威望
-306
只看该作者 1 发表于: 2015-08-12
对dephi和pascal一点不懂
离线gnatix

发帖
7696
金钱
-8279
威望
-828
只看该作者 2 发表于: 2015-08-12
还是因为 Unicode 版本的问题。 在 Unicode 版本中 StringChange 要 Unicode String,即 String,而  LoadStringFromFile  要 AnsiString,所以要转换一下。


[code]
procedure CurStepChanged(CurStep: TSetupStep);
var
  fn, s: AnsiString;
  us: String;
begin
  fn:= ExpandConstant('{app}\myflie.min');
  if CurStep = ssDone then      // 安装最后一步修改文件
    if FileExists(fn) then
      begin
        LoadStringFromFile(fn, s);
        us:= String(s);
        StringChange(us, 'end registry', 'link "myflie_mr.dll"'+#13#10+'min "myflie_mr.min"'+#13#10+'end registry');
        SaveStringToFile(fn, AnsiString(us) , false);
      end;
end;

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
var
  fn, s: AnsiString;
  us: String;
begin
  fn:= ExpandConstant('{app}\myflie.min');
  if CurUninstallStep = usDone then      // 卸载最后一步把文件文件改回去
    if FileExists(fn) then
      begin
        LoadStringFromFile(fn, s);
        us:= String(s);
        StringChange(us, 'link "myflie_mr.dll"'+#13#10+'min "myflie_mr.min"'+#13#10+'end registry', 'end registry');
        SaveStringToFile(fn, AnsiString(us), false);
      end;
end;

离线546242502

发帖
332
金钱
-3060
威望
-306
只看该作者 3 发表于: 2015-08-12
回 2楼(gnatix) 的帖子
gnatix:还是因为 Unicode 版本的问题。 在 Unicode 版本中 StringChange 要 Unicode String,即 String,而  LoadStringFromFile  要 AnsiString,所以要转换一下。 procedure CurStepChanged(CurStep: TSetupStep);....... (2015-08-12 02:02) 

谢谢老虎版主解答,经测试可以了