Spisu treści:

VBScript Praca z zamontowanymi dyskami: 6 kroków
VBScript Praca z zamontowanymi dyskami: 6 kroków

Wideo: VBScript Praca z zamontowanymi dyskami: 6 kroków

Wideo: VBScript Praca z zamontowanymi dyskami: 6 kroków
Wideo: JAK PODKRĘCIĆ PROCESOR JEDNYM KLIKNIĘCIEM? 😍 Podkręcanie CPU RYZEN w Ryzen Master 2024, Listopad
Anonim
VBScript działający z zamontowanymi dyskami
VBScript działający z zamontowanymi dyskami
VBScript działający z zamontowanymi dyskami
VBScript działający z zamontowanymi dyskami

Ta instrukcja jest na żądanie. Wielu z was może rozpoznać to z poprzedniej instrukcji, którą zrobiłem, która była https://www.instructables.com/id/Intro_to_VB_Script_a_beginners_guide/. Cóż, w tym jednym techwiz24 zapytał mnie, czy możesz użyć tego, aby odłączyć dysk sieciowy, wyświetlić obraz, a następnie poprosić o ponowne podłączenie dysku sieciowego? a przez dysk sieciowy mam na myśli zewnętrzny dysk twardy. Kiedy ponownie się połączy, potrzebuję go również do nazwania zewnętrznego dysku twardego, np. HDD1e. Mogę uzyskać wszystko oprócz poleceń CMD. Myślę, że możesz użyć diskpart, ale nie jestem pewien, Cóż, powiedziałem mu, że będę nad tym pracował i utworzył nowy instruktaż, jeśli to rozgryzę. Cóż, rozgryzłem to. Więc oto jest. Jeśli nie przeczytałeś mojej poprzedniej instrukcji, możesz ją znaleźć tutaj. https://www.instructables.com/id/Intro_to_VB_Script_a_beginners_guide/ Sugeruję przeczytanie tego przed przeczytaniem tego, jeśli jeszcze go nie czytałeś, ponieważ większość rzeczy będzie taka sama i nie odzyskam podstaw. A ponieważ lemonie skarżyła się w jednej z moich innych instrukcji, że „Chcąc wielokrotnie wyświetlać tapety, wygląda to raczej źle. Użycie ALT-Print Screen lepiej wyświetlałoby okna dialogowe”. Zdecydowałem, że nie będę umieszczał żadnych zdjęć, które faktycznie miałyby coś wspólnego z instruktażem, ponieważ instruktaż i tak nie jest rzeczą wizualną, a zdjęcia nie zaszkodzą im ani nie pomogą, więc po co poświęcać czas, aby tak po prostu zrobić zrzut ekranu ktoś może narzekać, że nie zakryłem ich poprawnie. Więc w tym przypadku każdy wybór będzie tapetą w tle, którą lubię i przykręć, jeśli wygląda źle, czy nie !!!

Krok 1: Badania

Badania
Badania
Badania
Badania

Pierwszą rzeczą, którą musimy zrobić, to znaleźć identyfikator GUID dysku twardego, który chcemy usunąć. GUID jest globalnie unikalnym identyfikatorem. Pozwala to komputerowi znaleźć określony dysk twardy bez względu na przypisaną do niego literę dysku. Prostym sposobem na to jest wywołanie okna CMD i wpisanie „MOUNTVOL”

Spowoduje to wyświetlenie strony pomocy dla Mountvol. Jeśli spojrzysz na dolną część listy, powinna ona pokazać wszystkie dostępne dyski twarde, ich litery dysków i ścieżki. Robiąc to na moim, zdobyłem następujące informacje: Tworzy, usuwa lub wyświetla punkt montowania woluminu. MOUNTVOL [dysk:]ścieżka NazwaWoluminu MOUNTVOL [dysk:]ścieżka /D MOUNTVOL [dysk:]ścieżka /L ścieżka Określa istniejący katalog NTFS, w którym będzie znajdować się punkt podłączenia. VolumeName Określa nazwę woluminu będącego celem punktu podłączenia. /D Usuwa punkt montowania woluminu z określonego katalogu. /L Wyświetla nazwę zamontowanego woluminu dla określonego katalogu. Możliwe wartości VolumeName wraz z bieżącymi punktami montowania to: \?\Volume{6ad2db35-4ab2-11de-964e-806d6172696f}\ C:\ \?\Volume{6ad2db33-4ab2-11de-964e-806d6172696f}\ D: / \?\Tom{6ad2db34-4ab2-11de-964e-806d6172696f}\ E:\ \?\Tom{b76a1f58-662f-11de-8a61-001111cb3c76}\ F:\ \?\Tom{6ad2db32-4ab2 -11de-964e-806d6172696f}\ A:\ \?\Volume{c0ea045c-56fe-11de-8a5a-001111cb3c76}\ G:\ _ Teraz, jeśli spojrzysz na dolną część listy, zobaczysz garść żarłoków, które zaczyna się od \?\volume i kończy się literą dysku. To jest to, czego potrzebujemy! Ok, więc podzielmy to, co mamy tutaj: Mamy objętość reprezentowaną przez \?\volume, następnie mamy nawias klamrowy, a następnie kilka cyfr, liter i myślników. Litery cyfr i myślniki są w rzeczywistości identyfikatorem GUID danego dysku, a następnie mamy kolejny nawias klamrowy, a następnie ukośnik odwrotny i literę dysku. Więc to powinno być łatwe do naśladowania. Więc w moim komputerze mam \?\Volume{6ad2db35-4ab2-11de-964e-806d5172696f}\ C:\ to jest mój główny dysk twardy do komputera \?\Volume{6ad2db33-4ab2-11de-964e-806d5172696f }\ D:\ Co to jest nagrywarka dvd \?\Volume{6ad2db34-4ab2-11de-964e-806d5172696f}\ E:\ Inna nagrywarka dvd \?\Volume{b76a1f58-662f-11de-8a61-001114cb3c76}\ F:\ Fałszywy dvd, dzięki któremu mogę zamontować pliki ISO utworzone przez mój program Daemon Mam \?\Volume{6ad2db32-4ab2-11de-954e-806d6172696f}\ A:\ Napęd dyskietek 3.5…. Tak, wiem, wiem, ale niestety nadal używam ich od czasu do czasu. \?\Volume{c0ea045c-56fe-11de-8a5a-001111cb3c76}\ G:\ Ten tutaj jest napędem, o którym mowa, który chcę usunąć W tym przypadku jest to w rzeczywistości napęd skokowy o wielkości 128 megabajtów, którego użyłem do testowania. W ten sposób, jeśli się zawaliłem, nie straciłem dysku twardego ani czegoś takiego.

Krok 2: Korzystanie z Mountvol

Korzystanie z Mountvol
Korzystanie z Mountvol
Korzystanie z Mountvol
Korzystanie z Mountvol

Ok, teraz, gdy mamy identyfikator GUID, możemy go użyć do zamontowania i odmontowania dysku, o którym mowa. Teraz, zanim przejdziemy do pisania skryptu, chcemy się upewnić, że działa i jest poprawnym dyskiem. Dysk g jest dyskiem, z którym pracuję, więc mój powie g:\ jednak musisz wpisać literę dysku, z którym się pracujesz. to samo z GUID, ponieważ jest unikalny dla każdego dysku, a twój NIE będzie taki sam jak mój. Zasadniczo użyjemy przełącznika usuwania "/d", aby usunąć punkt montowania, a następnie użyjemy polecenia montowania, aby go ponownie zamontować, używając guid jako odniesienie do niezamontowanego dysku. Więc wywołaj monit cmd, uruchamiając i wpisując cmdat, wpisz: mountvol g:\ /dnow, gdy wpiszemy mountvol w monicie, wszystko jest takie samo, z wyjątkiem tego, że jest napisane: \?\ Objętość{c0ea045c-56fe-11de-8a5a-001111cb3c76}\ *** BRAK PUNKTÓW MONTAŻOWYCH ***zamiast \?\Wolumen{c0ea045c-56fe-11de-8a5a-001111cb3c76}\ G:\Dobrze to znaczy my usunęliśmy ten, który chcieliśmy. Teraz musimy go ponownie zamontować Wpisz to w wierszu polecenia:mountvol g: \?\Volume{c0ea045c-56fe-11de-8a5a-001111cb3c76}\a następnie wpisz mountvol jeszcze raz i wszystko powinno wrócić do poprzedniego stanu Kontekst ponownego włączenia dysku jest następujący: słowo mountvol, po którym następuje spacja, następnie litera dysku i dwukropek, po których następuje spacja, a następnie ukośnik odwrotny ukośnik odwrotny znak zapytania ukośnik odwrotny ukośnik odwrotny, następnie słowo wolumin, następnie otwarty nawias klamrowy, następnie identyfikator GUID, a następnie zamknięcie nawias klamrowy, a następnie ukośnik odwrotny

Krok 3: Praca z etykietami

Praca z etykietami
Praca z etykietami
Praca z etykietami
Praca z etykietami

Teraz częścią tego, o co pytał mnie techwiz24, było ponowne połączenie, potrzebuję go również do nazwania zewnętrznego dysku twardego, takiego jak HDD1e.

Aby to zrobić, po prostu używamy polecenia label. Jest to całkiem proste Po prostu wywołaj okno poleceń takie samo jak ostatnim razem i wpisz: g: To zmieni twój katalog na g:> Następnie wpisz vol i nie bierz etykiety woluminu Następnie po prostu wpisz label i jakkolwiek chcesz, żeby się nazywał, więc jeśli chcę nazwać mój dysk twardy bobby, wpiszę: label bobby Następnie wpisz ponownie vol i pokaże się nowa nazwa woluminu to bobby Teraz to działa tylko wtedy, gdy pracujesz w katalogu woluminu, który chcesz zmienić, jednak kiedy tworzymy nasz skrypt, nie chcemy zmieniać katalogu, a następnie zmieniamy wolumin, więc po prostu wpisujemy: label g: bobby Mówiłem ci, że to mało proste.

Krok 4: Dodawanie tego, czego się nauczyliśmy do skryptu

Dodawanie tego, czego nauczyliśmy się do skryptu
Dodawanie tego, czego nauczyliśmy się do skryptu
Dodawanie tego, czego nauczyliśmy się do skryptu
Dodawanie tego, czego nauczyliśmy się do skryptu

Ok, więc teraz po prostu tworzymy nasz skrypt tak, jak robiliśmy wcześniej, ale zamiast używać poleceń ipconfig, będziemy teraz używać poleceń mountvol. Oto kod do wyłączania dysku:set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "mountvol g:\ /d{enter}"_Powinieneś zrozumieć to wszystko do tej pory z naszych małych testów. Oto kod otwierający obrazek tak, jak chciał i zamykający pierwsze okno wiersza polecenia: wscript.sleep 2000shellobj.sendkeys "c:\3.jpg{enter}exit{enter}"_Jak widać, możesz dodać wiele poleceń do jednej linii, o ile okno jest nadal otwarte. Poczeka na wykonanie ostatniego polecenia przed uruchomieniem następnego. Oto kod wyskakujących okienek, dzięki czemu skrypt będzie działał do momentu ponownego włączenia napędu:Dim MyVarmyvar=2while myvar=2MyVar = MsgBox ("Włącz dysk z powrotem on", 65, "Włącz ponownie dysk")wendmsgbox("Teraz ponownie włącz dysk twardy!!!")_Zauważ, że ustawiając zmienną Myvar = na 2, która jest wartością przycisku anulowania w oknie komunikatu będziemy wykonywać ciągłą pętlę aż do naciśnięcia przycisku OK. To zmusza nas do kliknięcia tak, aby zakończyć skrypt. Dopiero po wciśnięciu yes wartość myval zmienia się na 1 i pozwala na przerwanie pętli, dlatego kontynuuje działanie skryptu i wyświetla okno komunikatu z informacją, że napęd zostanie ponownie włączony. Teraz, jeśli pamiętasz z poprzedniego, nie wykona następnego polecenia, dopóki ostatnie polecenie nie zostanie zakończone, więc dopóki nie zostanie naciśnięty przycisk ok w oknie komunikatu, nie zostanie podjęta żadna akcja. Tak, moglibyśmy po prostu użyć okna komunikatu, aby ponownie włączyć dysk, ale jeśli nie chcesz go jeszcze włączyć, ale przypadkowo kliknij ok, nie ma zabezpieczenia. W polu tak/nie nie masz innego wyboru, jak tylko kliknąć tak. Moglibyśmy pozbyć się dodatkowego okna wiadomości, ale lubię mieć potwierdzenie, że akcja została podjęta. Teraz dochodzimy do miejsca, w którym odbywa się ponowne montowanie, etykietowanie i czyszczenie. Można by pomyśleć, że to jest po prostu proste, ale tak nie jest. Jeśli zauważysz, że za każdym razem, gdy chcemy umieścić klawisz Enter lub Tab w linii sendkeys, po prostu wpisujemy {ENTER}. Powodem tego jest to, że widzi { i } jako znaki specjalne. Dlatego jeśli użyjemy nawiasów, tak jak są one wydrukowane w przewodniku {c0ea045c-56fe-11de-8a5a-001111cb3c76}, polecenie sendkeys zwykle naciśnie przycisk c0ea045c-56fe-11de-8a5a-001111cb3c76. Ponieważ nie ma takiego przycisku, nasz skrypt uległby awarii, a następnie nie zostałby dla nas ponownie zamontowany dysk. Więc jak to obejść? Jak na ironię, odpowiedź jest sama w nawiasach. Ponieważ wszystko, co znajduje się w nawiasach klamrowych otwierających i zamykających, będzie zasadniczo wysyłane jako naciśnięty klawisz, po prostu umieszczamy żądany nawias w nawiasach klamrowych otwierających i zamykających. Zatem otwarcie to {{}, a zamknięcie to {}}Więc teraz koniec naszego kodu wyglądałby tak:shellobj.run "cmd"wscript.sleep 200shellobj.sendkeys "mountvol g: \?\Volume{ {}c0ea045c-56fe-11de-8a5a-001111cb3c76{}}\{enter}etykieta g: HDD1e{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}"

Krok 5: Ukończony skrypt

Ukończony skrypt
Ukończony skrypt
Ukończony skrypt
Ukończony skrypt

Oto gotowy skrypt bez przerw, który możesz po prostu wsunąć do swojego skryptu i skończyć z nim. Musisz przekierować linię, która odwołuje się do obrazu do obrazu, który chcesz umieścić w wybranym katalogu, ale pamiętaj, aby nie używać katalogu na usuwanym woluminie, ponieważ się zawiesi, ponieważ nie znajdzie go w katalogu. Pamiętaj też, że musisz zmienić litery dysków i identyfikatory GUID na swoje rzeczywiste, ponieważ odzwierciedlają one moje i mogą spowodować zepsucie systemu. Poszukaj wierszy Rem przed wierszem, który chcesz zmienić i powinieneś być w porządku:set shellobj = CreateObject("WScript. Shell")shellobj.run "cmd"wscript.sleep 200rem zmień następujący wiersz, aby odzwierciedlić literę dysku twojego driveshellobj.sendkeys "mountvol g:\ /d{enter}"wscript.sleep 2000rem zmień następującą linię, aby odzwierciedlić rzeczywistą nazwę i katalog obrazu, który używaszshellobj.sendkeys "c:\3.jpg{enter}exit{enter} "Dim MyVarmyvar=2while myvar=2MyVar = MsgBox ("Włącz ponownie dysk", 65, "Włącz ponownie dysk")wendmsgbox("Teraz ponownie włączymy dysk twardy!!!")shellobj.run "cmd"wscript.sleep 200rem zmień identyfikator GUID na rzeczywisty identyfikator GUID, a litery dysków (obie) na rzeczywistą literę dysku rem i etykietę na dowolną etykietę, którą chcesz, aby dysk miał etykietę shellobj.sendkeys "mountvol g: \?\Volume {{}c0ea045c-56fe-11de-8a5a-001111cb3c76{}}\{enter}etykieta g: HDD1e{enter}taskkill /F /IM rundll32.exe{enter}exit{enter}"

Krok 6: Brak kroków, naprawdę tylko komentarz

Żadnych kroków naprawdę tylko komentarz
Żadnych kroków naprawdę tylko komentarz

Cóż, mam nadzieję, że ci pomogło…. Jeśli coś nie jest wystarczająco dobrze wyjaśnione, daj mi znać, a postaram się wyjaśnić lepiej. I mam nadzieję, że wszystkim spodobały się tapety. Nie, nie zrobiłem ich…. to wszystko, co znalazłem w sieci.

UWAGA:: Jeśli ktoś ma jakiekolwiek skargi dotyczące moich instrukcji, prześlij je na adres [email protected]. Mam na myśli poważnie, czy naprawdę myślisz, że obchodzi mnie to, co myślisz? Jeśli nie chcesz się czegoś nauczyć, to nie, jeśli to zrobisz, to zrób to, ale nie bądź palantem i narzekaj, ponieważ nieistotne zdjęcia nie są poprawnie sformatowane lub cokolwiek, szczerze mówiąc, nie obchodzi mnie to!!!

Zalecana: