Où les informations sur la boîte de dialogue de sécurité Windows lors de l'installation du pilote vient?

StackOverflow https://stackoverflow.com/questions/8809825

Question

Nous travaillons actuellement sur un pilote de périphérique Windows basé sur WinDriver Jungo (pas vraiment la partie importante) cadre. Nous avons un certificat VeriSign et aucun problème avec le processus de signature ou la fonctionnalité du pilote.

Cependant, au cours des essais d'installation (sous Windows 7), nous voyons un comportement étrange au sujet de la boîte de dialogue de sécurité Windows qui demande confirmation lors de l'installation du pilote d'installation.

Dans cette boîte de dialogue 3 champs semblent être affichés (citation ASCII'fied):

+----------------------------------------------------------------------+
| Windows Security                                                     |
+----------------------------------------------------------------------|
| Would you like to install this device software?                      |
|                                                                      |
| Name: <SOMETHING A> <SOMETHING B>                                    |
| Publisher: <COMPANY>                                                 |
|                                                                      |
+----------------------------------------------------------------------+
| <> Always trust software from "<COMPANY>"  [INSTALL] [DON'T INSTALL] |
+----------------------------------------------------------------------|
| Security info / warning etc.                                         |
+----------------------------------------------------------------------+

Maintenant, pour certains <SOMETHING A> raison et <SOMETHING B> sont le même texte. Ce qui rend l'apparence de dialogue un peu bizarre. Ces informations proviennent du fichier INF (au moins ce que je crois en ce moment), mais jusqu'à présent, je ne pouvais pas trouver des informations détaillées sur l'endroit où il prend de.

En ce moment, on dirait qu'il répète le contenu des informations « Provider » dans le fichier INF deux fois pour un inconnu (au moins pour moi) la raison.

Quelqu'un at-il une idée ce qui pourrait provoquer ce problème plus d'expérience dans ce domaine (fichiers INF, pilote installe etc.)?

Ou peut-être un lien vers un peu plus d'informations sur les informations du fichier INF s'utilisé dans de ces dialogue?

Merci d'avoir pris le temps de lire ceci et tout conseil sur la question.
-T

[Petite mise à jour] Seule la première partie (<SOMETHING A>) semble sortir de l'INF. Ce qui rend l'origine ou la 2ème partie encore plus déroutante ...

[Mise à jour 2] Copie du INF par requête (<...> sont des modifications de contenu)

[Version]
Signature=$CHICAGO$

Provider=%PROVIDERNAME%

CatalogFile.NTamd64=<SOME CAT FILE NAME>.cat

DriverVer=<DATE>,<VERSION>

Class=<OUR COMPANY>
ClassGuid={<OUR CLASS ID>}

;---------------------------------------------------------------;
; Driver Information
;---------------------------------------------------------------;
[Manufacturer]
%PROVIDERNAME%=DeviceList,NTamd64

; x86 platform, Win9x, Windows 2000 and later
[DeviceList]
%DESCRIPTION%=DriverInstall,*<OUR DRIVER HANDLE>

; x64 platform, Windows XP x64 edition and later
[DeviceList.NTamd64]
%DESCRIPTION%=DriverInstall,*<OUR DRIVER HANDLE>

;---------------------------------------------------------------;

;---------------------------------------------------------------;
; Source/Destination Information
;---------------------------------------------------------------;
[DestinationDirs]
DefaultDestDir=10,System32\Drivers

[SourceDisksFiles]
<OUR DRIVER NAME>.sys=1

[SourceDisksNames]
;1=%INSTDISK%,,,.
;Delete the above line and uncomment the next line for WHQL
1 = %INSTDISK%,<SOME CAT FILE NAME>.cat,,

;---------------------------------------------------------------;

;---------------------------------------------------------------;
; Installation Section
;---------------------------------------------------------------;

; Installation script for Windows 2000 and later
[DriverInstall.NT]
CopyFiles=DriverCopyFiles

[DriverCopyFiles]
<OUR DRIVER NAME>.sys,,,0x22    ; COPYFLG_NOSKIP | COPYFLG_NO_VERSION_DIALOG

[DriverInstall.NT.hw]
AddReg=DriverHwAddReg

[DriverHwAddReg]
HKR,,SampleInfo,,""

; Register a new class in Windows 2000 and later
[ClassInstall32]  ; Register a new class in Windows 2000 and later
AddReg=UpDateRegistry

[UpDateRegistry]
HKR,,,,<OUR COMPANY>
HKR,,Icon,,-5

; Add device driver service
[DriverInstall.NT.Services]
AddService=<OUR SERVICE NAME>, 0x00000002, DriverService

[DriverService]
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\system32\drivers\<OUR DRIVER NAME>.sys

;------------------------------------------------------------------------------
;  String Definitions
;------------------------------------------------------------------------------

[Strings]
PROVIDERNAME=<THE NAME THAT SHOWS UP TWICE (BUT NOT REALLY)>
DESCRIPTION=<SOME DESCRIPTION>
INSTDISK="Driver Installation Disk"

Le <THE NAME THAT SHOWS UP TWICE (BUT NOT REALLY)> est ce qui apparaît dans <SOMETHING A>.

Cependant, comme le souligne avec la petite mise à jour 1, la modification de cette valeur seulement conduit à un changement dans ladite <SOMETHING A> mais pas l'autre partie.

Après avoir changé des choses autour pour tester la valeur qui est affichée dans <SOMETHING B> semble apparaître « hors de l'air », car je ne trouve pas dans le fichier INF ou RC du conducteur du tout.

Était-ce utile?

La solution

Le nom de l'invite provient de la directive DriverPackageDisplayName du fichier INF et l'éditeur vient de la signature Verified sur le fichier CAT.

Source: http://www.davidegrayson.com/signing/

Autres conseils

Ensemble avec une autre source (merci à tous les gars de NTDEV sur osronline.com [esp. Maxim]) et quelques recherches dans le registre, nous croyons que nous avons enfin pu résoudre l'origine du contenu de dialogue. Voici les choses que nous avons trouvé:

En utilisant l'exemple de dialogue à nouveau:

+----------------------------------------------------------------------+
| Windows Security                                                     |
+----------------------------------------------------------------------|
| Would you like to install this device software?                      |
|                                                                      |
| Name: <SOMETHING A> <SOMETHING B>                                    |
| Publisher: <COMPANY>                                                 |
|                                                                      |
+----------------------------------------------------------------------+
| <> Always trust software from "<COMPANY>"  [INSTALL] [DON'T INSTALL] |
+----------------------------------------------------------------------|
| Security info / warning etc.                                         |
+----------------------------------------------------------------------+

Les champs semblent être résolus comme suit:

<SOMETHING A> Semble égale à la valeur sous « fournisseur » dans votre fichier INF

<SOMETHING B> Semble avoir plusieurs cas:

  • Dans les cas où la classe de l'appareil existe déjà cette valeur est égale à la valeur de la clé de Registre appropriée de « ClassDesc ». (Trouvé sous: HKLM\SYSTEM\ControlSet001\Control\Class\<The GUID of your device class>)
  • Cependant, pour les classes de périphériques internes du système la valeur ne semble pas être affichée bien « ClassDesc » est pas vide. Il se pourrait aussi que la valeur n'est pas réglé correctement ou tout simplement ignoré « par choix » dans ces cas.
  • Rien ne sera affiché si cette installation particulière est la première fois que cette classe de périphérique est introduit dans le système.

<COMPANY> Semble simple, CN identiques à la valeur du certificat utilisé pour signer le conducteur.

Peut-être il y a encore un peu plus si s'il vous plaît ne hésitez pas à ajouter des informations supplémentaires. Mais nous espérons que ce sera au moins quelqu'un aide ponctuelle à la recherche de la même information dans la bonne direction.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top