Sdílet prostřednictvím


Funkce StartDocPrinter

Funkce StartDocPrinter upozorní zařazování tisku na to, že dokument má být zařazován pro tisk.

Syntaxe

DWORD StartDocPrinter(
  _In_ HANDLE hPrinter,
  _In_ DWORD  Level,
  _In_ LPBYTE pDocInfo
);

Parametry

hPrinter [in]

Popisovač tiskárny. K načtení úchytu tiskárny použijte funkci OpenPrinter nebo AddPrinter .

úrovně [in]

Verze struktury, na kterou pDocInfo odkazuje. Tato hodnota musí být 1.

pDocInfo [in]

Ukazatel na DOC_INFO_1 strukturu, která popisuje dokument k tisku.

Návratová hodnota

Pokud je funkce úspěšná, návratová hodnota identifikuje tiskovou úlohu.

Pokud funkce selže, návratová hodnota je nula.

Poznámky

Poznámka:

Jedná se o blokující nebo synchronní funkci a nemusí se vrátit okamžitě. Jak rychle tato funkce vrací, závisí na faktorech doby běhu, jako je stav sítě, konfigurace tiskového serveru a faktory implementace ovladače tiskárny, které se při psaní aplikace obtížně predikují. Volání této funkce z vlákna, které spravuje interakci s uživatelským rozhraním, může znamenat, že aplikace přestane reagovat.

Typická posloupnost tiskové úlohy je následující:

  1. Chcete-li zahájit tiskovou úlohu, zavolejte Metodu StartDocPrinter.
  2. Chcete-li zahájit každou stránku, zavolejte StartPagePrinter.
  3. Pokud chcete zapisovat data na stránku, zavolejte WritePrinter.
  4. Chcete-li ukončit každou stránku, zavolejte EndPagePrinter.
  5. Opakujte 2, 3 a 4 pro tolik stránek, kolik je potřeba.
  6. Chcete-li ukončit tiskovou úlohu, zavolejte EndDocPrinter.

Všimněte si, že volání StartPagePrinter a EndPagePrinter nemusí být nutné, například pokud datový typ tisku obsahuje informace o stránce.

Pokud stránka ve zařazovaném souboru překročí přibližně 350 MB, může selhat tisk a neodesílat chybovou zprávu. K tomu může dojít například při tisku velkých souborů EMF. Omezení velikosti stránky závisí na mnoha faktorech, včetně množství dostupné virtuální paměti, množství paměti přidělené voláním procesů a množství fragmentace v haldě procesu.

Příklady

Ukázkový program, který tuto funkci používá, najdete v tématu Postupy: Tisk pomocí rozhraní API pro tisk GDI.

Požadavky

Požadavek Hodnota
Minimální podporovaný klient
Windows 2000 Professional [jenom desktopové aplikace]
Minimální podporovaný server
Windows 2000 Server [jenom desktopové aplikace]
Záhlaví
Winspool.h (včetně Windows.h)
Knihovna
Winspool.lib
Knihovna dll
Winspool.drv
Názvy Unicode a ANSI
StartDocPrinterW (Unicode) a StartDocPrinterA (ANSI)

Viz také

Přidat

DOC_INFO_1

DOC_INFO_2

EndDocPrinter

EndPagePrinter

Otevřít tiskárnu

Tisk

funkcí rozhraní API zařazování tisku

StartPagePrinter

WritePrinter