Udostępnij przez


Wpisy drukarki w pliku INF

Ważne

Nowoczesna platforma drukowania jest preferowanym sposobem komunikacji z drukarkami w systemie Windows. Zalecamy używanie sterownika klasy skrzynki odbiorczej IPP firmy Microsoft wraz z aplikacjami do obsługi drukowania (PSA), aby dostosować środowisko drukowania w systemie Windows 10 i 11 na potrzeby opracowywania urządzeń drukarki.

Aby uzyskać więcej informacji, zobacz Print Support App v1 and v2 design guide (Przewodnik projektowania aplikacji do obsługi wydruku w wersji 1 i 2).

Aby aplikacja instalacji zainstalować drukarkę na serwerze wydruku, musi wywołać funkcję AddPrinterDriverEx buforu, aby załadować pliki sterowników, a następnie wywołać funkcję AddPrinter buforu, aby udostępnić drukarkę na serwerze.

Funkcja AddPrinterDriverEx wymaga struktury DRIVER_INFO_3 jako danych wejściowych, a funkcja AddPrinter wymaga struktury PRINTER_INFO_2 jako danych wejściowych. Domyślny instalator klasy drukarki, Ntprint.dll, odczytuje pliki INF drukarki w celu uzyskania wartości ciągów, które należy umieścić w tych strukturach przed wywołaniami funkcji.

Zdefiniowano zestaw wpisów pliku INF dla sterowników drukarek, które Ntprint.dll rozpoznaje. Te wpisy mają następujący format:

EntryName = Wartość

Gdzie EntryName to ciąg identyfikujący wpis, a Wartość jest wartością ciągu przypisaną do wpisu.

W poniższej tabeli wymieniono wpisy pliku INF, które powinny być uwzględnione w plikach INF drukarki. Dla każdego wpisu tabela zawiera następujące elementy:

  • Wartość, która powinna zostać przypisana do wpisu.

  • Wartość domyślna, która Ntprint.dll używa, jeśli wpis nie jest zdefiniowany.

  • Składowa struktury, w której Ntprint.dll umieszcza wskaźnik na wartość wpisu.

Wpis pliku INF Wartość Wartość domyślna (jeśli nie określono wpisu) Składowa struktury
Plik konfiguracji Nazwa biblioteki DLL interfejsu drukarki sterownika. Wartość określona dla DriverFile. element członkowski pConfigFile struktury DRIVER_INFO_3
Plik danych Nazwa skojarzonego pliku danych sterownika, takiego jak plik PPD. Nazwa sekcji sterownika w pliku INF. element członkowski pDataFile struktury DRIVER_INFO_3
DefaultDataType Nie jest używany z systemami operacyjnymi opartymi na nt.
KategoriaSterownika Zobacz notatkę 1, postępując zgodnie z tą tabelą. Jeśli plik INF nie określa kategorii sterowników (jak większość sterowników w wersji 3), zakłada się, że kategoria sterownika to PrintFax.Printer. Żaden
Plik sterownika Nazwa biblioteki DLL grafiki drukarki sterownika. Nazwa sekcji sterownika w pliku INF. pDriverPath składowa struktury DRIVER_INFO_3
WykluczZWyboru Zobacz Notatkę 2, poniższą tabelę. Żaden Żaden
HelpFile Nazwa pliku pomocy biblioteki DLL interfejsu. Żaden. Nie określono pliku pomocy. element członkowski pHelpFile struktury DRIVER_INFO_3
LanguageMonitor Nazwa monitora językowego, który ma być skojarzony ze sterownikiem drukarki. Zobacz sekcję LanguageMonitor Value Format (Format wartości LanguageMonitor ). Żaden. Nie określono monitora językowego. element członkowski pMonitorName struktury DRIVER_INFO_3
PrintProcessor Nazwa procesora drukowania, który ma być połączony z kolejką drukarki. Zobacz sekcję Format wartości PrintProcessor . Używany jest domyślny procesor wydruku (WinPrint). pPrintProcessor składowa struktury DRIVER_INFO_2
VendorSetup Nazwa funkcji w bibliotece DLL dostarczonej przez dostawcę, która obsługuje niestandardowe operacje konfiguracji drukarki. Żaden. Zobacz Notatkę 3, postępując zgodnie z tą tabelą. Żaden
WymaganaWersjaSkrzynki Minimalna akceptowalna wersja dla wszystkich sterowników rdzenia, do których odwołuje się INF. Aby uzyskać więcej informacji o inboxVersionRequired, zobacz inf inboxVersionRequired dyrektywy. Żaden Żaden

1 (DriverCategory): Jeśli plik INF określa kategorię, są to dozwolone wartości (odpowiednio od 0 do 5) do określania kategorii:

Kategoria sterowników Wartość Opis
PrintFax.Printer 0 Kolejka wydruku, która reprezentuje drukarkę podłączoną do komputera (za pośrednictwem protokołu lokalnego lub sieciowego), albo jest serwerem proxy umożliwiającym dostęp do drukarki fizycznej na innym komputerze. Gdy użytkownik drukuje na drukarce fizycznej, wynik jest papierem z wydrukowanym na nim dokumentem.
PrintFax.Fax 1 Kolejka wydruku reprezentująca fizyczną lub wirtualną maszynę faksową. Gdy użytkownik drukuje na drukarce faksu, wynik (prawdopodobnie po dalszej interakcji użytkownika) powoduje wysłanie faksu.
PrintFax.Printer.File 2 Kolejka wydruku, która generuje dokumenty elektroniczne. Gdy użytkownik drukuje na drukarce plików, musi najpierw wprowadzić nazwę pliku, a bufor następnie wysyła wydruk do tego pliku. Drukarki plików zawsze wymagają nazwy pliku, ale nie pobierają żadnych innych danych wejściowych użytkownika. Jeśli użytkownik nie może podać nazwy pliku, aplikacja generuje nazwę pliku udostępnioną buforowi. Typowe przykłady drukarek plików to Microsoft XPS Document Writer (MXDW) i drukarki PDF.
PrintFax.Drukarka.Wirtualna 3 Kolejka wydruku zawierająca sterownik wykonujący operację na drukowanych danych, która jest niewidoczna dla buforu wydruku. Gdy użytkownik drukuje na drukarce wirtualnej, niektóre możliwe wyniki obejmują wydrukowany dokument, który jest zapisywany gdzieś na komputerze, wysyłany do innej aplikacji lub wysyłany e-mailem. Typowym przykładem drukowania na drukarce wirtualnej jest scenariusz, w którym drukowany dokument jest wysyłany do drukarki programu Microsoft Office OneNote. Gdy użytkownik wybierze drukowanie na drukarce wirtualnej, może być konieczne dalsze interakcje użytkownika, zainicjowane przez sterownik lub inny składnik sterownika. Aby uzyskać więcej informacji, zobacz Wirtualne drukarki w plikach INF drukarek.
PrintFax.Printer.Service 4 Kolejka wydruku reprezentująca usługę drukowania. Gdy użytkownik wybierze drukowanie w usłudze, wynik (prawdopodobnie po dalszej interakcji użytkownika) oznacza to, że usługa drukowania innej firmy otrzymuje wydrukowaną zawartość. Następnie użytkownik może przejść do fizycznej lokalizacji biznesowej, aby pobrać wydrukowane dane wyjściowe.
PrintFax.Printer.3D 5 Kolejka wydruku reprezentująca strumień danych drukarki 3D. Jeśli ta kategoria jest przypadkowo określona dla drukarki 2D (drukarki regularnej), drukarka 2D po prostu wyświetli zawartość 2D strumienia danych. Jeśli ta kategoria jest poprawnie określona dla drukarki 3D, ale strumień danych 2D jest wysyłany do drukarki 3D, drukarka 3D nie wygeneruje żadnych danych wyjściowych.

Należy również pamiętać, że sterowniki drukowania w wersji 4 używają pliku manifest. Aby uzyskać więcej informacji, zobacz Manifest sterownika V4.

Uwaga / Notatka

2 (ExcludeFromSelect): identyfikator urządzenia urządzenia, który nie powinien być wyświetlany w oknie dialogowym Wybieranie urządzenia lub w Kreatorze dodawania drukarek. W przypadku drukarek obejmuje to wszystkie wpisy PnP urządzeń, które mają zduplikowane opisy urządzeń w pliku INF, na przykład urządzenia, które mają wiele wpisów dla wyliczania za pomocą podczerwieni i równolegle bądź dla innej magistrali. Wpis ExcludeFromSelect, w przeciwieństwie do wszystkich innych w tej tabeli, musi być wyświetlany w sekcji Flagi sterowania pliku INF. Aby uzyskać więcej informacji, zobacz sekcję InF ControlFlags .

Uwaga / Notatka

3 (VendorSetup): Jeśli nie określono wpisu VendorSetup, niestandardowe operacje konfiguracji nie są wykonywane. W szczególności żaden interfejs użytkownika nie jest dozwolony podczas instalacji procesora wydruku, instalacji monitora wydruku lub instalacji sterownika drukarki, z wyjątkiem użycia wpisu INF VendorSetup. Aby uzyskać więcej informacji na temat tego wpisu, zobacz Dostosowywanie operacji konfiguracji drukarki.

Ważne

VendorSetup jest teraz przestarzały i nie powinien być używany przez żadne nowe sterowniki v3 lub v4, które tworzysz. Te informacje na temat metody VendorSetup są udostępniane tylko do celów referencyjnych lub konserwacji istniejących sterowników w wersji 3, które już korzystają z tej dyrektywy INF.

Wpisy pliku INF drukarki są zwykle określone w sekcjach danych pliku INF drukarki. Aby zapoznać się z przykładami, zobacz przykładowe pliki INF drukarki.

Format wartości LanguageMonitor

Gdy wpis LanguageMonitor znajduje się w pliku INF drukarki, format wartości jest następujący:

LanguageMonitor=" MonitorName , MonitorDLLName "

Gdzie MonitorName jest ciągiem tekstowym reprezentującym wyświetlaną nazwę monitora, a MonitorDLLName jest nazwą pliku biblioteki DLL monitora.

Format wartości PrintProcessor

Gdy wpis PrintProcessor jest dołączony do pliku INF drukarki, format wartości jest następujący:

PrintProcessor=" PrintProcessorName , PrintProcessorDLLName "

Gdzie PrintProcessorName jest ciągiem tekstowym reprezentującym wyświetlaną nazwę procesora wydruku, a PrintProcessorDLLName jest nazwą pliku DLL.

Pliki zależne

Plik zależny to plik sterownika drukarki, który znajduje się w sekcji instalacyjnej pliku INF drukarki z identyfikatorem 66000, ale nie jest przypisany do wpisów "DriverFile", "DataFile", "ConfigFile" lub "HelpFile".

W poniższym przykładzie przedstawiono fragmenty z pliku INF, który instaluje trzy pliki zależne, kopiując je do katalogu sterownika drukarki (czyli do katalogu określonego przez 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"

W tym przykładzie Contoso.ini jest plikiem INI drukarki, Contoso.xml jest plikiem rozszerzenia bidi, a Contoso.dll jest dostosowanym składnikiem. Aby uzyskać więcej informacji na temat plików INI drukarki, plików rozszerzeń bidi i dostosowanych składników, zobacz Instalowanie dostosowanych składników sterowników i schemat komunikacji dwukierunkowej.

Operacje Point-and-Print instalują zarówno sterownik, jak i pliki zależne od sterownika na kliencie.

Dla każdego modelu drukarki można określić maksymalnie 64 pliki zależne.

Schemat komunikacji dwukierunkowej

Sekcja ControlFlags

Instalowanie niestandardowych składników sterowników

Point-and-print

Sekcja instalacji pliku INF drukarki

Manifest sterownika V4