function BOOL DetectPHP(svPath, svVer, bLog)
BOOL bResult;
string RegPath,sKey,sFolder,sValue,sData,svVersionNumber,Path;
number nType, nSize;
begin
bResult = FALSE;
if (bLog) then WriteLog(0,"* Detekcja zainstalowanego PHP ..."); endif;
//Sprawdzenie w rejestrach
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
RegPath="SOFTWARE\\PHP";
if (RegDBKeyExist(RegPath)=1) then
sValue="InstallDir";
sKey = RegPath;
if (RegDBGetKeyValueEx( sKey, sValue, nType, sData, nSize )=0) then
StrRemoveLastSlash( sData );
if (Is(PATH_EXISTS, sData)) then
if (Is(FILE_EXISTS, sData ^ "php.exe")) then
svPath = sData;
if (VerGetFileVersion(svPath ^"php.exe", svVersionNumber)=0) then
svVer = svVersionNumber;
bResult = TRUE;
endif;
endif;
endif;
endif;
endif;
//Nie wykrytow w rejestrach - sprawdznie na dysku
if(!bResult) then
if (Is(PATH_EXISTS, PROGRAMFILES ^ "PHP")) then
if (Is(FILE_EXISTS, PROGRAMFILES ^ "PHP" ^ "php.exe")) then
svPath = PROGRAMFILES ^ "PHP";
if (VerGetFileVersion(svPath ^"php.exe", svVersionNumber)=0) then
svVer = svVersionNumber;
bResult = TRUE;
endif;
endif;
else
if (Is(PATH_EXISTS, "c:\\PHP")) then
if (Is(FILE_EXISTS, "c:\\PHP" ^ "php.exe")) then
svPath = "c:\\PHP";
if (VerGetFileVersion(svPath ^"php.exe", svVersionNumber)=0) then
svVer = svVersionNumber;
bResult = TRUE;
endif;
endif;
endif;
endif;
endif;
if (bResult) then
if (bLog) then
WriteLog(1,"- Zainstalowany moduł PHP w wersji "+svVersionNumber);
WriteLog(2,"w katalogu :"+svPath);
endif;
else
if (bLog) then
WriteLog(1,"- nie wykryto zainstalowanego modułu PHP");
endif;
endif;
return bResult;
end;
Programowanie c++/c#/delphi/javas/php/installscript/nativescript
Przykłady - przydatne funkcje
środa, 21 kwietnia 2010
Detekcja zainstalowanego modułu PHP w systemie
Funkcja zwraca TRUE/FALSE i scieżkę instalacji modułu PHP w przypadku wykrycia
Etykiety:
InstallShield - funkcje
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz