共用方式為


印表機 INF 檔案專案

重要

我們建議您使用 Microsoft 的 IPP 收件匣類別驅動程式以及 PRINT Support Apps () ,在印表機裝置開發時自定義 Windows 10 和 11 的列印體驗。

如需詳細資訊,請參閱 列印支援應用程式設計指南

若要讓安裝應用程式在印表伺服器上安裝印表機,它必須呼叫多任務緩衝處理器的 AddPrinterDriverEx 函式來載入驅動程式檔案,然後呼叫多任務緩衝處理程式的 AddPrinter 函式,讓印表機可在伺服器上使用。

AddPrinterDriverEx 函式需要DRIVER_INFO_3結構做為輸入,而 AddPrinter 函式需要PRINTER_INFO_2結構做為輸入。 默認 Windows 2000 或更新版本的印表機類別安裝程式 Ntprint.dll 會讀取印表機 INF 檔案,以取得在呼叫函式之前必須放在這些結構中的字串值。

已定義 Ntprint.dll 辨識印表機驅動程式的一組 INF 檔案專案。 這些專案格式如下:

EntryName = 價值

其中 EntryName 是識別專案的字串, 而 Value 是指派給專案的字串值。

下表列出應該包含在印表機 INF 檔案中的 INF 檔案專案。 針對每個項目,數據表包含下列專案:

  • 應該指派給專案的值。

  • 如果未定義專案,則 Ntprint.dll 使用的預設值。

  • 結構成員,Ntprint.dll 在其中放置專案值的指標。

INF 檔案專案 如果未指定專案,則為預設值 () 結構成員
ConfigFile 驅動程式印表機 介面 DLL 的名稱。 為 DriverFile 指定的值。 DRIVER_INFO_3 結構的 pConfigFile 成員
DataFile 驅動程式相關數據檔的名稱,例如PPD檔案。 INF 檔案中的驅動程式區段名稱。 DRIVER_INFO_3 結構的 pDataFile 成員
DefaultDataType 未與 NT 型作業系統搭配使用。
DriverCategory 請參閱 附注 1,請遵循下表。 如果 INF 檔案未指定驅動程式類別 (與大部分 v3 驅動程式) 一樣,則假設驅動程式的類別是 PrintFax.Printer
DriverFile 驅動程式印表機 圖形 DLL 的名稱。 INF 檔案中的驅動程式區段名稱。 DRIVER_INFO_3 結構的 pDriverPath 成員
ExcludeFromSelect 請參閱 附注 2,請遵循下表。
HelpFile 介面 DLL 說明檔的名稱。 無。 未指定說明檔。 DRIVER_INFO_3 結構的 pHelpFile 成員
LanguageMonitor 要與印表機驅動程式相關聯的語言監視器名稱。 請參閱 LanguageMonitor 值格式 一節。 無。 未指定語言監視器。 DRIVER_INFO_3 結構的 pMonitorName 成員
PrintProcessor 要與印表機佇列相關聯的印表處理器名稱。 請參閱 PrintProcessor 值格式 一節。 會使用預設列印處理器 (WinPrint) 。 DRIVER_INFO_2 結構的 pPrintProcessor 成員
VendorSetup 廠商提供的 DLL 內處理 自定義印表機安裝作業的函式名稱。 無。 請參閱 下表後面的附註 3
InboxVersionRequired INF 參考之所有核心驅動程式的最低可接受版本。 如需 InboxVersionRequired 的詳細資訊,請參閱 INF InboxVersionRequired 指示詞

1 (DriverCategory) :如果 INF 檔案指定類別,則允許的值 (0 到 5 分別) 指定類別:

驅動程序類別 Description
PrintFax.Printer 0 印列,代表透過本機或網路協定) 連線到電腦 (的印表機,或是另一部電腦上實體印表機的 Proxy。 當使用者列印到實體印表機時,結果會是紙上列印的檔。
PrintFax.Fax 1 代表實體或虛擬傳真計算機的列印佇列。 當使用者列印到傳真印表機時,在進一步的使用者互動之後,結果 () 可能是傳送傳真。
PrintFax.Printer.File 2 產生軟體複製檔的列印佇列。 當使用者列印到檔案印表機時,用戶必須先輸入檔名,然後多任務緩衝處理器會將列印的輸出傳送到該檔案。 檔案印表機一律需要檔名,但不需要其他用戶輸入。 當使用者沒有提供檔名的選項時,應用程式會產生可供多任務緩衝處理程式使用的檔名。 檔案印表機的常見範例包括 Microsoft XPS 檔寫入器 (MXDW) 和 PDF 寫入器。
PrintFax.Printer.Virtual 3 具有驅動程式的列印佇列,會對列印後台處理程式不透明列印數據執行一些作業。 當使用者列印到虛擬印表機時,某些可能的結果包括列印檔儲存在計算機上某處、傳送至另一個應用程式,或透過電子郵件傳送。 列印至虛擬印表機的常見範例是列印文件傳送至 Microsoft Office OneNote 印表機的案例。 當使用者選取印至虛擬印表機時,可能需要進一步的用戶互動,由驅動程式或其他驅動程式元件起始。 如需詳細資訊,請參閱 印表機 INF 檔案中的虛擬印表機
PrintFax.Printer.Service 4 代表列印服務的列印佇列。 當用戶選取列印至服務時,結果 (在進一步的使用者互動之後) 可能是第三方列印服務收到列印的內容。 然後,使用者可以移至實體商務位置,以挑選列印的輸出。
PrintFax.Printer.3D 5 列印佇列,表示 3D 印表機的數據流。 如果 2D 印表機不小心指定此類別, (一般印表機) ,則 2D 印表機只會輸出資料流的 2D 內容。 如果已針對 3D 印表機正確指定此類別,但 2D 數據流會傳送至 3D 印表機,3D 印表機將不會產生任何輸出。

另請注意,v4 列印驅動程式使用指令清單檔案。 如需詳細資訊,請參閱 V4 驅動程式指令清單

注意

2 (ExcludeFromSelect) :不應該顯示在 [選取裝置] 對話框中或 [新增印表機精靈] 中不應該顯示的裝置裝置識別符。 對於印表機,這包括 INF 檔案中具有重複裝置描述之裝置的所有 PnP 專案;例如,具有多個專案以進行基礎結構和平行列舉或另一個總線的裝置。 ExcludeFromSelect 專案與此數據表中所有其他專案不同,必須出現在 INF 檔案的 [控件旗標] 區段中。 如需詳細資訊 ,請參閱 INF ControlFlags 一節

注意

3 (VendorSetup) :如果未指定 VendorSetup 專案,則不會執行自定義的安裝作業。 特別是,列印處理器、印表監視器或印表機驅動程式安裝期間不允許任何使用者介面,除非透過使用 VendorSetup INF 專案。 如需此項目的詳細資訊,請參閱 自定義印表機安裝作業

重要

VendorSetup 現在已被取代,您開發的任何 v3 或 v4 驅動程式都不應該使用。 有關 VendorSetup 的這項資訊僅供參考,或維護已使用此 INF 指示詞的現有 v3 驅動程式。

印表機 INF 檔案專案通常會在 印表機 INF 檔案數據區段中指定。 如需範例,請參閱 範例印表機 INF 檔案

LanguageMonitor 值格式

當 LanguageMonitor 專案包含在印表機 INF 檔案中時,值格式如下:

LanguageMonitor=“ MonitorNameMonitorDLLName

其中 MonitorName 是代表監視器顯示名稱的文字字串, 而 MonitorDLLName 是監視 DLL 的檔名。

PrintProcessor 值格式

當 PrintProcessor 專案包含在印表機 INF 檔案中時,值格式如下:

PrintProcessor=“ PrintProcessorNamePrintProcessorDLLName

其中 PrintProcessorName 是代表列印處理器顯示名稱的文字字串, 而 PrintProcessorDLLName 則是 DLL 的檔名。

相依檔案

若為 Windows 2000 和更新版本,相依檔案是印表機驅動程式檔案,包含在 印表機 INF 檔案安裝區段中其 dirid 為 66000,但未指派給 DriverFile、DataFile、ConfigFile 或 HelpFile 專案。

下列範例顯示 INF 檔案的摘錄,其中會將三個相依檔案複製到 dirid 66000) 所指定的目錄 (,以安裝三個相依檔案:

[Contoso]
%PRINTER_MODEL_123%=Contoso_Install_Section,LPTENUM\Contoso_1284.4_P29C5
...
[Contoso_Install_Section]
CopyFiles=@Contoso.ini,@Contoso.xml,@Contoso.dll
...
[DestinationDirs]
DefaultDestDir=66000
...
[Strings]
PRINTER_MODEL_123 = "Contoso Printer Model 123"

在此範例中,Contoso.ini 是印表機 INI 檔案,Contoso.xml 是 bidi 擴展名檔案,而 Contoso.dll 是自定義元件。 如需印表機 INI 檔案、bidi 延伸模組檔案和自定義元件的詳細資訊,請參閱 安裝自定義驅動程式元件雙向通訊架構

點和列印 作業會在用戶端上安裝驅動程式和驅動程式相依檔案。

每個印表機型號最多可以指定 64 個相依檔案。

雙向通訊架構

INF ControlFlags 區段

安裝自定義驅動程式元件

點與列印

印表機 INF 檔案安裝區段

V4 驅動程式指令清單