piątek, 1 kwietnia 2011

Pobranie ścieżki do zainstalowanego serwera Apache Tomcat w Installshield

Funkcja wykrywa i zwraca ścieżkę do zainstalowanego serwera Apache Tomcat
- parametrami funkcji są 2 zmienne: szName - nazwa Serwera Tomcat np ""apache-tomcat-6.0.20" oraz - bLog (bool) - (zmienna określająca zapis do logu)
- funkcja zwraca ściezkę lub pusty string
function STRING GetTomcatPath(szName, bLog)
STRING szPath;                                                
string sKey,sValue,sData;          
number nSize,nType,nResult;
begin                                                         
 szPath = "";
 if bLog then WriteLog(0,"* Wykrywanie katalogu Tomcata"); endif;
  if (Is(PATH_EXISTS,PROGRAMFILES ^ szName)) then
   szPath =   PROGRAMFILES ^ szName;
   if bLog then WriteLog(1,"- katalog: \""+szPath+"\""); endif;  
   else                                      
    if bLog then WriteLog(1,"- Sprawdzenie w rejestrach"); endif;
 RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE); 
 sKey = "SOFTWARE\\Apache Software Foundation\\Tomcat\\6.0";
 if (RegDBKeyExist(sKey)==1) then 
    sValue="InstallPath";                 
    if bLog then WriteLog(1,"- znaleziono klucz instalacyjny"); endif;
   if (RegDBGetKeyValueEx( sKey, sValue, nType, sData, nSize )==0) then
    if (Is(PATH_EXISTS,sData)) then
     szPath = sData;
     if bLog then WriteLog(1,"- katalog: \""+szPath+"\"");endif;  
    else
     if bLog then WriteLog(1,"- katalog nie istnieje: \""+szPath+"\""); endif;   
    endif;
   endif;
  endif; 
 endif;
 
 if StrLength(szPath)=0 then
   if bLog then WriteLog(1,"- nie wykryto"); endif;
 endif; 
 
 return szPath;
end; 

Brak komentarzy:

Prześlij komentarz