Daten vom Server laden
-
versteh ich nicht. im alten thread hattest du nur linker-probleme die du jetzt ja lösen könntest.
-
ich kann aber den alten code nicht wirklich nachvolzeihen, den hier allerdings schon, deshalb: kannst du mir nicht sagen was falsch ist?
-
z.b. darfst du bei InternetReadFile beim 4. parameter nicht einfach NULL angeben
-
einfach mal RFC zum HTTP Protokol angucken und mit Sockets lösen - für sowas dürftest du eigentlich fertigen Programmcode finden...
-
Vertexwahn schrieb:
einfach mal RFC zum HTTP Protokol angucken und mit Sockets lösen - für sowas dürftest du eigentlich fertigen Programmcode finden...
Warum sollte er es sich noch schwerer machen?
-
falsch schrieb:
z.b. darfst du bei InternetReadFile beim 4. parameter nicht einfach NULL angeben
was muss da für ein Variablentyp hin? Int geht nicht (währe meiner meinung nach am logischten gewesen)
-
junge guck in die dokumentation.

-
Man setzt hier einfach voraus, dass man C++ kann, zumindest in den Grundlagen.
Der vierte Parameter ist ein LPDWORD, was soviel bedeutet wie Pointer auf ein DWORD.
Daraus folgt:DWORD dLength=0; InternetReadFile(Connection, lesen, 10024, &dLength);Gruß André
-
ja sorry

die frage ist immer was grundlagen sind (ich wusste garnet das es einen Variablentyp namens Dword gib)... ich dachte immer ich kann schon ein wenig grundlagen (ich weiß das die API nicht gerade leicht ist)
aber irgendwie muss man ja mal anfangen ..
sorry aber es funktioniert immernochnicht
#include <iostream> #include <windows.h> #include <wininet.h> #pragma comment(lib, "libwininet.a") using namespace std; int main() { /* InternetOpenUrl( HINTERNET hInternet, LPCTSTR lpszUrl, LPCTSTR lpszHeaders, DWORD dwHeadersLength, DWORD dwFlags, DWORD_PTR dwContext ); InternetOpen( LPCTSTR lpszAgent, DWORD dwAccessType, LPCTSTR lpszProxyName, LPCTSTR lpszProxyBypass, DWORD dwFlags ); InternetReadFile( HINTERNET hFile, LPVOID lpBuffer, DWORD dwNumberOfBytesToRead, LPDWORD lpdwNumberOfBytesRead );*/ HINTERNET open = InternetOpen("iexplorer", INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,0); if(open == NULL) { //error } //HINTERNET Connection = InternetConnect(Initialize,"",INTERNET_DEFAULT_HTTP_PORT, NULL,NULL,INTERNET_SERVICE_HTTP,0,0); HINTERNET Connection = InternetOpenUrl(open, "http://eastbourne.ea.funpic.de/test.txt", NULL, 0, INTERNET_FLAG_RELOAD, 0); char lesen[123]; DWORD dLength=0; //DWORD dLength2=100024; InternetReadFile(Connection, &lesen, 10024, &dLength); cout << ";" << lesen << ";" << endl; }die Aussgabe stimmt aber immernoch nicht
es tut mir wirklich leid
-
Es tut mir wirklich leid für dich das du noch nicht mal in der Lage bist die Rückgabewerte zu überprüfen.
-
das war zwar net gerade super freundlich aber ein tipp in die richtige richtung...
was ist 87 (was bedeutet der error?)
und was ist der fehler

-
Dein Puffer ist nicht 10024 bytes lang.
-
vielen vielen dank!
-
was für einen befehl nehme ich um an bilder zu kommen?
-
Der Befehl lautet MSDN und lässt sich über einen Click auf diesen Hyperlink ausführen http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wininet/wininet/wininet_functions.asp