piątek, 1 kwietnia 2011

Funkcja sprawdzająca czy podany ciąg znaków jest numerem Portu w InstallShield

Funkcja sprawdza czy podany ciąg znaków jako parametr jest numerem Portu

- zwraca true/false

function BOOL IsPort(szPort)
BOOL bResult;           
string tab,adr;         
string znak;                                
int i,nPort;                        
begin       
 tab = "0123456789"; 
 bResult = TRUE;                
 if (StrLength(szPort)<2)||(StrLength(szPort)>5) then return FALSE; endif;
  //sprawdzenie dozwolonych znaków
  for i=0 to (StrLength(szPort)-1) 
   StrSub(znak,szPort,i,1);  
   if (StrFind(tab,znak)<0) then return FALSE; endif;
  endfor;           
 
  //Pierwsza cyfra 0
  StrSub(znak,szPort,0,1);
  if znak="0" then return FALSE; endif;
 
  //Przy porcie 2-cyfrowym - Port >= 80
  if (StrLength(szPort)=2) then
   StrToNum(nPort,szPort);
   if nPort<80 then return FALSE; endif;
  endif;
 
 return bResult;
end;

Brak komentarzy:

Prześlij komentarz