Zum Inhalt springen

gethostbyname() -problem


Empfohlene Beiträge

Geschrieben

Halli Hallo!

Also folgendes: Ich möchte ein Programm entwickeln, das sich mit einem vorhandenen TCP-Server über einen bestimmten Port verbindet. Dazu habe ich folgenden Quelltext geschrieben:

  

void main()

{

        int i,r;

	int sock;

	extern int errno;

	extern int h_errno;

	struct sockaddr_in toServer;

	struct hostent *h;

	char message[256], host[256];


	memset((char *) &toServer, 0, sizeof(toServer));

	toServer.sin_family = AF_INET;

	toServer.sin_port = htons(5057);

	h = gethostbyname("wizzard");

        if (h == NULL) {

		ShowMessage("gethostbyname error");

		return;

	}


        ...

        ...

}

Wenn das Programm jetzt an der Stelle ankommt, wo h = gethostbyname("wizzard"); aufgerufen wird, führ der Rechner das auch aus. Aber anschliessend steht in der Struktur h nichts. Der Hostname kann aufgelöst werden. Das sollte also nicht das Problem darstellen.

Also. Wo liegt der Fehler? Bitte helft mir! Ich bin schon ganz deprimiert... :(

Achja. Der Compiler oder Linker gibt keine Fehler- oder Warnmeldung aus.

Geschrieben

Versuch mal ob das Problem immer noch auftritt, wenn Du die direkte Adresse ansprichst über gethostbyaddr() anstatt gethostbyname(). Vielleicht kann er nur den Namen irgendwie nicht richtig auflösen.

Geschrieben

Also folgendes:

Ich habe jetzt die Funktion gethostbyaddr(...) in mein Programm eingebaut. Nur hat dieser ja auch noch einen Fehler.

Jetzt möchte ich den Fehlercode sehen. Dieser soll mit WSAGetLastError() herausgefunden werden (so steht es in der Onlinehilfe). Nur wenn ich diese Funktion in mein Programm einbaue, dann bekomme ich folgenden Linker-Error:

[Linker Fehler] Unresolved external '__stdcall WSAGetLastError()' referenced from C:\DOKUMENTE UND EINSTELLUNGEN\ADMINISTRATOR\DESKTOP\SOCKETS\MAIN.OBJ

Hat jemand von euch auch schon einmal so ein Problem gehabt? Wenn ja, wie wurde es gelöst?

Für Antworten bin ich wie immer sehr dankbar!

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...