HttpSendRequest gibt "Invalid Url" zurück
-
Hallo,
ich versuche gerade ein Php-Script auf meinem Server aufzurufen. Und ich finde den Fehler einfach nicht!HINTERNET hInternet; HINTERNET hConnect; HINTERNET hRequest; OpenInternet: hInternet = InternetOpen(L"Test", INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0); if(!hInternet) { Sleep(500); } // Check for Cancel if(LicenseDialog->AppLicense->bActivateDemoWaitingForClose) { InternetCloseHandle(hInternet); LicenseDialog->AppLicense->bActivateDemoWaitingForClose = FALSE; SendMessage(LicenseDialog->m_hwnd, WM_USER, 1, 0); } if(!hInternet) goto OpenInternet; ConnectInternet: hConnect = InternetConnect(hInternet, L"http:\/\/www.software.palmasol.net", INTERNET_DEFAULT_HTTP_PORT, NULL, NULL, INTERNET_SERVICE_HTTP, 0, 1u); if(!hConnect) { Sleep(500); } // Check for Cancel if(LicenseDialog->AppLicense->bActivateDemoWaitingForClose) { InternetCloseHandle(hConnect); InternetCloseHandle(hInternet); LicenseDialog->AppLicense->bActivateDemoWaitingForClose = FALSE; SendMessage(LicenseDialog->m_hwnd, WM_USER, 1, 0); } if(!hConnect) goto ConnectInternet; Request: hRequest = HttpOpenRequest(hConnect, L"GET", L"ActivateDemo.php", NULL, NULL, 0, INTERNET_FLAG_RELOAD, 1); if(!hRequest) { Sleep(500); } // Check for Cancel if(LicenseDialog->AppLicense->bActivateDemoWaitingForClose) { InternetCloseHandle(hRequest); InternetCloseHandle(hConnect); InternetCloseHandle(hInternet); LicenseDialog->AppLicense->bActivateDemoWaitingForClose = FALSE; SendMessage(LicenseDialog->m_hwnd, WM_USER, 1, 0); } if(!hRequest) goto Request; SendRequest: // Hier ist der Fehler BOOL bSend = HttpSendRequest(hRequest, NULL, 0, NULL, 0); if(!bSend) { wstringstream ss; ss << GetLastError(); MessageBox(NULL, (ss.str()).c_str(), L"", MB_OK); Sleep(500); } wstringstream Data; for (;;) { wchar_t szData[1024]; DWORD dwBytesRead; BOOL bRead = InternetReadFile( hRequest, szData, sizeof(szData)-1, &dwBytesRead ); if ( bRead == FALSE || dwBytesRead == 0 ) break; szData[dwBytesRead] = 0; Data << szData; }
Vielen Dank
Johannes
-
Mal davon abgesehen, dass man goto nciht verwenden sollte, das führt nur zu Unübersichtlichkeit und Fehlern...
Woran könnte Invalid URL wohl liegen? Wenn man des Englischen mächtig ist, weiß man: Die URL scheint falsch zu sein. Und wenn man jetzt C++ kann sieht man in deinem Code sofort: Was zur Hölle soll
http:\/\/www.software.palmasol.net
sein?
Aber darauf musst du jetzt selber kommenmfg -Infected-
-
Ok, Danke! Jetzt habe ich es durch die IP Adresse ausgetauscht, aber ich krieg nen anderen Fehler, aber schon in dem was zurückkommt vom Server, also in der zweiten MsgBox in dem Code. "The requested url /ActivateDemo.php was not found on this server" oder so änlich, aber die existiert ja auf dem server, http://www.software.palmasol.net/ActivateDemo.php
-
Hallo,
jetzt habe ich es gelöst, und mit meiner IP Adresse geht's nicht, es ging mit "software.palmasol.net" und nach dem ich das eingegeben habe ging das andere auch!
-
Nochmal ne kleine Frage, ist es normal das wenn ich meine Internet Verbindung trenne, das der dann alles ohne Fehler macht und nur dan danach der Buffer eben lehr ist? Wenn ja, wie kann ich so was abprühfen?