Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Informacje o błędzie
Następujący komunikat o błędzie jest generowany przez kod błędu 2084:
Service binary '<value>' should reference a CopyFiles destination file.
Ten błąd występuje, gdy plik określony w deklaracji usługi nie jest dołączany jako część pakietu sterowników. Narzędzie InfVerif sprawdza, czy istnieje odpowiednia operacja kopiowania plików dla każdego pliku binarnego usługi w pakiecie sterowników.
Plik może zostać pominięty całkowicie z dyrektyw CopyFiles tego INF lub może być obecny dla niektórych architektur lub wersji systemu operacyjnego, ale nie wszystkich z nich. Upewnij się, że jest on kopiowany dla architektury i wersji systemu operacyjnego, w których występuje błąd.
Przyczyny
Literówka
Typową przyczyną jest literówka w deklaracji binarnej usługi lub sekcji CopyFiles.
[MyCopyFiles]
Binary1.sys
...
[MyServiceInstallSection]
ServiceBinary=%13%\Binar1y.sys
W powyższej części znajduje się literówka w ścieżce do binaria, gdzie określono Binar1y.sys zamiast Binary1.sys.
Binarna skrzynka odbiorcza
Niektóre pliki binarne skrzynki odbiorczej są używane jako sterownik funkcji lub filtru dla urządzenia. Historycznie te pliki binarne mogą być używane bezpośrednio w deklaracji usługi, ale system Windows 11 i nowsze wymagają odpowiedniego odwołania do nich przy użyciu dyrektyw Include and Needs .
Aby zapoznać się z WUDFRd.sys, proszę zobaczyć Określanie reflektora w pliku INF.
W przypadku mshidkmdf.sys, gdy używany jest mshidkmdf.sys jako sterownik funkcji,
[DDInstall]
Include=MsHidKmdf.inf
Needs=MsHidKmdf.NT
; also include any existing DDInstall directives
[DDInstall.HW]
Include=MsHidKmdf.inf
Needs=MsHidKmdf.NT.HW
; also include any existing DDInstall.HW directives
[DDInstall.Services]
Include=MsHidKmdf.inf
Needs=MsHidKmdf.NT.Services
; also include any existing any DDInstall.Services directives
Aby użyć mshidkmdf.sys jako sterownika filtru, postępuj zgodnie z powyższym wzorcem, ale użyj jednej z poniższych nazw sekcji zamiast MsHidKmdf.NT.*, zastępując nazwę we wszystkich trzech sekcjach:
Filtr górny: MsHidKmdf_UpperFilter.NT Dolny filtr: MsHidKmdf_LowerFilter.NT
W przypadku korzystania z sekcji filtru należy również uwzględnić następujący wzorzec:
[DDInstall.Filters]
Include=MsHidKmdf.inf
Needs=MsHidKmdf_UpperFilter.NT.Filters
Gdzie MsHidKmdf_UpperFilter.NT.Filters należy użyć do zainstalowania WUDFRD jako górnego filtru, a MsHidKmdf_LowerFilter.NT dla dolnego filtru.
Brak cudzysłowów
Jeśli ścieżka do pliku binarnego usługi zawiera spację, ale nie ma wokół niej żadnych cudzysłowów, ten błąd zostanie wyświetlony. Na przykład
ServiceBinary=%13%\Sub Directory\Binary.dll
Ze względu na spację w ścieżce system traktuje to jako ścieżkę binarną %13%\Sub z argumentami Directory\Binary.dll, a ten błąd pojawia się, ponieważ %13%\Sub nie jest prawidłowym plikiem binarnym. Cudzysłów należy użyć do wskazania, że jest to pojedyncza ścieżka binarna, w której składnia INF używa potrójnych cudzysłowów. Następujące rozwiązanie rozwiązuje ten błąd:
ServiceBinary="""%13%\Sub Directory\Binary.dll"""