FtpFindFirstFile函数的问题,本地FTP可以打开,但是连接远程FTP时,调试到此函数时程序就死掉了!

解决方案 »

  1.   

    以前别人写的代码,我给贴出来,如果你运用成功就给我100
      如果不行,当我白贴了!!哈哈
       Private  Sub  Command2_Click()  
    Dim  pData  As  WIN32_FIND_DATA  
    Dim  lngHINet  As  Long  
    Dim  intError  As  Integer  
    Dim  strTemp  As  String  
    Dim  blnRC  As  Boolean  
    pData.cFileName  =  String(260,  0)  
    lnginet  =  InternetOpen(vbNullString,  INTERNET_OPEN_TYPE_PRECONFIG,  _  
         vbNullString,  vbNullString,  0&)  
    If  lnginet  Then  
       lnginetconn  =  InternetConnect(lnginet,  "ftp地址",  0,  _  
                   "用户名",  "密码",  1,  0,  0)  
         If  lnginetconn  Then  
         lngHINet  =  FtpFindFirstFile(lnginetconn,  "*.*",  pData,  0,  0)  
         strTemp  =  Left(pData.cFileName,  InStr(1,  pData.cFileName,  String(1,  0),  vbBinaryCompare)  -  1)  
         Do  
               pData.cFileName  =  String(260,  0)  
               blnRC  =  InternetFindNextFile(lngHINet,  pData)  
               If  Not  blnRC  Then  
                       Exit  Do  
               Else  
                     strTemp  =  Left(pData.cFileName,  InStr(1,  pData.cFileName,  String(1,  0),  vbBinaryCompare)  -  1)  
               End  If  
                 
         Loop  
         Text1.Text  =  strTemp  
       End  If  
       End  If  
         InternetCloseHandle  lngHINet  
           
         InternetCloseHandle  lnginetconn  
               InternetCloseHandle  lnginet  
           
           
    End  Sub  
    测试成功,怀疑你的  
    blnRC  =  InternetFindNextFile(lngHINet,  pData)  
               If  Not  blnRC  Then  
                       Exit  Do  
               Else  
    结果你findnextfile没有循环结束,当然我这个写得不严谨是有问题的,应该是检测是否是18错误
      

  2.   

    那说明没有连接上FTP服务器,请检查是否已经连接上。