Ich arbeite an einer asp.net (oder Winforms) -App, die WLAN-Konnektivität und Stärke erkennen soll. Die Absicht ist, den Außendienstmitarbeitern einen Hinweis zu geben, dass sie sich mit unserem Hauptbüro verbinden können.
Was würde ich brauchen, um WLAN-Konnektivität zu erkennen?
Sie können es in ASP.NET nicht tun. ASP.NET ist eine serverseitige Technologie, die clientseitigen durchsuchbaren Code rendert.
Um dies zu tun, müssten Sie etwas entwickeln, das in die Seite eingebettet ist (ActiveX, Java, Flash, Silverlight) und selbst dann müssten Sie die entsprechenden Sicherheitsberechtigungen vom Benutzer haben, um auf die APIs zugreifen zu können notwendig, um die wifi Antenne zu erreichen.
Schauen Sie sich WlanEnumInterfaces in der wlanapi.dll an. Sie müssen es von C # anpinnen. Es gibt einen verwalteten Wrapper dafür auf Codeplex ( Ссылка ), aber ich kann nicht dafür bürgen, da ich ihn nie persönlich benutzt habe.
Sie können immer noch mit ASP.Net machen, wenn es Ihnen nichts ausmacht, ein ActiveX-Objekt zu schreiben, und Ihre Kunden haben nichts dagegen, es von Ihrer Website zu starten.
Sie können dies ziemlich einfach mit beiden WinForms und ASP.NET tun. Auf Ihrem Server erstellen Sie einen Web-Service mit einer einzigen Methode, die true
zurückgibt. Für Ihre Kunden schreiben Sie eine Winforms-Anwendung (etwas, das im Tray sitzt, wäre ideal), das den Web-Service alle 5 oder 10 Sekunden (oder welches Intervall Sie wollen) mit einem timeout
weniger Sekunden abfragt. Wenn der Web-Service-Aufruf zurückkehrt, ohne eine Zeitüberschreitungsausnahme auszulösen, wissen Sie, dass Sie verbunden sind. Wenn das Zeitlimit überschritten wird, wissen Sie, dass Sie nicht verbunden sind (und Sie könnten z. B. ein kleines Licht anzeigen, das grün ist, wenn es verbunden ist, und rot, wenn es nicht verbunden ist).
Beachten Sie, dass Sie die WLAN-Verfügbarkeit (oder ihre Signalstärke) in keiner Weise messen würden, aber das ist wahrscheinlich nichts, was Ihre Außendienstmitarbeiter wirklich interessiert. Sie wollen wahrscheinlich nur wissen, ob sie sich verbinden können oder nicht.