escafandra
29-11-2007, 19:18:57
Hola. Me gustaría que alguien me indicara como poder identificarme en un proxi para conectarme a internet desde un programa en C++ Builder.
He reescrito un código que encontré en este foro en delphi traducido a c++, pero no me funciona porque utilizo un proxi en el que no se como identificarme.
Les dejo el código:char PaginaWebIP1[] = "https://dynupdate.no-ip.com/ip.php";
char*
GetIP(char* URL)
{
HINTERNET hNet;
HINTERNET hUrl;
char Buffer[15];
DWORD BytesRead;
char *Result = 0;
if(!URL) URL = PaginaWebIP1;
hNet = InternetOpen("agent", INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);
if (hNet){
hUrl = InternetOpenUrl(hNet, URL, NULL, 0, INTERNET_FLAG_RELOAD, 0);
if (hUrl){
for(int n=0; n<sizeof(Buffer); Buffer[n++] = 0);
if(InternetReadFile(hUrl, Buffer, sizeof(Buffer)-1, &BytesRead))
// Aqui comprobamos que la direccion que nos devuelve tiene el formato correcto
if(inet_addr(Buffer)!=INADDR_NONE)
Result = Buffer;
InternetCloseHandle(hUrl);
}
InternetCloseHandle(hNet);
}
return Result;
}
Saludos.
He reescrito un código que encontré en este foro en delphi traducido a c++, pero no me funciona porque utilizo un proxi en el que no se como identificarme.
Les dejo el código:char PaginaWebIP1[] = "https://dynupdate.no-ip.com/ip.php";
char*
GetIP(char* URL)
{
HINTERNET hNet;
HINTERNET hUrl;
char Buffer[15];
DWORD BytesRead;
char *Result = 0;
if(!URL) URL = PaginaWebIP1;
hNet = InternetOpen("agent", INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);
if (hNet){
hUrl = InternetOpenUrl(hNet, URL, NULL, 0, INTERNET_FLAG_RELOAD, 0);
if (hUrl){
for(int n=0; n<sizeof(Buffer); Buffer[n++] = 0);
if(InternetReadFile(hUrl, Buffer, sizeof(Buffer)-1, &BytesRead))
// Aqui comprobamos que la direccion que nos devuelve tiene el formato correcto
if(inet_addr(Buffer)!=INADDR_NONE)
Result = Buffer;
InternetCloseHandle(hUrl);
}
InternetCloseHandle(hNet);
}
return Result;
}
Saludos.