Pour l'instant, le pilote n'est pas signé, vous devez donc mettre Windows en mode test (permettant aux pilotes personnalisés d'exécuter).
Pour ce faire, ouvrez une invite de commande en tant qu'administrateur et exécutez:
bcdedit.exe -set TESTSIGNING ON
bcdedit.exe -set nointegritychecks on
Redémarrez ensuite l'ordinateur ou le serveur.
Une fois redémarré, si sur un bureau, vous devriez avoir un texte écrit dans le coin inférieur droit de la vue de bureau avec "Mode de test" affiché.
Pour désactiver le mode de test, ouvrez une autre invite de commande avec l'accès et l'exécution des administrateurs:
bcdedit.exe -set TESTSIGNING OFF
Téléchargement ou compiler d'abord:
Vous avez besoin de ces fichiers dans le même dossier.
Ensuite, exécutez, dans une invite de commande Adminstrator:
DriverLoader.exe install
Démarrer le service:
DriverLoader.exe start
À tout moment, vous pouvez vérifier l'état du service donnant accès au pilote de votre système, avec cette commande:
driverquery /v | grep -i scaph
Si cela s'exécute correctement, il devrait montrer une ligne comme:
Scaphandre Dr Scaphandre Driver Serv Scaphandre Driver Serv File System System Running OK TRUE FALSE 0 4□096 0 14/01/2022 16:01:37 C:WINDOWSsystem32DRIVERSScaphandreDrv.sys 4□096
Installer Visual Studio 2019
Installer Visual Studio 2022
Selon cette documentation:
OptionNal: Installez l'EWDK
CLIK DROIT SUR SCAPHANDREDRV dans le panneau de droite, dans les propriétés générales, recherchez le champ "Platform Toolset". Il devrait dire "WindowskernelModedriver10.0".
Si le WDK n'apparaît pas dans les propriétés ScaphandRedrv comme choix d'outils de plate-forme, recherchez le coureur VSIX qui devrait avoir un chemin comme:
C:Program Files (x86)Windows Kits10VsixVS202210.0.22621.382WDK.vsix.
Fermer Visual Studio 2022, exécutez le VSIX Runner.
En haut de la fenêtre VS, sélectionnez "Release" comme cible et "x64" comme plate-forme cible.
Puis "build"> "Build Solution".
Pour construire Driverloader:
Cliquez avec le bouton droit sur la solution> Ajouter> Nouveau Projet> Projet vide
Sur le nouveau projet "Driverloader" dans la solution, clic droit> Ajouter> Élément existant, recherchez Driverloader.cpp.
Cliquez avec le bouton droit sur Driverloader dans le panneau de droite> Propriétés> Avancé, puis assurez-vous que "Set de caractères" est défini comme "Utilisez un jeu de caractères multi-octets".
Build> Build Solution (même cible et plate-forme que ScaphandReDRV).
Compiler Driverloader.exe dans userland/Service :
cd userland/Service
sudo apt install g++-mingw-w64 g++-mingw-w64-x86-64-win32 g++-mingw-w64-x86-64
x86_64-w64-mingw32-g++ DriverLoader.cpp -I/usr/x86_64-w64-mingw32/include/ddk/ -I/usr/x86_64-w64-mingw32/include/ --sysroot=. -o DriverLoader.exe -Wall -pedantic
Dans Visual Studio 2022 ou 2019, Open Extensions> Gérer les extensions, puis rechercher "Microsoft Visual Studio Projects Installateur 2019 | 2022", puis télécharger, fermer Visual Studtio.
Ensuite, un installateur VSIX doit démarrer. Redémarrez Visual Studio.
Si le projet ScaphandRedrvinstaller est affiché comme incompatible, clic droit, puis "Recharger le projet". Puis construire.
Dans C: Program Files (x86) Windows Kits 10 bin 10.0.22621.0 x64
.MakeCert.exe -r -pe -ss PrivateCertStore -n CN=hubblo.org -eku 1.3.6.1.5.5.7.3.3 ScaphandreDrvTest.cer
Dans C: Program Files (x86) Windows Kits 10 bin 10.0.22621.0 x86, lorsque vous avez déjà un fichier INF
.stampinf.exe -f C:UsersMYUSERsourcereposwindows-rapl-driverScaphandreDrvScaphandreDrv.inf -d 03/11/2023 -v 0.0.1
Alors (besoin de modifier le fichier inf pour réussir avec x64, todo document cette partie)
.Inf2Cat.exe /driver:C:UsersMYUSERsourcereposwindows-rapl-driverScaphandreDrv /os:10_X64
Alors
.signtool.exe sign /v /fd sha256 /s PrivateCertStore /n hubblo.org "C:UsersMYUSERsourcereposwindows-rapl-driverScaphandreDrvscaphandredrv.cat"
Alors (en tant qu'administrateur)
.certmgr.exe /add "C:UsersMYUSERsourcereposwindows-rapl-driverScaphandreDrvScaphandreDrvTest.cer" /s /r localMachine root
Une fois la signature appropriée, vous devriez pouvoir installer le pilote avec:
& "C:Program Files (x86)Windows Kits10Tools10.0.22621.0x64devcon.exe" install .ScaphandreDrv.inf rootSCAPHANDREDRV
Si la signature est correcte (même si elle n'est pas fiable), vous devriez obtenir cette fenêtre contextuelle:

Ce pilote a été développé pour un cas d'utilisation spécifique: activer Scaphandre sur Windows.
Veuillez consulter ces diapositives pour mieux comprendre comment et pourquoi ce pilote a été développé.
Pour les versions compatibles Windows 11 et +, le compte d'administration est hlkadminuser avec le mot de passe défini au démarrage. Pour les versions précédentes, il s'agit de Hlkadminuser / TestPassword, 1.
Nous téléchargeons un VHDX, qui ne peut être utilisé que dans Hyper-V. Si vous n'avez pas de fenêtres compatibles Hyper-V, vous devez la convertir en VHD ou VDI pour une utilisation dans une boîte virtuelle
.VBoxManage.exe clonemedium disk "C:UsersMYUSERDownloads2019DC-22621.1.ni_release.220506-1250-HLK.vhdx" "C:UsersMYUSERDownloads2019DC-22621.1.ni_release.220506-1250-HLK.vhd" --format vhd
Modifiez l'interface réseau dans une boîte virtuelle de NAT à l'interface pontée, puis acceptez la découverte sur le réseau à partir de l'invité Windows.
N'oubliez pas d'activer le mode de découverte de réseau: Control Panel > Network and Internet > Network and Sharing center > Advanced Sharing Settings puis cliquez sur Activer la découverte de réseau, puis enregistrez les modifications
Si cela ne fonctionne pas (si lors de la réouverture de ce panneau, le bouton est toujours sur «désactiver», suivez cette procédure: https://learn.microsoft.com/en-us/troubleshoot/windows-lient/networks/cannot-turn-on-network-discovery
Plus précisément, Open Run and Launch Services.MSC Si l'un des services mentionnés dans le DOC n'est pas démarré: clic droit, mode: manuel, postuler, démarrer
Assurez-vous que les services de dépendance suivants sont démarrés:
- Client DNS
- Fonction Discovery Resource Publication
- Découverte SSDP
- Hôte de l'appareil UPNP
Configurez le pare-feu Windows pour permettre la découverte de réseau en suivant ces étapes:
- Ouvrez le panneau de configuration, sélectionnez le système et la sécurité, puis sélectionnez le pare-feu Windows.
- Dans le volet gauche, sélectionnez Autoriser une application ou une fonctionnalité
- Ouvrez le panneau de configuration, sélectionnez le système et la sécurité, puis sélectionnez le pare-feu Windows.
- Dans le volet gauche, sélectionnez Autoriser une application ou une fonctionnalité via un pare-feu Windows.
- Sélectionnez les paramètres de modification. Si vous êtes invité à un mot de passe ou à une confirmation administrateur, entrez le mot de passe ou fournissez une confirmation.
- Sélectionnez la découverte du réseau, puis sélectionnez OK.
- Configurez d'autres pare-feu du réseau pour permettre la découverte de réseau.
- Allumez la découverte de réseau dans le réseau et le centre de partage.
Sources
Todo automatisant le processus:
Dépendances:
Compilation: x86_64-w64-mingw32-g ++ driverloader.cpp -o driverloader.exe
Le code obtenant les informations du fabricant du processeur (via le CPUID) utilise un assemblage incliné.
Pour compiler sur Linux, nous devons dire à GCC d'utiliser la syntaxe Intel et non l'AT&T. Nous devons également spécifier que nous ne voulons pas d'un axécutable avec position indépendante.
Exemple: gcc -masm = Intel -No-Pie cpuid.c -o cpuid
Pour compiler sur Windows, nous pouvons entendre un assemblage 32 bits mais pas 64 bits (le compilateur MSVC ne le prend pas en charge).
Pour résoudre ce problème, la fonction CPUID est écrite en assemblage pur correspondant à Windows ABI (x86 et x86_64). Pour compiler, utilisez ces commandes:
Pour compiler l'agent, y compris la fonction CPUID , faites-le selon l'architecture:
FICHIERS INTÉRESSANTS DANS LE NOYAU LINUX:
Construisez en mode de libération puis réessayez!
"F: Windows Kits 10 bin x86 inf2cat.exe" / Driver: C: Users nulse Documents github test / os: 10_19h1_x64,10_rs5_x64, serverrs5_x64,10_rs4_x64
Voir https://docs.microsoft.com/en-us/windows-hardware/drivers/devtest/inf2cat
DriverQuery n'affiche aucune trace d'une version précédente du pilote, mais vous regardez une erreur 1078 lorsque vous essayez d'en installer une nouvelle avec DriverLoader.exe Enusre Vous ne voyez pas Scaphandre Service dans Services.MSC, assurez-vous d'avoir désinstallé le package complet dans l'ajout ou de supprimer les programmes si rien ne fait, puis supprimez la série de registres restante qui a le nom du service, dans Hkey_Local_machine CurrentConTol https://social.msdn.microsoft.com/forums/windowsdesktop/en-us/ed214b30-b094-43c0-85e8-4702da85b5dd/add-service-failed-to-create-service?forum=wdk)