Zugriffsverletzung bei FTP-Upload in ausgelagertem Thread

XELLEX

Grünschnabel
Hi Leute,

ich bin gerade dabei ein FTP-Programm zu programmieren.
Dabei wird ein Thread erstellt, der auf eine Klasse "FtpHandler" zugreift. Mit dem "FtpHandler" soll von diesem Thread eine Datei auf einen FTP-Server hochgeladen werden.

Allerdings bekomme ich bei der Zeile
"internet = InternetOpen(NULL,INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,0);"
folgenden Fehler während der Laufzeit des Programms:

Unbehandelte Ausnahme bei 0x00275275 in ftptest.exe: 0xC0000005: Zugriffsverletzung beim Schreiben an Position 0xfdfdfdfd.

Die Instanz "HINTERNET internet" ist dabei ein Private-Member der Klasse "FtpHandler".

Beim debugging steht bei "internet": CXX0030: Fehler: Ausdruck kann nicht ausgewertet werden

Bis jetzt funktionierte die Klasse "FtpHandler" ohne Thread immer perfekt!
Ich hoffe ihr könnt mir helfen! ;)

Gruß,
XELLEX
 
Hi

die Klasse hat unverändert, aber ohne Thread, also schon funktioniert.

Greifst du aus verschiedenen Threads auf die Instanz zu, oder wird sie nur in einem gebraucht?
 
Nein, ich greife nur mit einem Thread darauf zu.
Bei mehreren Threads würde dem jeweiligen Thread ein eigenes Objekt ftpHandler an die Hand gegeben.
Wegen dem Fehler habe ich es dann mit einem Thread probiert - selbes Ergebnis...
 
Hm, muss man nicht einen Useragent angeben?
Also einen String in den ersten Parameter, Programmname oder so.
 
Hallo XELLEX,

so wie ich dass verstehe, wird die Instanz der Klasse "FtpHandler" außerhalb des Threads erzeugt? Wie übergibst du sie dann an den Thread?

Gruß
MCoder
 
Problem gelöst!

Ich musste den FtpHandler innerhalb des jeweiligen Threads und nicht schon vorher initialisieren ... blöder Fehler! -.-

Danke für eure Hilfsbereitschaft Leute! ;)

Gruß,
XELLEX
 
Zurück