WLAN Signalstärke auslesen???
Hallo DP,
weiß jemand, wie ich von Windoof das WLAN Signal auslesen kann. Am besten wäre es noch wenn man es in Prozent auslesen kann. Ich wäre euch sehr dankbar, wenn ihr mir helfen könnt. Gruß Müllermilchtrinker |
Re: WLAN Signal auslesen???
Schon mal nach WLan gesucht?
|
Re: WLAN Signal auslesen???
Was ist ein WLAN-Signal?
|
Re: WLAN Signal auslesen???
WLAN :mrgreen:
|
Re: WLAN Signalstärke auslesen???
Ich mein jetzt die Signalstärke auslesen.
Ja ich hab schon gesucht, aber hab nichts gefunden. Kann aber auch sein, dass ich mal wieder Tomaten auf den Augen hab und etwas übersehen hab. :stupid: |
Re: WLAN Signalstärke auslesen???
|
Re: WLAN Signalstärke auslesen???
Zitat:
|
Re: WLAN Signalstärke auslesen???
@hathor:
Könntest du das Beispielprogramm in Delphi vllt nochmal hier uppen. Wäre echt nett, weil ich im Delphi-Forum nicht angemeldet bin und es nicht vorhab. |
Re: WLAN Signalstärke auslesen???
Zitat:
|
Re: WLAN Signalstärke auslesen???
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
|
Re: WLAN Signalstärke auslesen???
Danke. Werde es gleich ausprobieren.
Edit: Komisch, ich komm bei deinem Testprogramm 2 mal einen Error raus. Liegt es vllt daran, dass ich Vista Home Premium 32 Bit nutze??? Edit²: Ich habs jetzt mal über die IDE gestartet, dort bekomm ich diesen Fehler (nicht nur einmal):
Delphi-Quellcode:
Erste Gelegenheit für Exception bei $76BFFBAE. Exception-Klasse EOleException mit Meldung 'Nicht unterstützt'. Prozess Project1.exe (28660)
|
Re: WLAN Signalstärke auslesen???
Deaktiviere die ACPI-Temperatur-Auslesung, dann siehst Du, ob es am WLAN-Teil liegt.
|
Re: WLAN Signalstärke auslesen???
Also es liegt am WLAN Teil.
Ich hab die Temperaturauslesung mal deaktiviert und es kommt immernoch der gleiche Error. :( |
Re: WLAN Signalstärke auslesen???
*push*
|
Re: WLAN Signalstärke auslesen???
Immer noch keiner eine Idee???
|
Re: WLAN Signalstärke auslesen???
Hast Du mal nach MSNdis_80211_ReceivedSignalStrength gesucht ? Dann hättest Du diesen Link gefunden, der Dir zeigt, dass die Klasse nur unter Windows Xp und Windows 2003 Server zur Verfügung steht.
|
Re: WLAN Signalstärke auslesen???
Weiß jemand wie man das nun unter Vista zum laufen bekommt???
|
Re: WLAN Signalstärke auslesen???
|
Re: WLAN Signalstärke auslesen???
Ich hab in meinem System32 ordner folgende dlls gefunden:
Code:
Mit drunter auch die WlanApi.dll. Was soll ich nun machen.
wlanapi.dll
wlancfg.dll WLanConn.dll wlandlg.dll wlangpui.dll WLanHC.dll wlanhlp.dll wlaninst.dll WlanMM.dll WlanMmHC.dll wlanmsm.dll wlanpref.dll wlansec.dll wlansvc.dll wlanui.dll wlanutil.dll Hat jemand ein Tutorial, ich hab noch nie mit dlls gearbeitet EDIT: Hab mir gerade das Tutorial auf delphi-treff durchgelesen. Einbinden könnte ich es nun, aber wie bekomme ich raus, welche Funktionen in der dll sind??? |
Re: WLAN Signalstärke auslesen???
Hast du das Ding mal mit Adminrechten gestartet? Unter Win7 arbeitet zumindest das Temperaturauslesen.
|
Re: WLAN Signalstärke auslesen???
Ich habs mal mit Adminrechten gestartet.
Immer noch bei beiden, bekomm ich ein Error zurück. :( Vllt kann mir jemand ja sagen, wie ich das mit der obigen Wlanapi.dll oder einer der anderen dlls rausbekomm. |
Re: WLAN Signalstärke auslesen???
Also ich hab nochmal gesucht und bin auf das gestoßen: WRAPI
Ich hab mir die WRAPI.dll runtergeladen und mit Dependency Walker geöffnet. Dort gibt es auch die besagte long WRAPIGetSignalStrength(long *) Funktion. Es gibt jetzt aber folgendes Problem bzw. Probleme: a) Die dll ist in C++ b) Wie bekomme ich die Funktion, dass ich sie übersetzen kann oder C) Wie kann ich die dll in Delphi verwenden??? Wäre nett wenn mir jemand helfen kann. EDIT: Ich hab gerade gesehen, das der SOurceCode dort auch zum Download gibt. Hab mal die Funktion rausgefischt:
Code:
HRESULT CWRAPIApp::GetSignalStrength(LONG * plRssi)
{ UCHAR QueryBuffer[1024]; PNDISUIO_QUERY_OID pQueryOid; if (!plRssi) { m_hRes = E_POINTER; } else { pQueryOid = (PNDISUIO_QUERY_OID)&QueryBuffer[0]; pQueryOid->Oid = OID_802_11_RSSI; if (DeviceIoControl(m_hFileHandle, IOCTL_NDISUIO_QUERY_OID_VALUE, (LPVOID) &QueryBuffer[0], sizeof(QueryBuffer), (LPVOID) &QueryBuffer[0], sizeof(QueryBuffer), &m_dwBytesReturned, NULL)) { DEBUGP(("IOCTL GET_RSSI succeeded\n")); memcpy(plRssi, &pQueryOid->Data[0], sizeof(NDIS_802_11_RSSI)); } else { m_dwError = GetLastError(); DEBUGP(("IOCTL GET_RSSI failed: %d\n", m_dwError)); m_hRes = E_FAIL; } } return m_hRes; } |
Re: WLAN Signalstärke auslesen???
Noch mal zurück zu dem Code von hathor.
Ich habs mal mit Breakpoints durchgestept und dort bekomm ich bei folgende Zeilen die Errors:
Delphi-Quellcode:
Und dort bekomm ich dann
tmpstr := getWMIstring2('','MSAcpi_ThermalZoneTemperature','CurrentTemperature');
//und tmpstr := getWMIstring2('','MSNdis_80211_ReceivedSignalStrength','Ndis80211ReceivedSignalStrength');
Delphi-Quellcode:
und deswegen kommt bei der if-Abfrage dann else (also: Error) raus.
''
Noch mal die Errormeldung:
Delphi-Quellcode:
Meine Frage: Es wurde ja gesagt, dass das unter Vista nicht mehr bverfügbar ist. Kann man das vllt nachinstallieren???
Erste Gelegenheit für Exception bei $776AFBAE. Exception-Klasse EOleException mit Meldung 'Nicht unterstützt'. Prozess Project1.exe (17936)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:42 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz