Ошибка при создании драйвера для ядра Windows IoT с помощью WDK

Я пытаюсь создать драйвер для подключения устройства к RPi под управлением Windows IoT, как указано в эту ссылку, используя Windows Driver Kit.

РЕДАКТИРОВАТЬ:
-Iot_adk_addonkit помещается в раздел D из-за нехватки места на C.
setenv arm среда для драйвера была установлена ​​на ARM.

Когда я выполняю следующую команду в cmd: inf2cab D:\_Kobe\driver\driver\oem71.inf

Я сначала получаю:

Authoring Drivers.oem71.wm.xml
Processing Drivers.oem71.wm.xml

что нормально, но тогда я получаю:

the system cannot find the file specified
ThreadId11364 ERROR: (0,0):
ERROR: 0x80070002
ERROR: PkgGen
ERROR: EXCEPTION: ExecuteCommands::Run: Failed to find makecat.exe. Make sure path environment variable is set right
ERROR: STACKTRACE:   bij Microsoft.Composition.ToolBox.ExecuteCommands.Run(String toolPath, String args, Boolean loadUserProfile, UInt32 retryCount, Logger logger)
ERROR:   bij Microsoft.Composition.Packaging.PkgManifest.CreateCatalog(String catPath, IEnumerable`1 filesToSign, String packageName, Keyform keyform, PackageType packageType)
ERROR:   bij Microsoft.Composition.Packaging.PkgManifest.GenerateAndSignCatalog(Boolean signCatalog)
ERROR:   bij Microsoft.Composition.Packaging.PkgManifest.SerializeMum(String outputFolder)
ERROR:   bij Microsoft.Composition.Packaging.PkgManifest.SaveManifest(String outputFolder)
ERROR:   bij Microsoft.Composition.Packaging.CbsPackage.SavePackage(String outputFolder, Boolean compressManifests)
ERROR:   bij Microsoft.Composition.Packaging.CbsPackage.SavePackage(String outputFolder)

(PkgToolBox) : error : ExecuteCommands::Run: Failed to find makecat.exe. Make sure path environment variable is set right
 Error : Failed to create package. See D:\_Kobe\driver\driver\Drivers.oem71.wm.log

В файле журнала я прочитал следующее:

Creating Drivers.oem70.wm.xml Package with version 10.0.1.0 for 
Microsoft (C) PkgGen 10.0.10011.16384

HKEY_LOCAL_MACHINE\SYSTEM\DriverDatabase\DriverPackages\oem70.inf_x86_af229e1a5336e4b5\Configurations\Minidriver32_61_Install.NT\Properties\{a45c254e-df1c-4efd-8020-67d146a850e0}\000E
D:(A;CI;KA;;;SY)
NT AUTHORITY\SYSTEM,FullControl

HKEY_LOCAL_MACHINE\SYSTEM\Setup\ResolveFilePaths
D:(A;OICI;KR;;;RC)(A;OICI;KA;;;SY)(A;OICI;KA;;;BA)
NT AUTHORITY\BEPERKT,ReadKey
NT AUTHORITY\SYSTEM,FullControl
INGEBOUWD\Administrators,FullControl

ThreadId6472 INFO 
Loading Package:C:\Users\Michel\AppData\Local\Temp\syslzvvj.dbd\update.mum\.Drivers.oem70~31bf3856ad364e35~x86~~10.0.1.0.mum
ThreadId6472 INFO Loading manifest file C:\Users\Michel\AppData\Local\Temp\syslzvvj.dbd\update.mum\.Drivers.oem70~31bf3856ad364e35~x86~~10.0.1.0.mum
ThreadId6472 INFO 
Done loading Package:C:\Users\Michel\AppData\Local\Temp\syslzvvj.dbd\update.mum\.Drivers.oem70~31bf3856ad364e35~x86~~10.0.1.0.mum
ThreadId6472 INFO Adding file of type CsiManifest with detination path  and source path C:\Users\Michel\AppData\Local\Temp\cpufor3p.ube\manifests\.Drivers.oem70.man
ThreadId6472 INFO Converting C:\Users\Michel\AppData\Local\Temp\cpufor3p.ube\manifests\.Drivers.oem70.man to CMI manifest
ThreadId6472 INFO Saving CMI Manifest File to : C:\Users\Michel\AppData\Local\Temp\ts1zo1md.thw
ThreadId6472 INFO Adding file of type Manifest with detination path  and source path C:\Users\Michel\AppData\Local\Temp\ts1zo1md.thw\x86_.drivers.oem70_31bf3856ad364e35_10.0.1.0_none_6e00b92b9c937322.manifest
ThreadId6472 INFO Loading manifest file C:\Users\Michel\AppData\Local\Temp\q24qwfnq.hul\x86_.drivers.oem70-deployment_31bf3856ad364e35_10.0.1.0_none_d8eada46b31a0442.manifest
Found Driver = C:\Users\Michel\AppData\Local\Temp\cpufor3p.ube\drivers\oem70.inf
ThreadId6472 INFO Adding file of type CsiManifest with detination path  and source path C:\Users\Michel\AppData\Local\Temp\cpufor3p.ube\manifests\dual_oem70.inf.man
ThreadId6472 INFO Converting C:\Users\Michel\AppData\Local\Temp\cpufor3p.ube\manifests\dual_oem70.inf.man to CMI manifest
ThreadId6472 INFO Copying 'D:\_Kobe\driver\driver\oem70.inf' to 'C:\Users\Michel\AppData\Local\Temp\4yykdphz.aof\x86_dual_oem70.inf_31bf3856ad364e35_10.0.1.0_none_97edf2b190a48552\oem70.inf'.
ThreadId6472 INFO Saving CMI Manifest File to : C:\Users\Michel\AppData\Local\Temp\4yykdphz.aof
ThreadId6472 INFO Adding file of type Manifest with detination path  and source path C:\Users\Michel\AppData\Local\Temp\4yykdphz.aof\x86_dual_oem70.inf_31bf3856ad364e35_10.0.1.0_none_97edf2b190a48552.manifest
ThreadId6472 INFO 
Saving CAB D:\Build\x86\pkgs\.Drivers.oem70.cab for package .Drivers.oem70
ThreadId6472 INFO 
Saving package .Drivers.oem70 to C:\Users\Michel\AppData\Local\Temp\t0zrnkcl.wnw
ThreadId6472 INFO 
Validating Package '.Drivers.oem70'
ThreadId6472 INFO Serialized C:\Users\Michel\AppData\Local\Temp\t0zrnkcl.wnw\x86_-drivers-oem70-deployment-deployment_31bf3856ad364e35_10.0.1.0_none_485b13d3c5ee921e.manifest to disk
ThreadId6472 INFO Running makecat.exe /v "C:\Users\Michel\AppData\Local\Temp\jq3yfkv5.3y1\.Drivers.oem70~31bf3856ad364e35~x86~~10.0.1.0"
--Stack Trace--
   bij Microsoft.Composition.ToolBox.ExecuteCommands.Run(String toolPath, String args, Boolean loadUserProfile, UInt32 retryCount, Logger logger)
   bij Microsoft.Composition.Packaging.PkgManifest.CreateCatalog(String catPath, IEnumerable`1 filesToSign, String packageName, Keyform keyform, PackageType packageType)
   bij Microsoft.Composition.Packaging.PkgManifest.GenerateAndSignCatalog(Boolean signCatalog)
   bij Microsoft.Composition.Packaging.PkgManifest.SerializeMum(String outputFolder)
   bij Microsoft.Composition.Packaging.PkgManifest.SaveManifest(String outputFolder)
   bij Microsoft.Composition.Packaging.CbsPackage.SavePackage(String outputFolder, Boolean compressManifests)
   bij Microsoft.Composition.Packaging.CbsPackage.SavePackage(String outputFolder)
   bij Microsoft.Composition.Packaging.CbsPackage.SaveCab(String cabPath, CompressionType compressionType)
   bij Microsoft.CompPlat.PkgBldr.CabGen.Assembly.ConvertEntries(XElement parent, Dictionary`2 plugins, Config enviorn, XElement component)
   bij Microsoft.CompPlat.PkgBldr.Program.BuildPackage(Config config, MacroResolver commandLineMacros)
   bij Microsoft.CompPlat.PkgBldr.Program.Main(String[] args)
--End Stack Trace--
Package creation failed with error -1

Я уже исправил некоторые пути, используемые в WDK, и теперь они кажутся мне нормальными.
Makecat.exe также находится в папке, где он должен быть, поэтому я тоже не понимаю его.

РЕДАКТИРОВАТЬ:
- Теперь я попытался переместить iot_adk_addonkit на диск C. Это не имело значения.
- Я также попытался включить эту папку в Путь к cmd, чтобы мне не пришлось работать в эта конкретная папка. Это тоже не сработало.

Если бы кто-нибудь мог помочь мне понять, что я делаю не так ... Спасибо уже!


person KobeFl    schedule 30.07.2018    source источник
comment
(PkgToolBox) : error : ExecuteCommands::Run: Failed to find makecat.exe. - убедитесь, что у вас установлены Windows SDK и Windows Driver Kit (WDK). docs.microsoft.com/en-us/windows/desktop/seccrypto/ makecat   -  person ImmortaleVBR    schedule 31.07.2018


Ответы (1)


Я использую IoTCoreShell-arm.cmd в iot-adk-addonkit. У меня работают диски C и D. Вы также можете использовать IoTCoreShell.cmd и выбрать ARM Architecture. Ниже показано, как я запускаю команду, вы можете попробовать проверить, работает ли она.

введите описание изображения здесь

Дополнительная информация: "Лабораторная работа 1e: добавление драйвера к изображению "

person Rita Han    schedule 31.07.2018
comment
Спасибо! Я думаю, это сработает. Однако есть одна проблема: вместо WDK_VERSION : 17134 написаноWDK_VERSION : NotFount. Но я уверен, что установил его. РЕДАКТИРОВАТЬ: моя ошибка, я думал, что установил WDK, но просто переустановил ADK. Глупый я. Я буду держать вас в курсе. - person KobeFl; 31.07.2018
comment
Я только что установил WDK, но он все еще говорит COREKIT_VER : NotFound. Какую программу мне нужно установить здесь? - person KobeFl; 31.07.2018
comment
@KobeFl Вам необходимо установить основные пакеты Windows 10 IoT, упомянутые в Получить инструменты, необходимые для настройки Windows IoT Core. - person Rita Han; 31.07.2018