Arahan pra-prosesor
Penting
Kami menyarankan agar Anda menggunakan driver kelas kotak masuk IPP Microsoft, bersama dengan Print Support Apps (PSA), untuk menyesuaikan pengalaman cetak di Windows 10 dan 11 untuk pengembangan perangkat printer.
Untuk informasi selengkapnya, lihat Panduan desain aplikasi dukungan cetak.
File GPD dapat berisi arahan pra-prosesor, yang dapat digunakan untuk mengontrol penguraian bagian bersyarat dalam file GPD. Tabel berikut menjelaskan arahan praprosesor yang dapat digunakan dalam file GPD.
PreprocessorDirective | Definisi |
---|---|
*Tentukan: SymbolName | Mendefinisikan simbol. |
*Tidak didefinisikan: SymbolName | Menghapus simbol yang ditentukan sebelumnya. |
*Ifdef: SymbolName | Menunjukkan awal blok entri file GPD. Jika simbol yang ditentukan ditentukan, entri file GPD antara direktif ini dan *Ifdef**, *Elseifdef, *Else, atau *Direktif Endif diproses oleh pengurai GPD. |
*Elseifdef : SymbolName | Jika simbol yang ditentukan ditentukan, dan simbol yang ditentukan oleh direktif *Ifdef atau *Elseifdef sebelumnya tidak ditentukan, entri file GPD antara direktif ini dan direktif berikutnya *Ifdef, *Elseifdef, *Else, atau *Endif diproses oleh pengurai GPD. |
*Lainnya: | Jika simbol yang ditentukan oleh direktif *Ifdef atau *Elseifdef sebelumnya tidak ditentukan, entri file GPD antara direktif ini dan direktif *Ifdef atau *Endif berikutnya diproses oleh pengurai GPD. |
*Endif: | Menunjukkan akhir blok entri file GPD. |
*Sertakan: "FileName" | Menentukan nama file GPD tambahan. Untuk informasi selengkapnya, lihat Menggunakan Beberapa File GPD di Minidriver. |
*SetPPPrefix : PrefixString | Mengubah string awalan yang telah ditambahkan ke arahan praprosesor. Untuk informasi selengkapnya, lihat bagian Mengubah Prefiks Direktif Praprosesor . |
Arahan pra-prosesor kondisional dapat ditumpuk. Pada setiap tingkat bersarang, urutan untuk menggunakan arahan praproscesor kondisional adalah sebagai berikut:
*Ifdef: Bagian file GPD Symbol1
*Elseifdef: Bagian file GPD Symbol2
*Elseifdef: Bagian file GPD Symbol3
*Elseifdef: Bagian file GPD Symbol4
...
*Lainnya: bagian file GPD
*Endif:
Untuk setiap direktif *Ifdef yang digunakan, *Endif diperlukan. Direktif *Elseifdef dan *Else bersifat opsional. Setiap bagian file GPD dapat berisi entri file GPD dan, secara opsional, urutan berlapis dari arahan prapemrosesan kondisional.
Semua simbol yang didefinisikan menggunakan *Tetapkan tetap ditentukan sampai secara eksplisit tidak terdefinisi menggunakan *Undefine.
Direktif *Sertakan memungkinkan Anda menentukan nama file GPD tambahan. Untuk informasi selengkapnya, lihat Menggunakan Beberapa File GPD di Minidriver.
Perhatikan bahwa entri *IgnoreBlock GPD tidak memengaruhi direktif pra-prosesor, karena pra-prosesor dijalankan sebelum pengurai GPD.
Mengubah Prefiks Direktif Praprosesor
Direktif *SetPPPrefix memungkinkan Anda mengubah awalan yang digunakan dengan arahan praprosesor. Artinya, Anda dapat menggunakan direktif ini untuk mengganti karakter tanda bintang (*) yang memberi prepend pada arahan pra-prosesor dengan karakter atau string lain.
Misalnya, jika file GPD Anda berisi direktif berikut:
*SetPPPrefix: #SpecialPrefix#
kemudian prapemroses berhenti mencari arahan praprosesor yang dimulai dengan * dan sebagai gantinya mencari arahan yang dimulai dengan #SpecialPrefix#. Urutan berikut untuk sementara mengubah awalan preprosesor menjadi #SpecialPrefix#, lalu memulihkannya ke *.
*SetPPPrefix: #SpecialPrefix#
#SpecialPrefix#Ifdef: WINNT_50
#SpecialPrefix#Include: "ExtraGPD.gpd"
#SpecialPrefix#Endif:
#SpecialPrefix#SetPPPrefix: *
Tujuan utama fitur ini adalah untuk memungkinkan file GPD yang ditulis untuk versi sistem operasi di masa mendatang kompatibel dengan Windows 2000. Misalnya, misalkan file GPD untuk versi sistem operasi yang akan datang dapat menyertakan entri file GPD yang bertentangan dengan arahan preprosesor awalan tanda bintang yang didukung oleh Windows 2000. Dengan mengubah awalan, file GPD yang ditulis untuk versi sistem operasi di masa mendatang juga dapat digunakan dengan Windows 2000. Contoh dapat dibangun sebagai berikut:
*Ifdef: WINNT_70
*SetPPPrefix: #SpecialPrefix#
*% Do special, OS-specific processing of
*% GPD file entries that might conflict with
*% asterisk-prefixed preprocessor directives.
#SpecialPrefix#SetPPPrefix: *
*Endif:
Perhatikan bahwa teknik ini hanya mengubah awalan yang dicari preprosesor. Kata kunci yang dikenali oleh pengurai harus selalu didahului oleh tanda bintang.
Simbol Pra-prosesor yang telah ditentukan sebelumnya
Microsoft mendefinisikan simbol praprosesor berikut.
Simbol | Di mana Didefinisikan | Definisi |
---|---|---|
WINNT_51 | Pra-prosesor GPD untuk Windows XP | Lingkungan adalah Windows XP. |
WINNT_50 | Pra-prosesor GPD untuk Windows XP dan Windows 2000 | Lingkungan adalah Windows 2000. |
WINNT_40 | Pra-prosesor GPD untuk Windows XP, Windows 2000, dan Windows NT 4.0 | Lingkungan adalah Windows NT 4.0. |
PARSER_VER_1.0 | Pra-prosesor GPD untuk Windows NT 4.0, Windows 2000, dan Windows XP | Pengurai GPD versi 1.0 |
Simbol WINNT_40, WINNT_50, dan WINNT_51 berguna untuk membuat file GPD yang kompatibel dengan Windows NT 4.0, Windows 2000, dan Windows XP. Jika, misalnya, Windows XP mendukung kemampuan printer yang tidak didukung oleh Windows 2000, maka kemampuan tersebut dapat ditentukan dalam bagian file GPD yang dibatasi oleh *Ifdef: WINNT_51 dan *Arahan Endif .
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