update #2 I have changed how we are doing the custom action. I am no longer calling is as part of the sequence after appsearch.
Now it is bound to a "DoAction" on the dialog ready to install when you click the install button.
This checks to see if excel is running and SHOULD pop a dialog. only for some reason if i do the following code:
begin
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
nvType = REGDB_STRING;
nvSize = 256;
svRegKey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\excel.exe";
RegDBGetKeyValueEx(svRegKey, "Path", nvType, svRegValue, nvSize);
MsiGetProperty(hMSI, "ProductName", svProductName, nvSize);
if (Is(FILE_LOCKED, svRegValue ^ "excel.exe")) then
MessageBox( svProductName + " cannot install while Microsoft Excel is running. Please close Excel, then click OK to continue.", SEVERE);
Delay (2);
endif;
end;
I see no Dialog what so ever
If I change the Delay to an abort
begin
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
nvType = REGDB_STRING;
nvSize = 256;
svRegKey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\excel.exe";
RegDBGetKeyValueEx(svRegKey, "Path", nvType, svRegValue, nvSize);
MsiGetProperty(hMSI, "ProductName", svProductName, nvSize);
if (Is(FILE_LOCKED, svRegValue ^ "excel.exe")) then
MessageBox( svProductName + " cannot install while Microsoft Excel is running. Please close Excel, then retry the installation.", SEVERE);
abort;
endif;
end;
then the dialog displays and aborts the install after I click the ok button.
Why does it only display if there is an abort attached? How can i make it display without aborting and then rechecking when they click install again?