1)新建一个Script,根据具体条件,比如在flag为true时回滚,则如下:
function rollback()
BOOL flag;
begin
flag = true;
if(flag) then
return ERROR_INSTALL_FAILURE;
endif;
end;
2) 在Customer Action中将以上函数添加为rollback,并设置为deffered execution。
3) 在sequence中execute sequence 的InstallInitialize 和InstallFinalize之间添加rollback,
将condition设置为Not Installed。