这个例子是判断用户是否已安装Microsoft SQL Server或MSDE!如果没有安装则给出提示,提示用户必须要先安装并退出安装程序!
//---------------------------------------------------------------------------
// OnBegin
//
// The OnBegin event is called directly by the framework after the setup
// initializes.
//---------------------------------------------------------------------------
function OnBegin()
STRING szMsg;
STRING sKey, sValue, sData;
NUMBER nType, nSize;
NUMBER nResult;
begin
// TO DO: you may change default non-UI setting, for example
//
// You may also perform your custom initialization steps, check requirements, etc.
if !MAINTENANCE then
// 判断系统是否安装Microsoft SQL Server或MSDE
sKey = "Software\\Microsoft\\Microsoft SQL Server";
sValue = "InstalledInstances";
szMsg = "Micorsoft SQL Server or MSDE was not found on this machine. This installation was designed to run only on the server machine.";
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
nResult = RegDBGetKeyValueEx ( sKey, sValue, nType, sData, nSize );
if ( nResult < 0 )then
// SQL Server registry key is missing
SetDialogTitle ( DLG_MSG_INFORMATION, "Information" );
MessageBox (szMsg,INFORMATION);
abort;
endif;
endif;
end;