Народ, кто работал с компонентом Inet? Предыстория: в моей конторе половина компов живут под WinNT, а половина под UNIX. Задача: написать программу, которая запускается с параметрами, делает некий набор действий, в частности, если это задано в строке запуска, перекладывает файл на UNIX. Пояснения /p - печатаем что-то, /s - отправляем по почте, /u - перекладываем на UNIX, /q - выгружаем прогу. Для тех, кто знаком с банковской работой, скажу, что программа должна обрабатывать выписку из МЦИ, но это не важно. Теперь куски кода: Private Sub Form_Load() strPrm = Trim$(Command) blnFirstRun = True ' Флаг первого запуска End Sub Private Sub Form_Activate() If blnFirstRun = False Then Exit Sub End If If StrComp(strPrm, "", vbTextCompare) <> 0 Then blnFirstRun = False If InStr(1, strPrm, "/", vbTextCompare) = 0 Then strReysPath = strPrm ' полный путь до обрабатываемого файла Else strReysPath = Trim$(Mid$(strPrm, 1, InStr(1, strPrm, "/", vbTextCompare) - 1)) End If If InStr(1, strPrm, "/p", vbTextCompare) <> 0 Then VIP_Preview ' Вызов п/п подготовки а потом печати VIP_Print ' End If If InStr(1, strPrm, "/s", vbTextCompare) <> 0 Then If InStr(1, strPrm, "/p", vbTextCompare) = 0 Then VIP_Preview End If mnuMail_Click ' вызов п/п отправки почты End If If InStr(1, strPrm, "/u", vbTextCompare) <> 0 Then mnuFileToUNIX_Click ' вызов п/п отправки файла на UNIX End If If InStr(1, strPrm, "/q", vbTextCompare) <> 0 Then Unload frmPreview Unload frmMain ' Выход End If End If End Sub Private Sub mnuFileToUNIX_Click() Dim strFileName As String strFileName = Mid$(strReysPath, InStrRev(strReysPath, "\") + 1) Inet1.Execute , "CD f20" ' Заходим в директорию f20 на UNIX Do While Inet1.StillExecuting: DoEvents: Loop ' Ждем выполнения Inet1.Execute , "SEND " & strReysPath & " " & strFileName Do While Inet1.StillExecuting: DoEvents: Loop ' Копируем туда файл Inet1.Execute , "QUIT" ' Выходим Do While Inet1.StillExecuting: DoEvents: Loop End Sub Вот тут-то и начинается шоу. Заключается оно вот в чем: примерно на каждые 20 запусков один раз перенос на ЮНИКС не срабатывает. Просил наших юниксоидов посмотреть что происходит, т.к. софтина ничего не пишет, они говорят, что авторизация юзера происходит успешно, юзер говорит, что сейчас буду передавать файл, но не делает этого, после чего происходит обрыв связи по таймауту. Кто-нибудь может сказать что-нибудь путного, или хоть ссылки дайте какие-нибудь, был бы крайне признателен за любую информацию.
Ответить
|