IPrintCoreHelperPS::WhyConstrained method (prcomoem.h)

Metode IPrintCoreHelperPS::WhyConstrained menyediakan daftar opsi yang membatasi pasangan opsi fitur yang ditentukan dalam konfigurasi saat ini.

Sintaks

HRESULT WhyConstrained(
  [in, optional] const DEVMODE              *pDevmode,
  [in]           DWORD                      cbSize,
  [in]           PCSTR                      pszFeatureKeyword,
  [in]           PCSTR                      pszOptionKeyword,
  [out]          const PRINT_FEATURE_OPTION **ppFOConstraints,
  [out]          DWORD                      *pdwNumOptions
);

Parameter

[in, optional] pDevmode

Penunjuk ke struktur DEVMODEW . Jika pointer ini disediakan, IPrintCoreHelperPS::WhyConstrained harus menggunakan struktur DEVMODEW yang diarahkan oleh pDevmode alih-alih struktur DEVMODEW default atau saat ini. Jika metode ini dipanggil dari penyedia plug-in atau dari IPrintOemPS::D evMode, parameter ini diperlukan. Dalam sebagian besar situasi lain, parameter harus NULL. Ketika driver inti mengatur pDevmode ke NULL, driver ini memodifikasi status internalnya daripada struktur DEVMODEW yang diteruskan. Ini diperlukan selama operasi seperti penggantian UI penuh, di mana struktur DEVMODEW yang dikembalikan oleh DDI, seperti DrvDocumentPropertySheets, sedang dilayanakan oleh modul UI driver inti.

[in] cbSize

Ukuran, dalam byte, dari struktur DEVMODEW yang diarahkan oleh parameter pDevmode .

[in] pszFeatureKeyword

Penunjuk ke string ANSI yang berisi nama fitur. Nama fitur harus sesuai dengan kata kunci yang digunakan dalam file PPD.

[in] pszOptionKeyword

Penunjuk ke string ANSI yang berisi nama opsi. Nama opsi harus sesuai dengan kata kunci yang digunakan dalam file PPD.

[out] ppFOConstraints

Penunjuk ke array elemen PRINT_FEATURE_OPTION . Saat IPrintCoreHelperPS::WhyConstrained mengembalikan, array berisi daftar pasangan elemen fitur dari opsi yang membatasi opsi yang ditentukan dalam parameter pszOptionKeyword .

[out] pdwNumOptions

Penunjuk ke variabel yang menerima jumlah pasangan opsi fitur dalam array yang ditunjukkan oleh parameter ppFOConstraints .

Nilai kembali

IPrintCoreHelperPS::WhyConstrained harus mengembalikan salah satu nilai berikut.

Menampilkan kode Deskripsi
S_OK
Operasi berhasil.
E_INVALIDARG
Satu atau beberapa argumen tidak valid, atau fitur ini tidak didukung.
E_OUTOFMEMORY
Memori untuk array hasil tidak dapat dialokasikan.
 

Untuk kegagalan lain, metode harus mengembalikan kode kesalahan COM standar.

Keterangan

Jika pasangan opsi fitur yang ditentukan tidak dibatasi, IPrintCoreHelperPS::WhyConstrained akan mengembalikan S_OK tetapi akan kembali dengan *pdwFOPairs diatur ke 0 dan dengan *ppFOConstraints[0] diatur ke NULL.

Perhatikan bahwa hasil dari metode ini mungkin tidak berisi semua opsi yang memengaruhi opsi yang saat ini dipilih. Namun, jika ada kombinasi yang tidak valid, hanya satu opsi dari kombinasi yang akan disertakan dalam daftar.

Persyaratan

Persyaratan Nilai
Target Platform Desktop
Header prcomoem.h (termasuk Prcomoem.h)

Lihat juga

IPrintCoreHelperPS

IPrintCoreHelperPS::EnumConstrainedOptions