Fungsi StartDocPrinter
Fungsi StartDocPrinter memberi tahu penampung cetak bahwa dokumen akan ditampung untuk pencetakan.
Sintaks
DWORD StartDocPrinter(
_In_ HANDLE hPrinter,
_In_ DWORD Level,
_In_ LPBYTE pDocInfo
);
Parameter
-
hPrinter [in]
-
Handel ke pencetak. Gunakan fungsi OpenPrinter atau AddPrinter untuk mengambil handel printer.
-
Level [in]
-
Versi struktur yang ditunjukkan pDocInfo . Nilai ini harus 1.
-
pDocInfo [in]
-
Penunjuk ke struktur DOC_INFO_1 yang menjelaskan dokumen yang akan dicetak.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan mengidentifikasi pekerjaan cetak.
Jika fungsi gagal, nilai yang dikembalikan adalah nol.
Keterangan
Catatan
Ini adalah fungsi pemblokiran atau sinkron dan mungkin tidak segera kembali. Seberapa cepat fungsi ini kembali tergantung pada faktor run-time seperti status jaringan, konfigurasi server cetak, dan faktor implementasi driver printer yang sulit diprediksi saat menulis aplikasi. Memanggil fungsi ini dari utas yang mengelola interaksi dengan antarmuka pengguna dapat membuat aplikasi tampak tidak responsif.
Urutan umum untuk pekerjaan cetak adalah sebagai berikut:
- Untuk memulai pekerjaan cetak, panggil StartDocPrinter.
- Untuk memulai setiap halaman, panggil StartPagePrinter.
- Untuk menulis data ke halaman, panggil WritePrinter.
- Untuk mengakhiri setiap halaman, panggil EndPagePrinter.
- Ulangi 2, 3, dan 4 untuk halaman sebanyak yang diperlukan.
- Untuk mengakhiri pekerjaan cetak, panggil EndDocPrinter.
Perhatikan bahwa memanggil StartPagePrinter dan EndPagePrinter mungkin tidak diperlukan, seperti jika jenis data cetak menyertakan informasi halaman.
Ketika halaman dalam file yang ditampung melebihi sekitar 350 MB, halaman dapat gagal mencetak dan tidak mengirim pesan kesalahan. Misalnya, ini dapat terjadi saat mencetak file EMF besar. Batas ukuran halaman tergantung pada banyak faktor termasuk jumlah memori virtual yang tersedia, jumlah memori yang dialokasikan dengan proses panggilan, dan jumlah fragmentasi dalam tumpukan proses.
Contoh
Untuk program sampel yang menggunakan fungsi ini, lihat Cara: Mencetak Menggunakan GDI Print API.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Header |
|
Pustaka |
|
DLL |
|
Nama Unicode dan ANSI |
StartDocPrinterW (Unicode) dan StartDocPrinterA (ANSI) |