|
|
|
ftp
|
|||
|---|---|---|---|
|
#18+
Пытаюсь копировать с фтп(без прокси работает): hINetSession = InternetOpen("ESU", 0, vbNullString, vbNullString, 0) hSession = InternetConnect(hINetSession, "server.ftp.ua", "21", "anonymous", "", INTERNET_SERVICE_FTP, 0, 0) If FtpGetFile (hSession, "/ESU/CurrentVersion/esu_prj.exe", "c:\esu\esu_prj.exe", False, 0, 1, 0) = False Then MsgBox "Call to FtpGetFile Failed!" End If Call InternetCloseHandle(hSession) Call InternetCloseHandle(hINetSession) само собой все АПИ обьявлены: Private Const INTERNET_SERVICE_FTP = 1 Private Const INTERNET_SERVICE_GOPHER = 2 Private Const INTERNET_SERVICE_HTTP = 3 Private Type FILETIME dwLowDateTime As Long dwHighDateTime As Long End Type Private Type WIN32_FIND_DATA dwFileAttributes As Long ftCreationTime As FILETIME ftLastAccessTime As FILETIME ftLastWriteTime As FILETIME nFileSizeHigh As Long nFileSizeLow As Long dwReserved0 As Long dwReserved1 As Long cFileName As String * 260 cAlternate As String * 14 End Type Private Declare Function InternetOpen _ Lib "wininet.dll" Alias "InternetOpenA" ( _ ByVal sAgent As String, _ ByVal nAccessType As Long, _ ByVal sProxyName As String, _ ByVal sProxyBypass As String, _ ByVal nFlags As Long) As Long Private Declare Function InternetConnect _ Lib "wininet.dll" Alias "InternetConnectA" ( _ ByVal hInternetSession As Long, _ ByVal sServerName As String, _ ByVal nServerPort As Integer, _ ByVal sUserName As String, _ ByVal sPassword As String, _ ByVal nService As Long, _ ByVal dwFlags As Long, _ ByVal dwContext As Long) As Long Private Declare Function FtpGetFile _ Lib "wininet.dll" Alias "FtpGetFileA" ( _ ByVal hFtpSession As Long, _ ByVal lpszRemoteFile As String, _ ByVal lpszNewFile As String, _ ByVal fFailIfExists As Boolean, _ ByVal dwFlagsAndAttributes As Long, _ ByVal dwFlags As Long, _ ByVal dwContext As Long) As Boolean Private Declare Function InternetCloseHandle _ Lib "wininet.dll" (ByVal hInet As Long) As Integer Private Declare Function FtpFindFirstFile _ Lib "wininet.dll" Alias "FtpFindFirstFileA" ( _ ByVal hFtpSession As Long, _ ByVal lpszSearchFile As String, _ ByRef lpFindFileData As WIN32_FIND_DATA, _ ByVal dwFlags As Long, _ ByVal dwContent As Long) As Long Private Declare Function InternetFindNextFile _ Lib "wininet.dll" Alias "InternetFindNextFileA" ( _ ByVal hFind As Long, _ ByRef lpvFindData As WIN32_FIND_DATA) As Long ехе-шник с фпт копирует(на фтп ехе-шник не битый) пытаюсь запустить скопированый ехе, он оказываетси "битым". Не подскажите в чём дело может быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.10.2006, 14:57 |
|
||
|
ftp
|
|||
|---|---|---|---|
|
#18+
А через WinSock? или сторонние компоненты? Например на vbip.com есть готовые классы для работы с FTP на основе WinSock Нормально, быстро работают, и мало весят Есть также Power FTP Tool от Dart ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 08:24 |
|
||
|
ftp
|
|||
|---|---|---|---|
|
#18+
Smiler™ If FtpGetFile (hSession, "/ESU/CurrentVersion/esu_prj.exe", "c:\esu\esu_prj.exe", False, 0, 1, 0) = False Then Не подскажите в чём дело может быть? Может, стоит поменять формат передачи на binary? Т.е.: If FtpGetFile (hSession, "/ESU/CurrentVersion/esu_prj.exe", "c:\esu\esu_prj.exe", False, 0, 2 , 0) = False Then ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2006, 17:51 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=34058916&tid=2165145]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
179ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 494ms |

| 0 / 0 |
