Přejít na hlavní obsah

Sendkeys v prostředí Windows Script Host: užitečné pokyny a příklady použití

  • Květa Horáček
  • Postupy

Jedním ze způsobů, jak automatizovat akce v operačním systému Windows, je použití Sendkeys v prostředí Windows Script Host (WSH). Tento nástroj vám umožňuje simulovat stisky kláves na klávesnici, odesílat příkazy a zadávat data textovými řádky. Sendkeys může být užitečný při vytváření skriptů pro automatické provádění rutinních úkolů nebo při interakci s jinými aplikacemi. V tomto článku se podíváme na základní pokyny a uvedeme několik příkladů použití Sendkeys.

Pokyny Sendkeys

Hlavním týmem Sendkeys je tým WshShell.Sendkeys, který vám umožňuje odesílat příkazy do aktivní aplikace. Tento příkaz přijímá parametr-řádek obsahující příkazy nebo znaky, které je třeba odeslat. Znaky, které představují speciální klávesy (jako je Enter nebo Tab), mohou být převedeny jako kódy. Například symbol Tab může být reprezentován jako ""a symbol Enter jako"".

Příklad použití Sendkeys:


Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "notepad"
WScript.Sleep 1000 ' čekáme, až se notebook otevře
WshShell.AppActivate "Poznámkový Blok"
WshShell.SendKeys "Hello, World!"
WshShell.SendKeys ""

V tomto příkladu otevřeme poznámkový blok, přepneme zaměření na okno poznámkového bloku pomocí metody AppActivate a odešleme text "Hello, World!"pomocí Sendkeys. Poté odešleme symbol nového řádku "" a přejdeme na nový řádek.

Jak používat Sendkeys v prostředí Windows Script Host?

Chcete-li používat funkci Sendkeys v prostředí Windows Script Host, postupujte podle těchto kroků:

Krok 1: Vytvořte instanci objektu wshshell, která poskytuje přístup k objektům a metodám Runtime příkazového řádku.

Set WshShell = WScript.CreateObject("WScript.Shell")

Krok 2: Použijte metodu Sendkeys k odesílání úhozů. Můžete použít speciální znaky jako "" pro klávesu Enter a "" pro klávesu Tab.

WshShell.Sendkeys "Hello, World!"

V tomto příkladu bude odeslána sekvence stisknutí kláves " Hello, World!"aktivní okno.

Sendkeys také umožňuje odesílat kombinace kláves pomocí symbolu"+". Například "" odešle klávesovou zkratku Ctrl, Alt a Del.

Krok 3: Nezapomeňte skript dokončit.

WScript.Quit

Toto je jednoduchý příklad použití Sendkeys v prostředí Windows Script Host. Funkce Sendkeys však může mít určitá omezení, jako je nepředvídatelné chování při odesílání kláves v různých aplikacích. Také nemusí být v některých případech stabilní, proto se doporučuje používat s opatrností.

V některých případech však může být Sendkeys užitečný pro automatizaci některých úloh ve Windows Script Host. Chcete-li se dozvědět více o Sendkeys a dalších možnostech prostředí Windows Script Host, podívejte se na oficiální dokumentaci společnosti Microsoft.

Příprava před použitím Sendkeys:

Před použitím příkazu Sendkeys v prostředí Windows Script Host (WSH) je třeba provést několik přípravných akcí:

  1. Nainstalujte do počítače prostředí WSH. WSH je součástí operačního systému Windows a obvykle je již standardně nainstalován. Pokud ji nemáte, můžete si ji stáhnout z oficiálních stránek společnosti Microsoft.
  2. Nakonfigurujte prostředí WSH pro spouštění skriptů VBScript nebo JScript. Ve většině případů jsou nastavení WSH již ve výchozím nastavení nakonfigurována, ale pokud jste je změnili dříve, ujistěte se, že jsou skripty v dohodnutém formátu.
  3. Připravte si software, který potřebujete pro práci s týmem Sendkeys. Sendkeys je vestavěný tým ve WSH a obvykle nevyžaduje žádné další nástroje pro práci. Pokud však plánujete používat Sendkeys k interakci s jinými aplikacemi, ujistěte se, že jsou nainstalovány a správně nakonfigurovány.

Po dokončení těchto kroků budete připraveni použít příkaz Sendkeys ve svých skriptech na WSH.

Jak odeslat klávesu pomocí Sendkeys:

K odeslání kláves pomocí Sendkeys použijte následující syntaxi:

WScript.CreateObject("WScript.Shell").Sendkeys"Klávesa"

Zde je "klávesa" symbolem nebo kombinací kláves, které chcete odeslat. Níže jsou uvedeny některé příklady nejpoužívanějších kláves:

  • "" - odeslání klávesy Enter
  • "" - odeslání klávesy Tab
  • "" - odeslání klávesy Escape
  • "" - odeslání klávesy Backspace
  • "" - odeslání šipky doleva
  • "" - odeslání šipky doprava
  • "" - odeslání šipky nahoru
  • "" - odeslání šipky dolů

Příklady použití Sendkeys:

Níže je několik příkladů použití příkazu Sendkeys v prostředí Windows Script Host:

    Otevření aplikace:
WshShell.Sendkeys "notepad.exe"WshShell.Sendkeys ""
WshShell.Sendkeys "ABCDEFGHIJKLMNOPQRSTUVWXYZ"WshShell.Sendkeys ""
WshShell.Sendkeys "Hello, world!"WshShell.Sendkeys ""
WshShell.Sendkeys "^a" ' Выбор всего текстаWshShell.Sendkeys "^c" ' Копирование текстаWshShell.Sendkeys "^v" ' Вставка текста
WshShell.Sendkeys "" ' Отмена текущего действияWshShell.Sendkeys "" ' Перемещение курсора вправоWshShell.Sendkeys "" ' Перемещение курсора влевоWshShell.Sendkeys "" ' Перемещение курсора вверхWshShell.Sendkeys "" ' Перемещение курсора вниз

Další užitečné pokyny pro používání Sendkeys:

  1. K úpravě stisku kláves použijte symbol"+". Chcete-li například stisknout klávesovou zkratku Ctrl+C, použijte řádek "+^c".
  2. Použijte symbol "^" k odeslání stisknutí klávesy Ctrl. Chcete-li například stisknout klávesu F5 se současným podržením klávesy Ctrl, použijte řádek "^".
  3. K odeslání stisknutí klávesy Alt použijte symbol"%". Chcete-li například stisknout klávesovou zkratku Ctrl+Alt+Delete, použijte řádek "^%".
  4. K odeslání klávesy Enter použijte symbol"~". Chcete-li například po zadání textu stisknout klávesu Enter, použijte řádek "".
  5. Pomocí tvarovaných závorek "" odešlete speciální znaky. Chcete-li například odeslat znaky "", použijte řádky "" a"<>".

Sendkeys vám umožňuje automatizovat různé úkoly, jako je spouštění programů, zadávání textu, stisknutí tlačítek a další. Použijte tyto užitečné pokyny, abyste co nejlépe využili Sendkeys v prostředí Windows Script Host.