15. november 2001 - 14:27
Der er
2 kommentarer og
1 løsning
Computernavn i MFC?
Jeg er i gang med at lave et SDI program, og skal herunder benytte computernavnet, til noget CAsyncSocket. Hvordan får jeg fat i det?
15. november 2001 - 14:33
#1
Her er et lille program der viser hvordan du finder lokal ip & navn
#include <iostream.h>
#include <winsock2.h>
int doit(int, char**)
{
char ac[80];
if (gethostname(ac, sizeof(ac)) == SOCKET_ERROR)
{
cerr << \"Error \" << WSAGetLastError() <<
\" when getting local host name.\" << endl;
return 1;
}
cout << \"Host name is \" << ac << \".\" << endl;
struct hostent* phe = gethostbyname(ac);
if (phe == 0) {
cerr << \"Yow! Bad host lookup.\" << endl;
return 1;
}
for (int i = 0; phe->h_addr_list[i] != 0; ++i) {
struct in_addr addr;
memcpy(&addr, phe->h_addr_list[i], sizeof(struct in_addr));
cout << \"Address \" << i << \": \" << inet_ntoa(addr) << endl;
}
return 0;
}
int main()
{
int argc;
char** argv;
WSAData wsaData;
if (WSAStartup(MAKEWORD(1, 1), &wsaData) != 0)
{
return 255;
}
int retval = doit(argc, argv);
WSACleanup();
return retval;
}