Fungsi PTConvertPrintTicketToDevMode (prntvpt.h)
Mengonversi tiket cetak menjadi struktur DEVMODE .
Sintaks
HRESULT PTConvertPrintTicketToDevMode(
[in] HPTPROVIDER hProvider,
[in] IStream *pPrintTicket,
EDefaultDevmodeType baseDevmodeType,
[in] EPrintTicketScope scope,
[out] ULONG *pcbDevmode,
[out] PDEVMODE *ppDevmode,
[out] BSTR *pbstrErrorMessage
);
Parameter
[in] hProvider
Handel ke penyedia tiket cetak yang dibuka. Handel ini dikembalikan oleh PTOpenProvider atau fungsi PTOpenProviderEx .
[in] pPrintTicket
Penunjuk ke IStream dengan posisi pencariannya di awal tiket cetak.
baseDevmodeType
Nilai yang menunjukkan apakah DEVMODE default pengguna atau DEVMODE default antrean cetak digunakan untuk memberikan nilai ke DEVMODE output ketika pPrintTicket tidak menentukan setiap pengaturan yang mungkin untuk DEVMODE.
[in] scope
Nilai yang menentukan cakupan pPrintTicket. Nilai ini dapat menentukan satu halaman, seluruh dokumen, atau semua dokumen dalam pekerjaan cetak. Pengaturan dalam pPrintTicket yang berada di luar lingkup yang ditentukan diabaikan. Lihat Keterangan.
[out] pcbDevmode
Penunjuk ke ukuran DEVMODE dalam byte.
[out] ppDevmode
Penunjuk ke DEVMODE yang baru dibuat.
[out] pbstrErrorMessage
Penunjuk ke string yang menentukan apa, jika ada, tidak valid tentang pPrintTicket. Jika valid, ini ADALAH NULL.
Mengembalikan nilai
Jika operasi berhasil, nilai yang dikembalikan S_OK.
Jika hProvider dibuka di utas yang berbeda, HRESULT akan E_INVALIDARG.
Jika pPrintTicket tidak valid, HRESULT E_PRINTTICKET_FORMAT.
Jika tidak, beberapa kode kesalahan lainnya dikembalikan di HRESULT. Untuk informasi selengkapnya tentang kode kesalahan COM, lihat Penanganan Kesalahan.
Keterangan
Jika baseDevmodeType adalah kUserDefaultDevmode, tetapi default pengguna tidak tersedia, default perangkat akan digunakan.
DEVMODE yang dikembalikan mungkin secara internal tidak konsisten atau bertentangan dengan pengaturan hard printer meskipun setiap pengaturan di dalamnya layak satu per satu. Misalnya, jika printer mendukung duplexer opsional tetapi pPrintTicket memanggil duplexing, maka DEVMODE yang dikembalikan juga akan memanggil dupleks, bahkan jika duplekser tidak diinstal. Gunakan DocumentProperties untuk memperbaiki DEVMODE yang dikembalikan.
Buffer dalam ppDevmode yang dikembalikan harus dirilis dengan PTReleaseMemory.
Nilai pPrintTicket yang berada di luar cakupan diabaikan. Misalnya, jika cakupan hanya satu halaman, maka pengaturan di seluruh pekerjaan dan pengaturan di seluruh dokumen diabaikan. Cakupan pekerjaan mencakup cakupan dokumen dan cakupan halaman. Cakupan dokumen menyertakan cakupan halaman.
Jika pbstrErrorMessage bukan NULL saat fungsi kembali, pemanggil harus membebaskan string dengan SysFreeString.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | prntvpt.h |
Pustaka | Prntvpt.lib |
DLL | Prntvpt.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk