在我的代码中,我使用
[Run]
部分以及 CurStepChanged
事件处理程序在 ssPostInstall
发生时执行一些操作。在伪脚本中是这样的:
[Run]
Filename: "{app}\FileToRun.exe"; Parameters: "/x"
[Code]
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssPostInstall then
begin
// do some stuff
end;
end;
我的问题是,哪个是第一个处理的。在触发
[Run]
步骤的 CurStepChanged
事件之前是否已处理 ssPostInstall
部分?
根据我的观察,似乎
[Run]
部分是首先处理的。
[Run]
步骤的 CurStepChanged
事件之前处理 ssPostInstall
部分条目。可以在以下piece of code
中阅读(评论是我的):
ProcessRunEntries; // <- this processes the [Run] section entries
if RmDoRestart and
(InitRestartApplications or
((shRestartApplications in SetupHeader.Options) and not InitNoRestartApplications)) then
RestartApplications;
SetStep(ssPostInstall, True); // <- and this triggers the CurStepChanged event