Deaktivieren Sie die drahtlose Verbindung, wenn auf einem HP EliteBook eine Ethernet-Verbindung erkannt wird

118280
wrigley06

Mein Unternehmen hat vor kurzem damit begonnen, HP Elitebooks an Mitarbeiter auszugeben, und ersetzt die bisher verwendeten Lenovo ThinkPads.

Ich versuche einen Weg zu finden, um die drahtlose Verbindung zu deaktivieren, wenn erkannt wird, dass eine Ethernet-Verbindung hergestellt wurde.

Auf meinem ThinkPad war dies so einfach wie das Aufrufen von Access Connections, Erstellen eines neuen Standorts und Auswählen des Kästchens "Deaktivieren der WLAN-Verbindung, wenn eine LAN-Verbindung erkannt wird". Auf meinem EliteBook und in HPs Entsprechung (HP Connection Manager) ist dies jedoch nicht der Fall diese Option sehen.

Fehlt hier etwas?

7
Ich habe etwas geschrieben, das Ihnen helfen könnte. Ich arbeite in einem Szenario, in dem ein Skript nicht funktioniert und wir einen Dienst brauchten, der sich selbst einrichten würde und irgendwie funktionieren würde. Den Code finden Sie hier (https: / /github.com/sean-m/wifi-sitter) mit einem Installationspaket auf der Release-Seite. Viel Glück. sean_m vor 8 Jahren 0

6 Antworten auf die Frage

10
Moshe Katz

Wenn Sie bei der richtigen Verbindung alle Bedenken haben, sollte Windows theoretisch die Verbindung mit dem niedrigsten Metrikwert vorziehen . In den meisten Fällen handelt es sich dabei um Ihre Kabelverbindung. Wenn Ihre drahtgebundene Verbindung jedoch 100 MBit und die drahtlose Verbindung 54 MBit beträgt, erhalten sie denselben Metrikwert.

Um die Kabelverbindung zu einer höheren Priorität zu erzwingen, können Sie die folgenden Schritte ausführen ( Quelle und ähnliche Frage ) (Sie haben nicht gesagt, aber ich gehe davon aus, dass Sie Windows 7 oder 8 haben):

  1. Öffnen Sie das "Netzwerk- und Freigabecenter". Am einfachsten klicken Sie mit der rechten Maustaste auf das Symbol "Netzwerk" neben der Uhr. Es sieht entweder aus wie die Balken für die Wireless-Signalstärke oder wie ein Computer mit einem Kabel daneben.
  2. Klicken Sie in der linken Spalte auf "Adaptereinstellungen ändern".
  3. Klicken Sie in der Menüleiste auf "Erweitert" und dann auf "Erweiterte Einstellungen ...". Wenn Sie die Menüleiste nicht sehen, drücken Sie die ALTTaste auf Ihrer Tastatur, um sie anzuzeigen.
  4. Klicken Sie in der Liste der verfügbaren Netzwerkadapter auf Ihren Kabeladapter, und verschieben Sie ihn mit den Pfeilen an den Anfang der Liste.

Wenn Sie den Adapter selbst ausschalten möchten, um den Akku zu schonen, stehen Ihnen mehrere Optionen zur Verfügung ( Quelle ):

  • Sie können "Geplante Aufgaben" einrichten, um das WLAN ein- und auszuschalten, wenn die Kabelverbindung erkannt wird.

    1. Suchen Sie nach den Ereignis-IDs, um Ihre Kabelverbindung zu trennen und erneut zu verbinden. Schließen Sie dazu das Kabel mehrmals an und ziehen Sie es erneut aus der Steckdose. Öffnen Sie anschließend die "Ereignisanzeige" (Sie können ihren Namen in das Suchfeld Startmenü eingeben) und suchen Sie nach den generierten Ereignissen im Protokoll "System". Notieren Sie sich die Werte für "Quelle" und "Ereignis-ID" für diese Ereignisse.
    2. Öffnen Sie "Taskplaner" (erneut können Sie den Namen in das Suchfeld Startmenü eingeben) und "Basisaufgabe erstellen" auswählen.
    3. Folgen Sie den Anweisungen zur Aufgabenerstellung und fügen Sie gegebenenfalls die folgenden Werte ein:
      • Name - "WLAN einschalten"
      • Wann soll die Aufgabe beginnen? - "Wenn ein bestimmtes Ereignis protokolliert wird"
      • Protokoll - "System"
      • Quelle - Quelle, die Sie in Schritt 1 gefunden haben
      • EventID - Ereignis-ID, die Sie oben für das Entfernen von Ethernet gefunden haben .
      • Programm / Skript -C:\Windows\System32\Netsh.exe
      • Argumente hinzufügen - interface set interface "Wireless Network Connection" enable(wobei "Drahtlose Netzwerkverbindung" der Name Ihres WLAN-Adapters ist, mit den Anführungszeichen )
    4. Erstellen Sie eine weitere Basisaufgabe mit den folgenden Optionen:
      • Name - "WLAN ausschalten"
      • Wann soll die Aufgabe beginnen? - "Wenn ein bestimmtes Ereignis protokolliert wird"
      • Protokoll - "System"
      • Quelle - Quelle, die Sie in Schritt 1 gefunden haben
      • EventID - Ereignis-ID, die Sie oben für das Einstecken von Ethernet gefunden haben .
      • Programm / Skript -C:\Windows\System32\Netsh.exe
      • Argumente hinzufügen - interface set interface "Wireless Network Connection" disable(wobei "Drahtlose Netzwerkverbindung" der Name Ihres WLAN-Adapters ist, mit den Anführungszeichen )
    5. Möglicherweise müssen Sie die Berechtigungen ändern, die die Aufgaben ausführen müssen. Andernfalls sagt netsh "Der angeforderte Vorgang erfordert eine Erhöhung (als Administrator ausführen)" und beendet den Vorgang. Führen Sie diese Schritte für jede der soeben erstellten Aufgaben aus.
      • Klicken Sie mit der rechten Maustaste auf die Aufgabe und wählen Sie "Eigenschaften".
      • Klicken Sie auf "Benutzer oder Gruppe ändern ...", geben Sie "SYSTEM" in das Feld ein und klicken Sie auf OK.
      • Aktivieren Sie "Mit höchsten Berechtigungen ausführen".
      • OK klicken.

    Dies funktioniert jedoch nur, wenn Ihr Laptop Ereignisse generiert, wenn das Netzwerk angeschlossen und entfernt wird. Dies hängt von den jeweiligen Chips und Treibern ab. Die Verwendung nur integrierter Windows-Funktionen ist zwar meine ideale Methode, hier sind jedoch zwei weitere Optionen, falls Sie diese nicht verwenden können.

  • IntelliAdmin hat einen Blogbeitrag, der ein VBScript beschreibt, das genau das tut, was Sie brauchen. Sie können es über den Link am Ende dieses Beitrags herunterladen. Laden Sie "netswitch.dat" herunter und benennen Sie es in "netswitch.vbs" um. Fügen Sie in Ihrem Startmenü eine Verknüpfung ein

    cscript LOCATION_OF_netswitch.vbs "WIRED NAME" "WIRELESS NAME".

  • Einige Benutzer haben ThinkVantage Access Connections auf Computern von Drittanbietern installiert. Ich füge keinen Link zum Herunterladen hinzu, da eine Verwendung auf diese Weise gegen die EULA von Lenovo verstoßen könnte. Wenn Sie diese Lizenz lesen und entscheiden, dass Sie der Meinung sind, dass Sie kompatibel sind, finden Sie den Download-Link oben in meinem Quellcode.

Hey Moshe, danke für die hervorragende Resonanz, die ich wirklich schätze. Ich möchte den Adapter drehen, und ich habe versucht, Aufgaben zu erstellen, um dies zu erreichen. Wenn das Netsh-Programm direkt nach dem Erkennen oder Trennen einer LAN-Verbindung ausgeführt wird, passiert nichts, daher bin ich mir nicht wirklich sicher, was ich von hier aus tun soll. wrigley06 vor 10 Jahren 0
@ wrigley06 Sind Sie sicher, dass Sie den Namen der WLAN-Karte richtig angegeben haben? Ich habe viele gesehen, die es "Wireless Network Connection" nennen, aber manche sagen nur "Wi-Fi" und andere sind völlig verschieden. Sie können den Namen überprüfen, indem Sie eine Eingabeaufforderung (cmd.exe) öffnen und "netsh interface show interface" eingeben. Moshe Katz vor 10 Jahren 0
@ wrigley06 Möglicherweise müssen Sie auch ändern, unter welchem ​​Benutzer die Aufgabe ausgeführt wird. Standardmäßig wird die Aufgabe wahrscheinlich als Sie ausgeführt, aber nur ein Administrator kann Netzwerkschnittstellen aktivieren / deaktivieren. Ich habe die Antwort mit Details aktualisiert - siehe Schritt 5. Moshe Katz vor 10 Jahren 0
7
Indrek

HP EliteBook-Laptops verfügen über eine integrierte Funktion zum Deaktivieren der WLAN-Verbindung, wenn ein Ethernet-Kabel angeschlossen ist. Sie wird als "LAN / WLAN-Switching" bezeichnet und kann im BIOS / UEFI-Setup umgeschaltet werden.

Die genauen Schritte, die Sie ausführen müssen, können je nach EliteBook-Modell variieren. Auf meinem 6930p-Gerät können jedoch folgende Schritte ausgeführt werden:

  1. Drücken Sie F10während des Startvorgangs, um zum BIOS / UEFI-Setup zu gelangen.
  2. Gehen Sie zu Systemkonfiguration → Integrierte Geräteoptionen
  3. Suchen Sie nach der Option "LAN / WLAN Switching" und wählen Sie das Optionsfeld "Enabled" aus
  4. Speichern Sie die Änderungen und verlassen Sie das BIOS / UEFI-Setup, um einen Neustart durchzuführen

Das sollte den Trick tun. Wenn Sie ein anderes Modell haben (insbesondere wenn es von einer anderen Generation stammt), konsultieren Sie die Bedienungsanleitung des Modells.

Wenn Sie die ProtectTools-Software von HP verwenden und das BIOS-Konfigurations-Add-On installiert haben, sollten Sie diese Einstellung auch von Windows aus ändern können. Sie müssen jedoch neu starten, damit sie wirksam wird.

hat ein dell e5570 das gleiche? roel vor 7 Jahren 0
@ rolle Sorry, keine Ahnung. Wenn Sie diesen Laptop haben, überprüfen Sie die BIOS- / UEFI-Einstellungen. Alternativ konsultieren Sie das Handbuch. Indrek vor 7 Jahren 0
2
Johan Carlsson

Alternative PowerShell-Lösung: https://gallery.technet.microsoft.com/scriptcenter/WLAN-Manager-f438a4d7

WLAN Manager wird als geplante Aufgabe ausgeführt und deaktiviert Ihre WLAN-Karte automatisch, wenn eine LAN-Verbindung überprüft wird. Die WLAN-Karte wird wieder aktiviert, sobald die LAN-Verbindung unterbrochen wird. Dadurch wird sichergestellt, dass Sie über die schnellste verfügbare Verbindung verfügen und Netzwerkbrücken vermieden werden.

Originalcode von "Substanz" bei Microsoft Technet. Zip-Datei

################  # WLAN Manager #  ################  #Version: 2015-03-03.2  #Author: johan.carlsson@innovatum.se   <#   .SYNOPSIS  Disables the WLAN NIC when LAN NIC network connection is verified.  Enables WLAN NIC when LAN NIC network connection is lost.   .DESCRIPTION  WLAN Manager runs as a scheduled task and will automatically disable your WLAN card when a LAN connection is verified.  The WLAN card will be re-enabled once the LAN connection is lost. This ensures you'll always have the fastest available connection and stops network bridging.   .EXAMPLE  .\WLANManager.ps1 -Install:$true  Installs WLAN Manager.   .EXAMPLE  .\WLANManager.ps1 -Remove:$true  Removes WLAN Manager.   .EXAMPLE  .\WLANManager.ps1  Verify Installaton > Install if missing > Run Interactively (first run only, hidden run via scheduled task run after that).   .EXAMPLE  .\WLANManager.ps1 -Interactive:$true  Runs WLAN Manager in an interactive window. Will not install anything. This mode is only for testing and watching what happens via console output.   .NOTES  None.   .LINK  https://support.innovatum.se   #>   [CmdletBinding()]  Param  (  [Parameter(Mandatory=$False,Position=1,HelpMessage="Installs WLAN Manager.")]  [switch]$Install,  [Parameter(Mandatory=$False,Position=2,HelpMessage="Removes WLAN Manager.")]  [switch]$Remove,  [Parameter(Mandatory=$False,Position=3,HelpMessage="Runs WLAN Manager interactively, doesn't install anything.")]  [switch]$Interactive  )   #########################################  # Custom Variables for Your Environment #  #########################################  #Destination Path to where you want to store files for local install of WLANManager  $CustomDestinationPath = "$env:ProgramFiles\WLANManager"    <#  D O N O T C H A N G E A N Y T H I N G B E L O W T H I S L I N E  #>    #################################  # Unload/Load PowerShell Module #  #################################   #Remove PowerShell Module  If ((Get-Module PSModule-WLANManager) -ne $null)  {  Remove-Module PSModule-WLANManager -Verbose  }   #Import PowerShell Module  $strBasePath = Split-Path -Path $MyInvocation.InvocationName  Import-Module "$strBasePath\PSModule-WLANManager.psm1" -Verbose    #############################  # Install or Update Install #  #############################   If ($Remove -eq $true)  {  Remove-WLANManager -FilePath $CustomDestinationPath  return  }  ElseIf ((Test-Path -Path $strBasePath) -eq $True -and ($Interactive) -ne $true)  {  #Install  Install-WLANManager -SourcePath $strBasePath -DestinationPath $CustomDestinationPath  If ($Install -eq $true)  {  #≥Windows 8  If ($OSInfo.Caption -match "Windows 8")  {  Start-ScheduledTask -TaskName "WLAN Manager"  Exit  }  #<Windows 8  Else  {  Start-STask -TaskName "WLAN Manager" | Out-Null  Exit  }  }  }    ########  # Main #  ########   while ($true)  {  If ((Test-WiredConnection) -eq $true -and (Test-WirelessConnection) -eq $true)  {  Write-Host "Wired connection detected, disabling Wireless connection... " -NoNewline -ForegroundColor Yellow  #≥Windows 8  If ($OSInfo.Caption -match "Windows 8")  {  Disable-NetAdapter -InterfaceDescription *Wireless* -Confirm:$false  }  #<Windows 8  Else  {  Disable-WLANAdapter | Out-Null  }  Write-Host "Done" -ForegroundColor White -BackgroundColor Green  }   If ((Test-WiredConnection) -eq $false -and (Test-WirelessConnection) -eq $false)  {  Write-Host "Wired connection lost, enabling Wireless connection... " -NoNewline -ForegroundColor Yellow  #≥Windows 8  If ($OSInfo.Caption -match "Windows 8")  {  Enable-NetAdapter -InterfaceDescription *Wireless* -Confirm:$false  }  #<Windows 8  Else  {  Enable-WLANAdapter | Out-Null  }  #Wait for WLAN Adapter to initialize and obtain an IP-address  while ((Test-WiredConnection) -eq $false -and (Test-WirelessConnection) -eq $false)  {  sleep -Seconds 1  }  Write-Host "Done" -ForegroundColor White -BackgroundColor Green  }   Else  {  Write-Host "Sleeping..." -ForegroundColor Yellow  sleep -Seconds 1  }  }  
Hallo Johan, @tog hat die Antwort erweitert, um die Anforderungen zu erfüllen, da sie jetzt (wieder) gültig ist und wahrscheinlich gelöscht wird. Nur-Link-Antworten können ungültig werden, wenn sich die verknüpfte Seite ändert. Bitte werfen Sie einen Blick hier: [Warum und wie werden einige Antworten gelöscht?] (Http://superuser.com/help/deleted-answers) bummi vor 9 Jahren 0
Können Sie erklären, warum Sie die Bearbeitung rückgängig gemacht haben und die Antwort erweitern? bwDraco vor 9 Jahren 0
0
LT-

Mit Moshe Katz antwortete ich eine maßgeschneiderte Lösung (danke Moshe Katz!), Die für meine 100 Laptops gut funktioniert.

Speichern Sie den folgenden Text als Datei wifiswitch.bat unter C: \ windows \ system32. Stellen Sie sicher, dass die Schnittstellennamen auf dem Laptop mit den Skripts übereinstimmen:

 @echo off Title Wifi Lan Switcher  set a=0  :loop netsh interface show interface name="Local Area Connection" | find /i "disconnected" > NUL 2>&1 IF ERRORLEVEL 1 ( netsh interface show interface name="Wireless Network Connection" | find /i "disabled" > NUL 2>&1 IF ERRORLEVEL 1 ( netsh interface set interface name="Wireless Network Connection" disable > NUL 2>&1 set error=%errorlevel% ping -n 5 127.0.0.1 >nul ) )  netsh interface show interface name="Local Area Connection" | find /i "disconnected" > NUL 2>&1 IF NOT ERRORLEVEL 1 ( netsh interface show interface name="Wireless Network Connection" | find /i "enabled" > NUL 2>&1 IF ERRORLEVEL 1 ( netsh interface set interface name="Wireless Network Connection" enable > NUL 2>&1 set error=%errorlevel% ping -n 5 127.0.0.1 >nul ) )  set /a a+=1  echo. echo %a% ping -n 3 127.0.0.1 >nul if %a% equ 5 goto :eof goto :loop  :eof echo. echo. set a= exit /b %error% 

Jetzt müssen Sie eine Aufgabe unter den geplanten Aufgaben erstellen. Sie können den XML-Code für die Aufgabe in .xml speichern und anschließend in den Taskplaner eines Laptops importieren. Stellen Sie sicher, dass die Quelle auf der Registerkarte "Trigger" in die zu Ihrem Modell gehörende Quelle geändert wird :

 <?xml version="1.0" encoding="UTF-16"?> <Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task"> <RegistrationInfo> <Date>2014-07-07T09:36:51.4300545</Date> <Author>%username%</Author> </RegistrationInfo> <Triggers> <EventTrigger> <Enabled>true</Enabled> <Subscription>&lt;QueryList&gt;&lt;Query Id="0" Path="System"&gt;&lt;Select Path="System"&gt;*[System[Provider[@Name='e1cexpress']]]&lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;</Subscription> </EventTrigger> <BootTrigger> <Enabled>true</Enabled> <Delay>PT1M</Delay> </BootTrigger> <RegistrationTrigger> <Enabled>true</Enabled> </RegistrationTrigger> </Triggers> <Principals> <Principal id="Author"> <UserId>S-1-5-18</UserId> <RunLevel>HighestAvailable</RunLevel> </Principal> </Principals> <Settings> <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy> <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries> <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries> <AllowHardTerminate>true</AllowHardTerminate> <StartWhenAvailable>true</StartWhenAvailable> <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable> <IdleSettings> <StopOnIdleEnd>true</StopOnIdleEnd> <RestartOnIdle>false</RestartOnIdle> </IdleSettings> <AllowStartOnDemand>true</AllowStartOnDemand> <Enabled>true</Enabled> <Hidden>false</Hidden> <RunOnlyIfIdle>false</RunOnlyIfIdle> <WakeToRun>false</WakeToRun> <ExecutionTimeLimit>PT1H</ExecutionTimeLimit> <Priority>7</Priority> <RestartOnFailure> <Interval>PT1M</Interval> <Count>3</Count> </RestartOnFailure> </Settings> <Actions Context="Author"> <Exec> <Command>%windir%\System32\WifiSwitch.bat</Command> <WorkingDirectory>%windir%\system32</WorkingDirectory> </Exec> </Actions> </Task> 
0
David Whyte

Drücken Sie beim Booten die Taste F2, um in das Bios zu gelangen. Wechseln Sie zu Energieverwaltung. Wählen Sie Wireless Radio Control (WLAN-Steuerung) aus

Wenn aktiviert, erkennt diese Funktion die Verbindung des Systems zu einem Kabelnetzwerk und deaktiviert anschließend die ausgewählten Funkgeräte (WLAN und / oder WWAN). Nach dem Trennen des kabelgebundenen Netzwerks werden die ausgewählten drahtlosen Funkgeräte wieder aktiviert.

0
Brian Wekesa

Wenn Sie den Treiber für das Ethernet haben, dh ich verwende einen schnellen Ethernet-Controller für meinen Samsung-Laptop, dann in der Taskleiste ganz rechts:

  1. Klicken Sie auf das Ethernet-Symbol, das möglicherweise nur ein E ist, das normalerweise gelb ist
  2. Klicken Sie dann im Popup-Fenster auf Connection Manager
  3. dann Optionen
  4. Aktivieren Sie dann die Option, um das WLAN zu deaktivieren, wenn der Ethernet-Adapter verfügbar ist

Ergebnis: Wenn Sie Ihr Ethernet-Kabel anschließen, wird die drahtlose Verbindung deaktiviert, wobei der Ethernet-Verbindung Priorität eingeräumt wird.

Dies ist schlecht geschrieben, aber es ist eine korrekte Lösung in Windows 10 und kopiert keine vorhandenen Antworten. music2myear vor 6 Jahren 1