Centrum skryptów - Systemy operacyjne

Jak stworzyć skrót, który otwiera Internet Explorer z ukrytym paskiem adresu?

Udostępnij na: Facebook

Cześć Skrypciarze!

Witamy w rubryce TechNet, w której Skrypciarze z firmy Microsoft odpowiadają na częste pytania dotyczące używania skryptów w administracji systemu. Jeśli macie jakieś pytania z tej dziedziny, zachęcamy do wysłania e-maila na adres: scripter@microsoft.com. Nie możemy zagwarantować odpowiedzi na każde otrzymane pytanie, ale staramy się jak możemy.

Jak stworzyć skrót, który otwiera Internet Explorer z ukrytym paskiem adresu?

Hey, Scripting Guy! Question

Cześć Skrypciarze! Jak stworzyć skrót, który otwiera Internet Explorer z ukrytym paskiem adresu?

-- WA

Hey, Scripting Guy! Answer

Hej, WA. Wiecie, że za każdym razem, gdy pisarzowi science fiction zaczyna brakować pomysłów, to pisze opowiadanie w którym ktoś kładzie się spać, a rano okazuje się, że świat przez noc kompletnie się zmienił. Dlaczego? Ponieważ ktoś gdzieś skonstruował wehikuł czasu, cofnął się do przeszłości i zrobił coś, co zmieniło przyszłość. (Tak, tak, wiemy: wehikuły czasu zawsze mają nalepkę ostrzegającą przez robieniem czegokolwiek, co mogłoby zmienić przyszłość. Tylko nikt na nie nie zwraca uwagi).

Wygląda na to, że stało się tu coś bardzo podobnego. Gdy piszący tę rubrykę Skrypciarz kładł się wczoraj spać, wiedział że istnieje prosta i oczywista odpowiedź na to pytanie. W gruncie rzeczy był przekonany, że istnieje parametr startowy programu Internet Explorer, który da się wykorzystać w tym właśnie celu. I mimo to, gdy obudził się dzisiejszego poranka, odkrył że taki parametr startowy nie istnieje. Czy mógł się pomylić? To dość bezpodstawne oskarżenie, prawda? Znacznie bardziej prawdopodobne jest, że ktoś cofnął się w czasie i usunął parametr ukrywający pasek adresu z przeglądarki Internet Explorer. Katastrofa!

Nie bójcie się jednak; Skrypciarze nigdy nie pozwolą, by jakiś lekkomyślny podróżnik w czasie nie pozwolił im odpowiedzieć na pytanie. Wbrew przeciwnościom doszliśmy do kompromisowego rozwiązania, które wymaga dwóch składników: skryptu i skrótu go wywołującego.

Zacznijmy od skryptu:

Set objExplorer = CreateObject("InternetExplorer.Application")



strWebSite = Wscript.Arguments(0)



objExplorer.Navigate strWebSite   

objExplorer.AddressBar = 0

objExplorer.Visible = 1

Jak widzicie, nie ma tego za wiele. Zaczynamy od utworzenia egzemplarza obiektu InternetExplorer.Application - jak sama nazwa wskazuje, dostaniemy działający egzemplarz programu Internet Explorer - możemy go nazywać naszym. Teraz użyjemy tego wiersza kodu, by pobrać pierwszy argument przekazany do naszego skryptu i zapisać go w zmiennej o nazwie strWebSite:

strWebSite = Wscript.Arguments(0)

Skąd się bierze ten argument? Wyjaśnimy to za chwilę.

Teraz użyjemy kolejnego bloku kodu, by: 1) otworzyć witrynę sieci Web, której adres przechowuje zmienna strWebSite; 2)ukryć pasek adresu i 3)pokazać na ekranie program Internet Explorer:

objExplorer.Navigate strWebSite   

objExplorer.AddressBar = 0

objExplorer.Visible = 1

Jak mówiliśmy, nie mogliśmy znaleźć parametru startowego, który ukrywa pasek adresu. Jednak, jeśli uruchomimy programowo przeglądarkę Internet Explorer, to możemy ukryć pasek adresu po prostu nadając właściwości AddressBar wartość 0. I to właśnie zrobiliśmy.

Na wypadek, gdyby was to interesowało: poniższe wiersze kodu ukrywają odpowiednio pasek narzędzi i pasek stanu:

objExplorer.ToolBar = 0 

objExplorer.StatusBar = 0

Wszystko to razem składa się na skrypt wywoływany przez nasz skrót do programu Internet Explorer. No to teraz przyjrzyjmy się drugiemu skryptowi - tworzącemu ten właśnie skrót:

Set objShell = CreateObject("Wscript.Shell")

strFolder = objShell.SpecialFolders.Item("Desktop")



Set objShortcut = objShell.CreateShortcut(strFolder & "\Open Web Site.lnk")

objShortcut.TargetPath = "c:\scripts\test.vbs"

objShortcut.Arguments = "https://www.microsoft.com/technet/scriptcenter"

objShortcut.Save

Też mały i zgrabny skrypcik. Zaczynamy od utworzenia egzemplarza obiektu Wscript.Shell, używanego do tworzenia skrótów. Ponieważ chcemy, żeby skrót pojawił się na pulpicie, poniższy wiersz kodu zwraca ścieżkę do pulpitu użytkownika:

strFolder = objShell.SpecialFolders.Item("Desktop")

Nadal nas czytacie? Dobrze. W kolejnym kroku stworzymy skrót, korzystając przy tym z jakże trafnie nazwanej metody CreateShortcut:

Set objShortcut = objShell.CreateShortcut(strFolder & "\Open Web Site.lnk")

Jak widzicie, wystarczy przekazać metodzie CreateShortcut ścieżkę do pliku nowotworzonego skryptu. Ponieważ chcemy, żeby skrót pojawił się na pulpicie, tworzymy ścieżkę, która łączy w sobie ścieżkę do folderu pulpitu (wartość przechowywaną przez zmienną strFolder), znak \ i nazwę pliku skrótu: Open Web Site.lnk. Innymi słowy tworzymy skrót o ścieżce podobnej do tej:

C:\Documents and Settings\Ken Myer\Desktop\Open Web Site.lnk

Teraz musimy nadać wartości dwóm właściwościom: TargetPath i Arguments. Właściwość TargetPath określa skrypt, który chcemy wywoływać za każdym razem, gdy korzystamy ze skrótu - w tym przypadku C:\Scripts\Test.vbs. Właściwość Arguments określa zaś argumenty wiersza polecenia, które chcemy przekazać do skryptu. Ponieważ chcemy, aby skrót otwierał odnośnik do witryny Script Center (https://www.microsoft.com/poland/technet/scriptcenter) przypisujemy właściwości Arguments adres URL witryny Script Center.

Na koniec wywołujemy metodę Save, aby oficjalnie zapisać nowy skrót w systemie plików.

Teraz najbardziej ekscytująca część: co się stanie, gdy użyjemy tego skrótu? No więc, skrót wywoła skrypt C:\Scripts\Test.vbs, przekazując adres URL witryny Script Center jako pierwszy (i jedyny) argument wiersza polecenia. Skrypt Test.vbs z kolei:

  1. Stworzy egzemplarz programu Internet Explorer.
  2. Za pomocą metody Navigate otworzy witrynę Script Center.
  3. Ukryje pasek adresu.
  4. Pokaże okno na ekranie.

Spróbujcie sami i zobaczcie.

Albo, dla odmiany, weźcie wehikuł czasu, cofnijcie się w czasie i sprawcie, żeby do programu Internet Explorer dodano parametr startowy pozwalający ukryć pasek adresu. Wybór należy do was.

 Do początku strony Do początku strony

Centrum skryptów - Systemy operacyjne