Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Důležité
Tento dokument popisuje funkce konzolové platformy, které už nejsou součástí našeho plánu ekosystému. Tento obsah nedoporučujeme používat v nových produktech, ale v budoucnu budeme nadále podporovat stávající využití. Naše upřednostňované moderní řešení se zaměřuje na sekvence virtuálních terminálů pro zajištění maximální kompatibility ve scénářích napříč platformami. Další informace o tomto rozhodnutí o návrhu najdete v naší klasické konzole vs. dokumentu virtuálního terminálu .
Výstupní funkce konzoly nízké úrovně poskytují přímý přístup k buňkám znaků vyrovnávací paměti obrazovky. Jedna sada funkcí čte z buněk nebo zápisů do po sobě jdoucích buněk začínajících v libovolném umístění v vyrovnávací paměti obrazovky konzoly. Další sada funkcí čte z buněk nebo zápisy do obdélníkových bloků buněk.
Následující funkce čtou nebo zapisuje do zadaného počtu po sobě jdoucích buněk znaků ve vyrovnávací paměti obrazovky, počínaje zadanou buňkou.
| Funkce | Popis |
|---|---|
| ReadConsoleOutputCharacter | Zkopíruje řetězec znaků Unicode nebo ANSI z vyrovnávací paměti obrazovky. |
| WriteConsoleOutputCharacter | Zapíše řetězec znaků Unicode nebo ANSI do vyrovnávací paměti obrazovky. |
| ReadConsoleOutputAttribute | Zkopíruje řetězec atributů barvy textu a pozadí z vyrovnávací paměti obrazovky. |
| WriteConsoleOutputAttribute | Zapíše řetězec atributů barvy textu a pozadí do vyrovnávací paměti obrazovky. |
| FillConsoleOutputCharacter | Zapíše jeden znak Unicode nebo ANSI do zadaného počtu po sobě jdoucích buněk v vyrovnávací paměti obrazovky. |
| FillConsoleOutputAttribute | Zapíše kombinaci atributů barvy textu a pozadí do zadaného počtu po sobě jdoucích buněk ve vyrovnávací paměti obrazovky. |
U všech těchto funkcí platí, že když dojde k výskytu poslední buňky řádku, čtení nebo zápis se kolem první buňky dalšího řádku zalomí. Když dojde ke konci posledního řádku vyrovnávací paměti obrazovky konzoly, funkce zápisu zahodí všechny nepřepsané znaky nebo atributy a funkce pro čtení hlásí počet znaků nebo atributů, které jsou skutečně zapsány.
Následující funkce čtou nebo zapisuje do obdélníkových bloků buněk znaků v zadaném umístění ve vyrovnávací paměti obrazovky.
| Funkce | Popis |
|---|---|
| ReadConsoleOutput | Zkopíruje znaková a barevná data ze zadaného bloku buněk vyrovnávací paměti obrazovky do daného bloku v cílové vyrovnávací paměti. |
| WriteConsoleOutput | Zapíše znaková a barevná data do zadaného bloku buněk vyrovnávací paměti obrazovky z daného bloku ve zdrojové vyrovnávací paměti. |
Tyto funkce považují vyrovnávací paměti obrazovky a zdrojové nebo cílové vyrovnávací paměti jako dvojrozměrná pole CHAR_INFO struktur (obsahující data atributů znaků a barev pro každou buňku). Funkce určují šířku a výšku ve znakových buňkách zdrojové nebo cílové vyrovnávací paměti a ukazatel na vyrovnávací paměť se považuje za ukazatel na původní buňku (0,0) dvojrozměrného pole. Funkce používají strukturu SMALL_RECT k určení obdélníku pro přístup do vyrovnávací paměti konzoly a souřadnice levé horní buňky ve zdrojové nebo cílové vyrovnávací paměti určují umístění odpovídajícího obdélníku v této vyrovnávací paměti.
Tyto funkce automaticky vystřižují zadaný obdélník vyrovnávací paměti obrazovky tak, aby se vešly do hranic vyrovnávací paměti konzoly. Pokud například obdélník určuje souřadnice vpravo dole (sloupec 100, řádek 50) a vyrovnávací paměť obrazovky konzoly je pouze 80 sloupců širokých, souřadnice jsou oříznuty tak, aby byly (sloupec 79, řádek 50). Podobně je tento upravený obdélník znovu oříznut tak, aby se vešl do hranic zdrojové nebo cílové vyrovnávací paměti. Jsou zadány souřadnice vyrovnávací paměti obrazovky skutečného obdélníku, ze kterého byl načten nebo zapsán. Příklad, který používá tyto funkce, viz čtení a zápis bloků znaků a atributů.
Obrázek znázorňuje operaci ReadConsoleOutput , kde dojde k výřezu při čtení bloku z vyrovnávací paměti obrazovky konzoly a znovu při zkopírování bloku do cílové vyrovnávací paměti. Funkce hlásí skutečný obdélník vyrovnávací paměti obrazovky, ze kterého se zkopíroval.