procedure InstallScreenSaver(const AFile: string);
var
  S: string;
begin
  S := Format('rundll32.exe desk.cpl,InstallScreenSaver "%s"', [GetShortName(AFile)]);
  WinExec(PChar(S + #0), SW_Hide);
end;我用此方法安装屏保,其中GetShortName是取得8.3的短文件名方法。(因为试过传长文件名就安装不了)。
在xp下运行正常,但在vista 下,还是安装不了。
这个调用方法应该怎么传长文件名呢?