Aktivieren / Deaktivieren eines Netzwerkadapters mit einer Tastenkombination

9

Ich habe zunächst versucht, mithilfe einer Verknüpfung das Fenster Verbindungsstatus des lokalen Bereichs auf meinem Desktop anzuzeigen, indem ich eine Verknüpfung erstellt und Ctrl+ ,(Komma) zugewiesen habe.

Windows gefiel das nicht, also fügte es hinzu Alt, was letztendlich Ctrl+ Alt++ war ,.

Da ich Altim Rahmen der Tastenkombinationen keine Möglichkeit zum Eliminieren gefunden habe , versuche ich jetzt eine andere Strategie und sie funktioniert nicht. Mein letzter Versuch ist, AutoHotkey mit dem folgenden Befehl zu verwenden:

^,::Run, explorer ::{BA126ADB-2166-11D1-B1D0-00805FC1270E}

Welches ist die Shortcut-Zielnummer, aber es öffnet das Fenster nicht.

Carlos
quelle
Ich verstehe deine Frage nicht. Können Sie Ihr AutoHotkey-Skript veröffentlichen? Windows oder AutoHotkey sollten nicht [Alt]jedes Mal gesendet werden [Ctrl], wenn Sie drücken , es sei denn, Sie schreiben es so.
iglvzx
Sicher, ich habe eine Verknüpfung für die Lan-Verbindungseigenschaften erstellt und die folgenden Tastenkombinationen zugewiesen. STRG + ALT +,
Carlos
Ich wusste nicht, dass mich das Schlagen der Rückkehr fertig machen würde. Wie auch immer, mein Wunsch ist es, STRG + zu haben, meine Tastenkombinationen zu sein, aber wenn Sie STRG als Teil Ihrer Tastenkombinationen in Windows auswählen, wird automatisch ALT hinzugefügt, sodass ich STRG + ALT + erhalte und diese entfernen möchte ALT und benutze einfach STRG +, - erklärt das das besser?
Carlos
Woher hast du diese GUID? Es öffnet nicht "Local Area Connection"
iglvzx
Carlos, ich möchte dich nicht im Stich lassen, also werde ich eine detaillierte, leicht zu verfolgende Lösung für dich entwickeln. Ich kann momentan nicht daran arbeiten, aber ich sollte morgen nach 12:00 Uhr Pazifik Zeit haben.
iglvzx

Antworten:

12

Ich werde die manuellen Schritte auflisten, die zum schnellen Aktivieren oder Deaktivieren eines Netzwerkadapters erforderlich sind. Dann werde ich diese Schritte in AutoHotkey übersetzen .


Von Hand:

  1. Öffnen Sie Netzwerkverbindungen über die Befehlszeile.

    explorer ::{7007ACC7-3202-11D1-AAD2-00805FC1270E}
    

    Netzwerkverbindungen

  2. Sobald das Fenster aktiv ist, drücken Sie Space , um den Fokus auf die Liste der Adapter zu setzen.

    Liste

  3. Wenn der Adapter, den Sie aktivieren / deaktivieren möchten, derzeit ausgewählt ist (dh der erste in der Liste), fahren Sie mit Schritt 5 fort .

  4. Wenn der Adapter nicht ausgewählt ist, drücken Right Sie , bis er ausgewählt ist. Zum Beispiel drückt Right 1 Mal , wenn der Adapter 2. auf der Liste, 2 mal , wenn es das 3. , usw.

    2 ..

  5. Klicken Sie mit der rechten Maustaste auf den Adapter und drücken Sie Down , um die Option Enableoder zu markieren Disable.

    deaktivieren

    aktivieren

  6. Drücken Sie Enter auf Enableoder Disable.

  7. Schließen Sie die Netzwerkverbindungen.


Autohotkey:

Verwenden der Tastenkombination Ctrl+,

^,::

   ;1.
   Run, explorer ::{7007ACC7-3202-11D1-AAD2-00805FC1270E}

   ;2.
   WinWaitActive, Network Connections
   Send, {Space}

   ;3. & 4.
   ;If the adapter is not the 1st, navigate to it.
   ;For example, without the comment (semi-colon):
   ;    Send, {Right 1}
   ;if it is the 2nd adapter.
   ;    Send, {Right 2}
   ;if it is the 3rd, etc.

   ;5.
   Send, {AppsKey}
   Sleep, 250 ;adjust as needed
   Send, {Down}

   ;6.
   Send, {Enter}

   ;7.
   WinClose, Network Connections

   return
iglvzx
quelle
Vielen Dank für Ihre Antwort. Ich habe die Nachricht erhalten, dass ich nicht zweimal dieselbe Frage gestellt habe. Ich gehe gerade zu einem Meeting, möchte aber etwas klarstellen, damit ich mich etwas später bei Ihnen melden kann. Danke Carlos
Carlos
Die Verknüpfung landete im Ordner "Programme" und ich weiß nicht, wie ich den Befehl einfügen soll. Ich habe darüber nachgedacht, die Verknüpfungsidee alle zusammen zu beseitigen und direkt zu dem Programm zu gehen, das ich ausführen möchte, nämlich der lokalen Verbindung. Also habe ich dieses Skript geschrieben, aber es funktioniert nicht.
Carlos
; Dies dient zum Öffnen meiner LAN-Verbindung - funktioniert nicht ^, :: Ausführen, "Systemsteuerung \ Netzwerk und Internet \ Netzwerkverbindungen \ LAN-Verbindung" Zurück
Carlos
Ihr Code ist nicht gut. Pfade in der Systemsteuerung sind nicht mit Pfaden im Dateisystem / Windows Explorer identisch. Siehe meine aktualisierte meine Antwort. :)
iglvzx
2
Der Befehl, den Sie mir gegeben haben, öffnet die Netzwerkverbindung wie gesagt, aber ich versuche noch einen Schritt weiter zu gehen und das Fenster LOCAL AREA CONNECTION STATUS zu öffnen, damit ich die Verbindung aktivieren / deaktivieren kann. - Vielleicht habe ich mich nicht klar ausgedrückt. Ich habe die erste Frage zur Klarstellung neu geschrieben. Hoffe das ist was du wolltest.
Carlos
6

Gehen Sie einfach zu dem Bildschirm, auf dem sich das Adaptersymbol befindet. Klicken Sie mit der rechten Maustaste und erstellen Sie eine Verknüpfung (es ist nicht möglich, Verknüpfungen zu diesem Fenster hinzuzufügen, aber es ermöglicht die Erstellung auf dem Desktop). Wenn Sie den Adapter aktivieren oder deaktivieren möchten, klicken Sie mit der rechten Maustaste auf das Symbol auf Ihrem Desktop und klicken Sie auf Aktivieren oder Deaktivieren.

Frank
quelle
1
Der "Bildschirm, auf dem sich das Adaptersymbol befindet" ist in diesem Fall "Netzwerk" und "Internet \ Netzwerkverbindungen". Öffnen Sie das Netzwerk- und Freigabecenter und klicken Sie im linken Bereich auf "Adaptereinstellungen ändern".
Shane
Wenn es eine Sache gibt, die ich auf dieser und anderen Seiten gelernt habe, gehen Sie nicht nach akzeptierten Antworten oder den meisten Upvotes, überprüfen Sie immer die letzten Antworten, da sie höchstwahrscheinlich die einfachsten und besten sind.
Killjoy
4

Wenn Sie auf einfache Weise Ihre Netzwerkkarte (oder ein anderes Gerät) aktivieren oder deaktivieren möchten, die die Systemsteuerung, den Geräte-Manager und andere Fenster insgesamt umgeht, können Sie dies mit einer Batch-Datei tun:

  1. Holen Sie sich eine Kopie des DevCon- Dienstprogramms von Microsoft

  2. Erstellen und speichern Sie die folgende Batchdatei (z. B. als ToggleNIC.bat)

    @echo aus
    if (% 1) == (+) muss aktiviert werden
    if (% 1) == (-) gehe zu deaktivieren
    goto: eof
    :: Ersetzen Sie die Geräte-ID (im Beispiel "VEN_1234 & DEV_5678") durch die Ihrer eigenen Netzwerkkarte. :: Sie finden es mit dem Befehl "devcon find PCI *" und suchen nach dem Namen Ihrer Netzwerkkarte.
    :: Wenn Sie Ihre Geräte-ID gefunden haben, geben Sie nur bis "DEV" ein. Dies sollte ausreichen, um das Gerät eindeutig zu identifizieren. :: Lassen Sie "SUBSYS" und spätere Teile des Strings weg, sonst funktioniert es möglicherweise nicht.
    :aktivieren devcon enable "PCI \ VEN_1234 & DEV_5678" goto: eof
    : deaktivieren devcon deaktiviere "PCI \ VEN_1234 & DEV_5678" goto: eof

  3. Erstellen Sie zwei Verknüpfungen zur Batchdatei (z. B. EnableNIC.lnkund DisableNIC.lnk), wobei eine das Zielfeld als C:\…\ToggleNIC.bat +und für die andere angibt C:\…\ToggleNIC.bat -(ersetzen Sie die natürlich durch den Pfad zur Batchdatei).

  4. Legen Sie im Dialogfeld " Eigenschaften " für jede Verknüpfung einen Hotkey fest - Ctrl+Alt+Shift+Num+und Ctrl+Alt+Shift+Num-scheinen gute, logische zu sein.

    • (Es gibt einen Grund Explorer einfache Verknüpfungen des Formulars zu verhindern versucht Ctrl+Key, Alt+Keyund Shift+Key;. , Weil diejenigen , die normalerweise in Programmen verwendet werden für die täglichen Aufgaben, so sie als Shell - Hotkeys würde kein Ende der Probleme verursachen Aber, wenn Sie wirklich brauchen eine ohne Alt, Sie können die .lnkDatei manuell hacken oder einfacher, verwenden Sie einfach ein Makro- / Hotkey-Programm, um eine Aufgabe zum Ausführen der Batch-Dateien mit einem beliebigen Hotkey zu erstellen.)

  5. Alternativ können Sie die Batch - Datei irgendwo in Ihrem PATH setzen könnten, dann können Sie einfach Umschalten der NIC über das Start - Menü oder Ausführen - Dialog; zB Win+R,togglenic +


Sie können es auch so gestalten, dass die Batch-Datei die Netzwerkkarte buchstäblich umschaltet (aktivieren Sie sie, wenn sie derzeit deaktiviert ist, oder deaktivieren Sie sie, wenn sie derzeit aktiviert ist). Dies ist jedoch etwas aufwändiger und wahrscheinlich im Allgemeinen nicht erforderlich.

Synetech
quelle
Hier gibt es viel, aber ich werde es ausdrucken und überprüfen, um zu sehen, ob ich das alles kann. Wenn es Ihnen nichts ausmacht, beantworten Sie mir bitte eine Frage. Wie zeige ich mit Autohotkey einen Befehl, der einen Doppelklick anzeigt? Ich habe es geschafft, alles zu tun, was ich brauche, und ich könnte es bei Bedarf manuell doppelklicken, aber wenn es eine Möglichkeit gibt, das Skript damit zu beenden, wäre es das i-Tüpfelchen. Danke
Carlos
Ich kann nicht sagen, was Sie fragen. Sie haben ein AHK-Skript, das das Fenster " Netzwerkverbindungen" öffnet und den Tastendruck emuliert, um zur Netzwerkkarte zu navigieren und diese umzuschalten. Was ist der Doppelklick für / auf? Was meinst du mit "Befehl anzeigen"?
Synetech
@ Carlos Hat mein Skript nicht funktioniert? Wenn das Element, auf das Sie doppelklicken möchten, den Fokus hat (dh blau hervorgehoben oder mit einem gepunkteten Feld versehen), können Sie senden {Enter} . Andernfalls können Sie mit dem Befehl Klicken einen Mausklick an einer bestimmten Stelle simulieren.
iglvzx
Ihr Skript hat gut funktioniert. Ich arbeite an einem anderen Skript mit einigen der Befehle, die Sie für das vorherige Problem verwendet haben, und ich habe es zum Laufen gebracht. Ich möchte das Skript nur mit einem Doppelklick beenden, um das Öffnen eines Fensters zu starten, das ich derzeit manuell ausführe. Ich werde Ihren Vorschlag zur Verwendung von Senden, {Enter} versuchen und prüfen, ob dies funktioniert. Wenn nicht, versuche ich Send {click}.
Carlos