Cari forumisti.
Sono nuovo di questo forum, ho un problema che mi sta mandando in reparto psichiatria alla sezione programmatori-scarsi-impazziti.
Ho scritto un piccolo programma in VB Express Edition perchè ho necessità di scaricare da un sito FTP un file per copiarlo in una precisa cartella. Sul web ho trovato questo codice che metto sotto, ma alla riga 'QUI ERR' mi da un errore di "Tentativo di lettura o scrittura della memoria protetta". Qualcuno sa qualcosa?
Grazie infinite.
PS. forse causa mia ignoranza erroneamente ho aperto una nuova discussione.... scusate...
Public Class codice_1
Const INTERNET_SERVICE_FTP = 1
Const INTERNET_OPEN_TYPE_DIRECT = 1
Const INTERNET_FLAG_PASSIVE = &H8000000
Const FTP_TRANSFER_TYPE_BINARY = 0
Const FILE_ATTRIBUTE_ARCHIVE = &H20
Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" _
(ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, _
ByVal sProxyBypass As String, ByVal lFlags 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 lService As Long, ByVal lFlags As Long, ByVal lContext 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 Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim hOpen&, hConn&
Dim lRes, scUserAgent As String
scUserAgent = "pippo"
hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_DIRECT, vbNullString, vbNullString, 0)
'QUI ERR
hConn = InternetConnect(hOpen, "ftp://ftp.peppo.com", "21", "Anonymus", vbNullString, INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, 0)
'--------
lRes = FtpGetFile(hConn, "pappo.txt", "C:\directory", False, FILE_ATTRIBUTE_ARCHIVE, FTP_TRANSFER_TYPE_BINARY, 0&)
InternetCloseHandle(hConn)
InternetCloseHandle(hOpen)
End Sub