Włącz / wyłącz interfejs bezprzewodowy w pliku nietoperza

17

Czy istnieje sposób włączenia / wyłączenia interfejsu sieci bezprzewodowej za pomocą wiersza poleceń (aby umieścić go w pliku nietoperza)?

Kiedy jestem w biurze, korzystam z połączenia przewodowego, ale system Windows wciąż od czasu do czasu napotyka na mnie błąd w związku z brakiem połączenia bezprzewodowego (mimo że wyłączyłem opcję powiadamiania mnie, gdy nie ma połączenia). Domyślam się, że jedynym sposobem na powstrzymanie mnie przed wkurzaniem jest wyłączenie interfejsu, ale wolałbym nie wchodzić w ustawienia sieciowe za każdym razem, gdy muszę to zrobić.

Chciałbym skonfigurować plik nietoperza lub skrót, którego mogę użyć do włączenia / wyłączenia połączenia bezprzewodowego (najlepiej takiego, który przełącza bieżący stan), a następnie po prostu skonfiguruję do tego skrót klawiaturowy. Po prostu nie mam pojęcia, jak to zrobić z wiersza polecenia.

Herms
źródło
Dotyczy to tylko włączania / wyłączania na poziomie sterownika urządzenia, a nie włączania / wyłączania samego urządzenia. Nie chcę włączania / wyłączania, ale włączania / wyłączania. W szczególności moje domyślne Wi-Fi jest wyłączone, ale kiedy przychodzę do niektórych witryn klientów, aby wykonać prace serwisowe, potrzebuję pliku skryptu .bat lub .wsh, który włącza Wi-Fi i łączy się z odpowiednim profilem dla tego klienta i chcę dodatkowo napisz to, aby połączyć się w drukarkach sieciowych, abym mógł wydrukować swoje raporty itp.
@KronoS: Śmiało i po prostu zaznacz, że moderator powinien zwrócić uwagę na każdą „odpowiedź”, która musi być komentarzem w przyszłości. Mamy narzędzie do konwersji, aby zrobić to poprawnie. Dzięki.
Troggy
@OldManRiver: Wygląda na to, że masz dodatkowe pytanie. Przeszukałbym superużytkownika, aby zobaczyć, czy możesz znaleźć coś, co odpowiada na pytanie, a jeśli nie, śmiało i zadaj nowe pytanie.
Troggy
@Troggy byłem po te instrukcje, jak na @IvoFlipse. Jednak zatrzyma przyszłą „konwersję”. :)
James Mertz
@KronoS: Dzięki za odniesienie. Jeśli jest to „odpowiedź”, która musi być częścią pytania PO, przejdź do edycji pytania i dodaj do niego część „odpowiedź”, a następnie oznacz „odpowiedź” do usunięcia. W przypadku „odpowiedzi”, które muszą stać się komentarzami, zaznacz je. Doceniamy pomoc, ale w ten sposób możemy zachować całą zawartość związaną z właściwymi użytkownikami.
Troggy

Odpowiedzi:

9

Chciałbym skonfigurować plik nietoperza lub skrót, którego mogę użyć do włączenia / wyłączenia łączności bezprzewodowej

Użyj Microsoft DevCon ...

Narzędzie DevCon to narzędzie wiersza polecenia, które działa jako alternatywa dla Menedżera urządzeń. Za pomocą DevCon można włączać, wyłączać, ponownie uruchamiać, aktualizować, usuwać i sprawdzać poszczególne urządzenia lub grupy urządzeń. DevCon zapewnia również informacje, które są istotne dla programisty sterownika i nie są dostępne w Menedżerze urządzeń.

A oto samouczek dla Ciebie:

Włącz / wyłącz kartę bezprzewodową z wiersza poleceń

najlepiej jeden, który przełącza bieżący stan

Potrzebne będą dwa pliki wsadowe, jeden dla Wi-Fi wyłączony i jeden dla Wi-Fi włączony.

Powiedziawszy to, zakładam, że używasz laptopa. Czy na pewno Twój laptop nie pozwala na włączanie / wyłączanie sieci WLAN za pomocą kombinacji klawiszy Fn lub przełącznika fizycznego? Czy możesz opublikować markę i model?


źródło
Laptop ma przełącznik, ale dotyczy tylko anten, a nie urządzenia. Tak więc system Windows nadal widzi urządzenie i skarży się, że nie jest podłączone, nawet jeśli nie widzi żadnych sieci.
Herms,
@Herms - tylko dla anteny? to bardzo nietypowe. możesz także wyłączyć kontroler bezprzewodowy w menedżerze urządzeń, rozwinąć Adaptery sieciowe, kliknąć prawym przyciskiem myszy kontroler WLAN i wybrać wyłącz ... to jest dokładnie to, co DevCon zrobi z wiersza poleceń.
Tak, wiem, że mogę to przez to wyłączyć. Chcę tylko unikać tego przez cały czas. Plik nietoperza pozwala mi przypisać do niego skrót klawiaturowy. Wydaje mi się, że mam skrypt PowerShell, który działa jak przełącznik (nie mogłem tego pojąć, a potem przypomniałem sobie, że mam zainstalowany PowerShell)
Herms
W pewnym momencie może napisać o tym post na blogu, ale na razie oto skrypt PowerShell, który napisałem dla przełącznika: gist.github.com/294059
Herms
1
Napisz do mnie, jak skonfigurowałem wszystko: blog.aherrman.com/2010/02/…
Herms
11

Następujące prace na Win 7 z cmdmonitu z adminuprawnieniami:

Wyłączyć:

netsh interface set interface "Wireless Network Connection" Disable

Umożliwić:

netsh interface set interface "Wireless Network Connection" Enable

Aby uzyskać nazwy interfejsów:

C:\Users\nirmal>netsh interface show interface

Admin State    State          Type             Interface Name
-------------------------------------------------------------------------
Enabled        Connected      Dedicated        Wireless Network Connection
Disabled       Disconnected   Dedicated        Local Area Connection
Nirmal Patel
źródło
2

Zrobiłem plik wsadowy do przełączania między LAN i WLAN. Umożliwia połączenie LAN i wyłącza połączenie WLAN, jeśli WLAN jest aktywne i na odwrót.

Plik wsadowy został przetestowany w systemie Windows 7. Wywołaj go WLAN-LAN.bati uruchom jako podniesiony monit.

@Echo off

Echo De Netwerkinstellingen worden omgezet van WLan naar LAN of Vice Versa ! 
Echo Even Geduld svp  .................................................

net start dot3svc
netsh lan show interfaces >NUL

if errorlevel 1 goto LAN
if errorlevel 0 goto WLAN

:LAN

netsh interface set interface "Draadloze netwerkverbinding" disabled >NUL

sc start dot3svc >NUL
netsh interface set interface "LAN-verbinding" enabled >NUL

goto end

:WLAN

sc start dot3svc >NUL
netsh interface set interface "LAN-verbinding" disabled >NUL
sc stop dot3svc >NUL

netsh interface set interface "Draadloze netwerkverbinding" enabled >NUL

:end

Powinieneś zmienić nazwy interfejsów sieciowych, aby pasowały do ​​interfejsów sieciowych w twoim systemie. Więc zmień nazwy między cudzysłowami: „...”.

Ponadto, powinieneś ustawić przewodową usługę autokonfiguracji na automatyczną. Tekst w komentarzach można dowolnie zmieniać.

Dirk Jansen
źródło
1
Czy możesz wyjaśnić, czy coś w skrypcie musi zostać zmienione dla języków innych niż holenderski? A może lepiej przetłumaczyć komentarze i literały łańcuchowe na angielski?
sblair
@sblair wystarczy zmodyfikować ciąg w „”, należy zmienić Draadloze netwerkverbinding na nazwę interfejsu, np. połączenie bezprzewodowe ..
netawater
Czy to niewłaściwe dodanie „net start dot3svc”? powoduje to, że poziom błędu zawsze wynosi 0.
netawater
2

FYI ... w 64-bitowej wersji vista i Win7 wspomniana wyżej wersja „64bit” nie będzie działać. Musisz pobrać cały zestaw sterowników urządzenia z systemem Windows, a następnie wyodrębnić stąd plik devcon.exe: C:\WinDDK\7600.16385.1\tools\devcon\amd64\devcon.exe i wkleić go c:\Windows/system23 (wiem, wiem ... Mam również procesor Intel i3 i nadal musiałem używać tego „amd64”)

Zestaw WinDDK można znaleźć tutaj: http://www.microsoft.com/whdc/DevTools/WDK/WDKpkg.mspx Jest ogromny (620 MB). Plik devcon jest niewielki. : p

Uwaga: Łatwy sposób na znalezienie numeru sterownika urządzenia dla dowolnego urządzenia, wchodząc do menedżera urządzeń (z panelu sterowania), spójrz na właściwości i pod „szczegółami” wybierz „Identyfikatory sprzętu”. Będzie duża liczba, po prostu chcesz tę część: DEV _ ???? (wypełnij? 4 cyframi). Na przykład, jeśli to DEV_4315wstaw to w enable.bat: devcon enable„* DEV_4315”, i wstaw to w disable.bat: devcon disable„* DEV_4315”.

Upewnij się i dodaj poprzedzający go symbol wieloznaczny: * DEV _ ???? (zobacz 2 przykłady, które właśnie podałem). Musisz uruchomić je jako administrator. Do Twojej wiadomości ... jeśli masz wskaźnik sprzętowy, prawdopodobnie nie będzie go przełączać.

davea0511
źródło
1

użyj tego pliku nietoperza do przełączania wlan.

@Echo off set interface="Wireless Network Connection " ipconfig | find %interface% >NUL rem if errorlevel 0 goto LAN rem if errorlevel 1 goto WLAN if %errorlevel% EQU 0 goto LAN if %errorlevel% EQU 1 goto WLAN :LAN echo "LAN" netsh interface set interface %interface% disabled goto end :WLAN echo "WLAN" netsh interface set interface %interface% enabled :end

woda netto
źródło
Właśnie tego szukałem. Wielkie dzięki!
Hybrid SyntaX,
0

Inną możliwością jest skrypt Sikuli . Sikuli jest naprawdę fajny, ponieważ ma wizualne podejście do skryptów i powinien być w stanie łatwo osiągnąć to, czego potrzebujesz. Sprawdź wideo pod powyższym linkiem, aby zobaczyć, co mam na myśli. Sikuli działa na komputerach Mac, Windows i Linux.

Eight_Quarter_Bit
źródło
Zabawnie odkryłem, że dziś rano. Nie sądzę, żebym chciał użyć tego do pisania takich skryptów, ponieważ generalnie zajmuje to dużo więcej czasu.
Herms
0

Może to być możliwe przy użyciu wmicnarzędzia (chociaż nie jestem pewien, czy jest on wyposażony w system Windows Vista / 7 / itp.)

lub

(chociaż jest to zabawny sposób, aby to zrobić i może popsuć różne rzeczy, i może nie działać tak dobrze) użyj netshnarzędzia (również może nie być dostarczane z nowymi wersjami systemu Windows), aby nadać karcie sieciowej ręcznie przypisany adres IP, jeśli ma mieć przypisany automatycznie lub na odwrót.

Abbafei
źródło