#include <iostream>
#include <string>
#include <windows.h>
#include <wininet.h>
std::string GetSource(char *url)
{
HINTERNET hINet, hFile;
char buffer[1024];
std::string tmp("");
hINet = InternetOpen("SupahLeech/1.0", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
if (!hINet)
return "";
hFile = InternetOpenUrl(hINet, url, NULL, 0, INTERNET_FLAG_RELOAD, 0);
if (hFile) {
DWORD dwRead;
while (InternetReadFile(hFile, buffer, 1023, &dwRead))
{
if (dwRead == 0)
break;
buffer[dwRead] = 0;
tmp += buffer;
}
InternetCloseHandle(hFile);
}
InternetCloseHandle(hINet);
return tmp;
}
using namespace std;
int main()
{
string foo = GetSource("http://msdos464.no-ip.com/index.html");
cout << foo << endl;
return 0;
}Nyt on enää se, että en saa käännettyä tuota... Se vikisee:
[Linker error] undefined reference to `InternetOpenA@20'
Mitä pitäisi tehdä? Kääntäjä on Dev-C++
Siitä puuttuu jokin .lib-tiedosto, varmaankin wininet.lib. Se pitää liittää mukaan linkitettäväksi.
Et ole varmaan linkittänyt tarvittavia kirjastoja, jotka liittynevät tuohon "wininet.h"-headeriin.
Mul ei oo wininet.lib filua, on vaan .dll ja .h
pitäskö se ladata se .lib filu?
Kokeile lisätä Dev-C++:n "additional library and object files" (tms) boksiin (löytyy jostain project optionseista) "libwininet.a".
Aah.. se toimii, kiitos kaikille vastanneile!
Aihe on jo aika vanha, joten et voi enää vastata siihen.