프로그래밍 방식으로 Windows 7 x64에 시스템 드라이버 설치


4

WinDDK를 실험하고 Windows 7 (x64) 가상 박스에 시스템 드라이버를 설치하려고합니다. .inf 파일이 있습니다.

; testdriver.inf - install information file
[Version] 
Signature = "$Windows NT$" 
Class=System
ClassGUID={4d36e97d-e325-11ce-bfc1-08002be10318} 
Provider=%tester% 
DriverVer= 12/12/2012,1.0.0

[Manufacturer]
%DRV% = TestDriver.DRV

[TestDriver.DRV]
%Tst1%=Tst1.Install, *testdriver\TST1

[DestinationDirs]
Tst1.Files.Driver.NTx86=10,System32\Drivers

[SourceDisksNames]
1="Wdm1 build directory",,,

[SourceDisksFiles.x86]
testdriver.sys=1,objfre_wxp_x86\i386

[DestinationDirs]
DefaultDestDir           = 12
Tst1.DriverFiles         = 12           ;%windir%\system32\drivers
[DefaultInstall]
OptionDesc          = %Tst1%
CopyFiles           = Tst1.DriverFiles
[DefaultInstall.Services]

[DefaultUninstall]

[DefaultUninstall.Services]

[Tst1.Install.NTx86]
CopyFiles=Tst1.Files.Driver.NTx86

[Tst1.Files.Driver.NTx86]
testdriver.sys,,,%COPYFLG_NOSKIP%

[Tst1.Install.NTx86.Services]
AddService = Tst1, %SPSVCINST_ASSOCSERVICE%, Tst1.Service

[Tst1.Service]
DisplayName    = %Tst1.ServiceName%
ServiceType    = %SERVICE_KERNEL_DRIVER%
StartType      = %SERVICE_DEMAND_START%
ErrorControl   = %SERVICE_ERROR_NORMAL%
ServiceBinary  = %10%\System32\Drivers\testdriver.sys
[Tst1.DriverFiles]
testdriver.sys

[Strings]
tester="Tester"
DRV="Driver Development"
Tst1="TST1"
Tst1.ServiceName="TestDriver"
SPSVCINST_ASSOCSERVICE=0x00000002   ; Driver service is associated with device being   installed
COPYFLG_NOSKIP=2    ; Do not allow user to skip file
SERVICE_KERNEL_DRIVER=1
SERVICE_AUTO_START=2
SERVICE_DEMAND_START=3
SERVICE_ERROR_NORMAL=1

드라이버는 "x64 무료 빌드 환경"을 사용하여 빌드됩니다. 대상 플랫폼에 드라이버를 수동으로 설치하면 바이너리가 System32 \ drivers에 복사됩니다. 그러나 레지스트리 항목이 만들어지지 않으므로 "비 플러그 앤 플레이 드라이버"에 나타나지 않으므로 장치 관리자를 통해 드라이버를 관리 할 수 ​​없습니다.   성공적으로 드라이버를 설치하려면 .inf 파일에서 어떤 항목을 수정해야합니까? 또한 바이너리를 System32 \ drivers로 옮기고 프로그래밍 방식으로 적절한 레지스트리 키를 만드는 방법으로이 프로세스를 자동화 할 수 있습니까?

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.