Проблема с установкой драйвера с помощью Installshield - PullRequest
0 голосов
/ 16 марта 2012

Я просто пытаюсь установить с помощью Installshield 2009 демонстрационный драйвер, написанный мной. Я написал демонстрационный файл inf. Я также написал простое консольное приложение на VC ++.

Затем я захотел установить приложение вместе с драйверами, и поэтому я создал Basic MSI Project и добавил к нему exe своего приложения. После этого я добавил в него свой inf-файл с помощью мастера драйверов устройств (находится в разделе «Настройка дизайна >>> Новая функция»), где installshield также добавил файлы .sys и .cat.

Теперь проблема в том, что когда я запускаю сгенерированный MSI-файл, он только устанавливает приложение, а драйвер не устанавливается. Во время установки у меня открывается окно безопасности Windows, и когда я нажимаю «Все равно установить этот драйвер», процесс завершается. Но в system32 / drivers нет драйверов и они не занесены в реестр.

Демонстрационный драйвер содержит только основные функции драйвера с printfs в них. Инф содержит:

[version]
Signature="$CHICAGO$"
Class=RKP_LTO_DEMO_DD

; GUID created by me usingGUIDGEN tool
ClassGuid={03E9C4D5-178E-4684-B407-A3E103D71CE9}

Provider=%DD_DEMO%
CatalogFile = dd_demo.cat
DriverVer=02/24/2012, 2.0.1.2

[DefaultInstall]
CopyFiles=XYZ_Device.Copy
AddReg=XYZ_DeviceHW

[XYZ_Device.Copy]
demo_dd.sys

[XYZ_DeviceHW]
HKLM,SYSTEM\CurrentControlSet\services\,demo_dd,0x00000000,"%12%\demo_dd.sys"

[SourceDisksNames]
1=%RTO_DISK_NAME%,Sample_DIF,0

[SourceDisksFiles]
demo_dd.sys=1,,

[DestinationDirs]
XYZ_Device.Copy=12

[Strings]
SPSVCINST_ASSOCSERVICE= 0x00000002
DD_DEMO = "RKP XYZ DD DEMO"
DisplayName = "RKP XYZ Driver Install Frameworks"
ClassName = "rkp xyz dd_demo"
DD_DEMO.DeviceDesc = "Rkp Xyz WI DIF Sample"
rto.SVCDESC = "RKP XYZ Device Driver"
RTO_DISK_NAME ="RKP XYZ Installation Disk"

Журнал установки installshield выдает следующее сообщение (0xE0000301):

DIFXAPP: INFO: ENTER: DriverPackageInstallW
DIFXAPP: WARNINGRIVER_PACKAGE_LEGACY_MODE flag set but not supported on Plug and Play driver on VISTA. Flag will be ignored.
DIFXAPP: INFO: Installing INF file 'C:\Program Files (x86)\DEMO\My Product Name\dd_demo\dd_demo.inf' (Plug and Play).
DIFXAPP: WARNING:No device Ids found in INF 'C:\Windows\System32\DriverStore\FileRepository\dd_demo.inf_amd64_neutral_c3727dded0bf2410\dd_demo.inf' for current platform.
DIFXAPP: INFO: RETURN: DriverPackageInstallW (0xE0000301)

Драйвер устанавливается, когда я устанавливаю его с помощью run32dll.exe. Я проверил это, проверив папку system32 / drivers и просмотрев запись реестра.

Но с помощью installshield он не устанавливает его. Кто-нибудь, пожалуйста, дайте мне знать, что может быть проблема и как ее решить? Как решить эту проблему?

...