Netzwerkverfügbarkeit prüfen

Alles rund um die Programmierung mit Qt
Antworten
VikingGod
Beiträge: 5
Registriert: 19. Mai 2006 20:40

Netzwerkverfügbarkeit prüfen

Beitrag von VikingGod »

Hallo zusammen
bin neu in diesem Forum.

Wie ich schon festgestellt habe gibt es hier eine Reihe von kompetenten Leuten, die hilfreiche Tips auf Lager haben.

Hier poste ich einen Ausschnitt meines Codes, um unter Windows die Netzwerkverfügbarkeit abzuprüfen.
dazu muss lediglich die <windows.h> eingebunden werden und die Funktion "IsNetworkAlive" der DLL "sensapi.dll" abgefragt werden.

Das Problem ist, das mein Code nur unter Windows funktioniert...
Weiß jemand eine Lösung die unabhängig vom Betriebssystem ist;
gibt es eine ähnliche Methode im QT-Framework?


Besten Dank schonmal für die Antworten.

Hier der Code-Ausschnitt:

Code: Alles auswählen

	DWORD dwFlags;
	typedef bool (*DLLback)(DWORD*);
	DLLback IsNetworkAlive = (DLLback) QLibrary::resolve("sensapi.dll", "IsNetworkAlive");
	if (IsNetworkAlive)
	{
		if(IsNetworkAlive(&dwFlags))
			ui.lineEdit->setText( tr("- CONNECTED -" ) );
		else
			ui.lineEdit->setText( tr("- DISCONNECTED -") );
	}
FlorianBecker
Beiträge: 1213
Registriert: 2. Dezember 2004 10:54
Kontaktdaten:

Beitrag von FlorianBecker »

Hallo,

also es ist ja nun nicht so, das in Qt nicht jedes OS eine eigene Funktion benötigt.

Die QLibrary Klasse ist z.B. für jedes OS selbst geschrieben. Genauso wirst du es auch bei deiner Funktion machen müssen, da es nur OS spezifisch geregelt werden kann. Qt löst nur jeweils das Problem, einer einheitlichen API, aber das ist wohl doch zu speziell.
VikingGod
Beiträge: 5
Registriert: 19. Mai 2006 20:40

Beitrag von VikingGod »

Super Danke für die schnelle Antwort.
Genau das habe ich mir schon gedacht :D

Nun dann muss wohl eine extra Funktion implementiert werden ;)

naja wär ja zu einfach gewesen :D
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Re: Netzwerkverfügbarkeit prüfen

Beitrag von patrik08 »

VikingGod hat geschrieben: Weiß jemand eine Lösung die unabhängig vom Betriebssystem ist;
gibt es eine ähnliche Methode im QT-Framework?
Richtig das Api vom QT-Framework bezieht sich auf GUI.. auf alle OS was bereits sehr viel ist...
Die Idee ... und dass wie libs ecc... muss mann schon selber bitbringen...
In diesem forum bei ...
http://www.qtforum.de/forum/viewtopic.php?t=2064 geht es um einen whois e portscanner... und ich denke das mit der libcurl http://curl.haxx.se/ die auf mac , linux ,window sehr einfach zu installieren ist ... und eine liste mit gaengigen ports ... kann so einen netzwerk check ohne grossem aufwand realisiert werden...
Antworten