Fungsi AddJob

Fungsi AddJob menambahkan pekerjaan cetak ke daftar pekerjaan cetak yang dapat dijadwalkan oleh penampung cetak. Fungsi ini mengambil nama file yang dapat Anda gunakan untuk menyimpan pekerjaan.

Catatan

Dalam sistem operasi Windows 8 dan yang lebih baru, kami tidak merekomendasikan penggunaan AddJob secara langsung karena ada kasus (seperti mencetak ke antrean menggunakan File: atau PORTPROMPT:) di mana AddJob akan gagal. Sebagai gantinya, Anda disarankan untuk menggunakan GDI Print API, XPS Print API, StartDocPrinter, atau metode yang sesuai dari namespace Windows.Graphics.Printing , tergantung pada skenario cetak.

Jika Anda mencoba mencetak ke antrean menggunakan File: atau PORTPROMPT:, AddJob akan Mengembalikan kesalahan NOT_SUPPORTED.

Sintaks

BOOL AddJob(
  _In_  HANDLE  hPrinter,
  _In_  DWORD   Level,
  _Out_ LPBYTE  pData,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pcbNeeded
);

Parameter

hPrinter [in]

Handel yang menentukan pencetak untuk tugas cetak. Ini harus berupa pencetak lokal yang dikonfigurasi sebagai pencetak tertampung. Jika hPrinter adalah handel ke koneksi printer jarak jauh, atau jika printer dikonfigurasi untuk pencetakan langsung, fungsi AddJob gagal. Gunakan fungsi OpenPrinter atau AddPrinter untuk mengambil handel printer.

Level [in]

Versi struktur data informasi pekerjaan cetak yang disimpan fungsi ke dalam buffer yang ditujukkan oleh pData. Atur parameter ini ke satu.

pData [out]

Penunjuk ke buffer yang menerima struktur data ADDJOB_INFO_1 dan string jalur.

cbBuf [in]

Ukuran, dalam byte, dari buffer yang diacu oleh pData. Buffer harus cukup besar untuk berisi struktur ADDJOB_INFO_1 dan string jalur.

pcbNeeded [out]

Penunjuk ke variabel yang menerima ukuran total, dalam byte, dari struktur data ADDJOB_INFO_1 ditambah string jalur. Jika nilai ini kurang dari atau sama dengan cbBuf dan fungsi berhasil, ini adalah jumlah aktual byte yang ditulis ke buffer yang ditujukkan oleh pData. Jika angka ini lebih besar dari cbBuf, buffer terlalu kecil, dan Anda harus memanggil fungsi lagi dengan ukuran buffer setidaknya sebesar *pcbNeeded.

Mengembalikan nilai

Jika fungsi berhasil, nilai yang dikembalikan adalah nilai bukan nol.

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.

Anda dapat memanggil fungsi CreateFile untuk membuka file penampung yang ditentukan oleh anggota Jalur dari struktur ADDJOB_INFO_1 , lalu memanggil fungsi WriteFile untuk menulis data pekerjaan cetak ke dalamnya. Setelah itu selesai, panggil fungsi ScheduleJob untuk memberi tahu penampung cetak bahwa pekerjaan cetak sekarang dapat dijadwalkan oleh penampung untuk pencetakan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung
Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung
Windows 2000 Server [hanya aplikasi desktop]
Header
Winspool.h (termasuk Windows.h)
Pustaka
Winspool.lib
DLL
Winspool.drv
Nama Unicode dan ANSI
AddJobW (Unicode) dan AddJobA (ANSI)

Lihat juga

ADDJOB_INFO_1

CreateFile

API Cetak GDI

Pencetakan

Cetak Fungsi API Spooler

OpenPrinter

ScheduleJob

StartDocPrinter

Windows.Graphics.Printing

WriteFile

XPS Print API