PS> .enable-msi.ps1 <vendor-id>:<device-id> [<vendor-id>:<device-id> ...]
PS> .enable-msi.ps1 10DE:1D01 8086:A348
Processing device 10DE:1D01.
└ Found instance: VEN_10DE&DEV_1D01&SUBSYS_8C981462&REV_A14&3335b6e8&0&00E0
MSI is currently disabled; turning it on.
Processing device 8086:A348.
└ Found instance: VEN_8086&DEV_A348&SUBSYS_1A1D15D9&REV_105&226b9205&0&E008F0
MSI is already enabled; skipping instance.
Étant donné que l'indicateur MSI d'un appareil est réinitialisé chaque fois que son pilote est mis à jour, la définition du script en exécutant automatiquement sur Shutdown / Startup garantit que MSI reste activé.
Décidez de se déployer en tant que script d'arrêt ou de démarrage. L'arrêt est recommandé car MSI est activé au startup suivant, tandis que cela prend un redémarrage supplémentaire avec un script de démarrage.
Installez enable-msi.ps1
à \<domain>SYSVOL<domain>Policies<policy-guid>MACHINEScripts<Shutdown|Startup>
.
Dans Group Policy Management Editor ( gpedit.msc
):
Configuration de l'ordinateur ➡ Politiques ➡ Paramètres Windows ➡ Scripts (démarrage / arrêt) ➡ < Shutdown | Startup > ➡ Scripts PowerShell ➡ Ajouter ...
enable-msi.ps1
<vendor-id>:<device-id> [<vendor-id>:<device-id> ...]
(par exemple 10DE:1D01 8086:A348
) Le script trouve des appareils avec les ID PCI donnés dans le registre et définit leur propriété MSISupported
à 1
, créant des clés intermédiaires au besoin.
HKLMSYSTEMCurrentControlSetEnumPCI<device-instance-path>Device ParametersInterrupt ManagementMessageSignaledInterruptProperties
MSISupported
(dword): 0
➡ 1