Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Önemli
Modern yazdırma platformu, Windows'un yazıcılarla iletişim kurmak için tercih ettiği araçlardır. Yazıcı cihazı geliştirme için Windows 10 ve 11'deki yazdırma deneyimini özelleştirmek için Yazdırma Desteği Uygulamaları (PSA) ile birlikte Microsoft'un IPP gelen kutusu sınıf sürücüsünü kullanmanızı öneririz.
Daha fazla bilgi için bkz. Yazdırma Desteği Uygulaması v1 ve v2 tasarım kılavuzu.
GPD dosyaları, GPD dosyasındaki bölümlerin koşullu ayrıştırmasını denetlemek için kullanılabilen önişlemci yönergeleri içerebilir. Aşağıdaki tabloda, GPD dosyalarında kullanılabilecek ön işlemci yönergeleri açıklanmaktadır.
| Ön İşlemci Direktifi | Tanım |
|---|---|
| * Tanımla: SymbolName | Bir simge tanımlar. |
| * Tanımsız: SymbolName | Önceden tanımlanmış bir simgeyi kaldırır. |
| * Ifdef: SymbolName | GPD dosya girdileri bloğunun başlangıcını gösterir. Belirtilen simge tanımlanmışsa, bu yönerge ile sonraki *Ifdef**, *Elseifdef, *Else veya *Endif yönergesi arasındaki GPD dosya girişleri GPD ayrıştırıcısı tarafından işlenir. |
| * Elseifdef : SymbolName | Belirtilen simge tanımlanmışsa ve önceki *Ifdef veya *Elseifdef yönergesi tarafından belirtilen simge tanımlanmamışsa, bu yönerge ile sonraki *Ifdef, *Elseifdef, *Else veya *Endif yönergesi arasındaki GPD dosya girişleri GPD ayrıştırıcısı tarafından işlenir. |
| * Aksi halde: | Önceki *Ifdef veya *Elseifdef yönergesi tarafından belirtilen simge tanımlanmamışsa, bu yönerge ile sonraki *Ifdef veya *Endif yönergesi arasındaki GPD dosya girişleri GPD ayrıştırıcısı tarafından işlenir. |
| * Endif: | GPD dosya girdileri bloğunun sonunu gösterir. |
| * Include: "FileName" | Ek bir GPD dosyasının adını belirtir. Daha fazla bilgi için bakınız Minidriver'daBirden Çok GPD Dosyası Kullanma. |
| * SetPPPrefix : PrefixString | Önişlemci yönergelerine eklenen ön eki değiştirir. Daha fazla bilgi için Önişlemci Yönerge Ön Ekini Değiştirme bölümüne bakın. |
Koşullu önişlemci yönergeleri iç içe geçmiş olabilir. Her iç içe yerleştirme düzeyinde, koşullu önişlemci yönergelerini kullanma sırası aşağıdaki gibidir:
* Ifdef: Symbol1 GPD dosyası bölümü
* Elseifdef: Symbol2 GPD dosyası bölümü
* Elseifdef: Symbol3 GPD dosyası bölümü
* Elseifdef: Symbol4 GPD dosyası bölümü
...
* Else: GPD dosya bölümü
* Endif:
Kullanılan her *Ifdef yönergesi için *Endif gereklidir. *Elseifdef ve *Else yönergeleri isteğe bağlıdır. Her GPD dosyası bölümü, GPD dosya girdileri ve isteğe bağlı olarak koşullu ön işlemci yönergelerinin iç içe dizisini içerebilir.
*Tanımla kullanılarak tanımlanan tüm simgeler, *Tanımsızla kullanılarak açıkça tanımsız yapılana kadar tanımlı kalır.
*Include yönergesi ek bir GPD dosyasının adını belirtmenize olanak tanır. Daha fazla bilgi için bakınız Minidriver'daBirden Çok GPD Dosyası Kullanma.
*IgnoreBlock GPD girişinin ön işlemci yönergelerini etkilemediğini unutmayın çünkü ön işlemci GPD ayrıştırıcıdan önce yürütülür.
Önişlemci YönergeSi Ön Ekini Değiştirme
*SetPPPrefix yönergesi, önişlemci yönergeleriyle kullanılan ön eki değiştirmenize olanak tanır. Yani, ön işlemci yönergelerini başka bir karakter veya dizeyle önceden ekleyen yıldız (*) karakterini değiştirmek için bu yönergeyi kullanabilirsiniz.
Örneğin, GPD dosyanız aşağıdaki yönergeyi içeriyorsa:
*SetPPPrefix: #SpecialPrefix#
ardından ön işlemci ile * başlayan önişlemci yönergelerini aramayı durdurur ve bunun yerine #SpecialPrefix# ile başlayan yönergeleri arar. Aşağıdaki sıra, ön işlemci ön ekini geçici olarak #SpecialPrefix# olarak değiştirir ve sonra * orijinal haline geri yükler.
*SetPPPrefix: #SpecialPrefix#
#SpecialPrefix#Ifdef: WINNT_50
#SpecialPrefix#Include: "ExtraGPD.gpd"
#SpecialPrefix#Endif:
#SpecialPrefix#SetPPPrefix: *
Bu özelliğin birincil amacı, gelecekteki işletim sistemi sürümleri için yazılmış GPD dosyalarının Windows 2000 ile uyumlu olmasını sağlamaktır. Örneğin, işletim sisteminin gelecekteki bir sürümü için GPD dosyalarının Windows 2000 tarafından desteklenen yıldız ön eki ön işlemci yönergeleriyle çakışan GPD dosya girdileri içerebileceğini varsayalım. Ön ek değiştirilerek, gelecekteki işletim sistemi sürümü için yazılmış bir GPD dosyası Windows 2000 ile de kullanılabilir. Aşağıdaki gibi bir örnek oluşturulabilir:
*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:
Bu tekniğin yalnızca ön işlemcinin arayabilecekleri ön eki değiştirdiğini unutmayın. Ayrıştırıcı tarafından tanınan anahtar sözcüklerin önünde her zaman yıldız işareti bulunmalıdır.
Önceden Tanımlanmış Önişlemci Simgeleri
Microsoft aşağıdaki ön işlemci simgelerini tanımlar.
| Sembol | Tanımlandığı Yer | Tanım |
|---|---|---|
| WINNT_51 | Windows XP için GPD ön işlemcisi | Ortam, Windows XP'dir. |
| WINNT_50 | Windows XP ve Windows 2000 için GPD ön işlemcisi | Ortam, Windows 2000'dir. |
| WINNT_40 | Windows XP, Windows 2000 ve Windows NT 4.0 için GPD ön işlemcileri | Ortam, Windows NT 4.0'dır. |
| PARSER_VER_1.0 | Windows NT 4.0, Windows 2000 ve Windows XP için GPD ön işlemcileri | GPD ayrıştırıcı sürüm 1.0 |
WINNT_40, WINNT_50 ve WINNT_51 simgeleri Windows NT 4.0, Windows 2000 ve Windows XP ile uyumlu GPD dosyaları oluşturmak için kullanışlıdır. Örneğin, Windows XP Windows 2000 tarafından desteklenmeyen bir yazıcı özelliğini destekliyorsa, bu özellik *Ifdef: WINNT_51 ve *Endif yönergeleriyle sınırlanan bir GPD dosyası bölümünde belirtilebilir.