cancel
Showing results for 
Search instead for 
Did you mean: 
sspencer
Pilgrim

IIS Version - InstallScript Project

Hi,

I have the following code used in InstallShield 12 and it works ok:

if ( IISRTGetIISVersion( IIS_GET_VERSION_MAJOR ) < IIS_VERSION_MAJOR_MIN_SUPPORT ) then

szMsg = "IIS is not Installed or the Version is not correct, Version 4.0 is required. " + "\nThe setup will now terminate.";
MessageBox(szMsg, SEVERE);
abort;
endif;

I have converted my project from version 12 to version 2008 and now when I compile I am getting the following error messages:
- error C8025: 'IISRTGetIISVersion' : undefined identifier
- error C8025: 'IIS_GET_VERSION_MAJOR' : undefined identifier

I am using a pure InstallScript project.

Does anybody have any ideas?
Labels (1)
0 Kudos
5 Replies
rcuadra
Pilgrim

Getting the same error.

I'm getting the same error. Any ideas InstallShield developers? Did you get this resolved?

sspencer wrote:
Hi,

I have the following code used in InstallShield 12 and it works ok:

if ( IISRTGetIISVersion( IIS_GET_VERSION_MAJOR ) < IIS_VERSION_MAJOR_MIN_SUPPORT ) then

szMsg = "IIS is not Installed or the Version is not correct, Version 4.0 is required. " + "\nThe setup will now terminate.";
MessageBox(szMsg, SEVERE);
abort;
endif;

I have converted my project from version 12 to version 2008 and now when I compile I am getting the following error messages:
- error C8025: 'IISRTGetIISVersion' : undefined identifier
- error C8025: 'IIS_GET_VERSION_MAJOR' : undefined identifier

I am using a pure InstallScript project.

Does anybody have any ideas?
0 Kudos
sspencer
Pilgrim

Re: IIS Version - InstallScript Project

I'm not sure if you resolved this issue or not, but I contacted support and they suggested I copy the IISRTGetIISVersion from IS12. That code is below. For my project, I just added the registry check.

function int IISRTGetIISVersion( nFlag )
NUMBER nResult, nVersion, nType, nSize;
STRING szName, szValue;
begin

RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE );

if (nFlag == IIS_GET_VERSION_MAJOR) then
szName = "MajorVersion";
elseif (nFlag == IIS_GET_VERSION_MINOR) then
szName = "MinorVersion";
else
return ISERR_INVALID_ARG;
endif;

nSize = -1;
nType = REGDB_NUMBER;
nResult = RegDBGetKeyValueEx("SYSTEM\\CurrentControlSet\\Services\\W3SVC\\Parameters", szName, nType, szValue, nSize);
if (ISERR_SUCCESS != nResult) then
return nResult;
endif;

nResult = StrToNum(nVersion, szValue);
if (ISERR_SUCCESS != nResult) then
return nResult;
endif;

RegDBSetDefaultRoot(HKEY_CURRENT_USER );

return nVersion;

end;
0 Kudos
Highlighted
elvinhau
Pilgrim

Re: IIS Version - InstallScript Project

hi Sspencer, can you share how you get your project to work ?

I have added in Build>Settings:
\Script\IISRuntime\Lib\IISRT.obl

and added new row in Directory Editor > Binary Table:
\redist\compressed files\language independent\intel 32\IISRT.dll


But I still got the following error:
- error C8025: 'IIS_GET_VERSION_MAJOR' : undefined identifier
- error C8025: 'IIS_GET_VERSION_MINOR' : undefined identifier


I am using InstallScript project too (InstallShield 2008). Thanks
0 Kudos
rogcraig
Pilgrim

Is this resolved?

Hi,

Has anybody found a resolution to this problem?

Thanks,
Roger
0 Kudos
joshstechnij
Pilgrim

Re: IIS Version - InstallScript Project

The IISRTGetIISVersion function was an undocumented function that was not intended for general use. The functionality it provided was moved to an internal function that automatically performs a version check for IIS.

You can use the InstallScript registry functions to query the MajorVersion and MinorVersion values contained in the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters if necessary.
0 Kudos