Symptôme : le client HLK 26085 échoue à s’installer sur Windows Server 2025 Datacenter (build 26100). Cause : décalage de branche. Solution : mettre à niveau tout le kit HLK vers la branche 26100 (ou ultérieure) et réinstaller les clients avant de relancer les tests.
Contexte : pourquoi HLK dépend de la branche de build du système
Le Windows Hardware Lab Kit (HLK) valide les pilotes et plateformes contre une version précise du noyau Windows. Pour cette raison, Microsoft publie des éditions HLK alignées sur des branches de build (26085, 26100, etc.). Dès qu’une préversion de Windows introduit des modifications de noyau, un nouveau HLK est nécessaire pour garantir la parité des API, des tests et des filtres.
Dans votre cas, vous testez Windows Server 2025 Datacenter 10.0.26100 alors que votre environnement HLK est resté en 26085. Résultat : l’installation du client refuse de continuer ou remonte des erreurs de compatibilité, et les campagnes n’aboutissent pas.
Cas pratique : environnement initial et symptôme
Un administrateur tente d’exécuter des tests HLK sur une pré‑release de Windows Server 2025 Datacenter (build 26100) avec les composants suivants :
Composant | Version actuelle |
---|---|
Système HLK Controller | 10.1.26085.26085 |
HLK Studio | 10.0.26085.1 |
HLK Client setup | depuis \\<Controller>\HLKInstall\Client\setup.cmd (build 26085) |
Au moment d’installer le client sur le serveur cible en build 26100, le script échoue, typiquement avec un message d’incompatibilité de version ou de système non pris en charge. C’est un comportement attendu lorsque les branches ne correspondent pas.
Diagnostic : incompatibilité entre HLK 26085 et Windows Server 2025 (build 26100)
- Règle d’or : Controller, Studio et Client HLK doivent être issus de la même branche de build que l’OS à valider.
- Ce que cela implique : le kit 26085 cible des OS issus de la branche 26085. Or Windows Server 2025 preview s’appuie sur un noyau 26100. Il faut donc HLK ≥ 26100.
- Conséquence concrète : l’installateur du client (26085) détecte la divergence de branche et interrompt l’installation ou installe un agent inutilisable pour cette cible.
Formule de compatibilité
Compatibilité HLK ⇔ (branche Controller = branche Studio = branche Client = branche OS)
Solution : mettre à niveau l’ensemble du kit vers 26100 (ou plus)
Le correctif est simple mais non négociable : remplacer votre kit HLK 26085 par un kit aligné 26100 (ou ultérieur si disponible) pour tous les composants : Controller, Studio, Client.
Étapes détaillées et bonnes pratiques
- Inventorier et sauvegarder
- Exportez les Projects, Playlists et résultats existants depuis HLK Studio si vous souhaitez les archiver.
- Notez les machines cibles déjà affectées (leurs noms, rôles, configurations réseau).
- Nettoyer les clients obsolètes sur les DUT (Devices Under Test)
- Sur chaque serveur Windows Server 2025 (build 26100), ouvrez Applications et fonctionnalités et désinstallez « Windows HLK Client » s’il est présent (build 26085).
- Redémarrez la machine si l’assistant le demande.
- Mettre à niveau le HLK Controller
- Sur le serveur Controller, désinstallez proprement le HLK 26085 si l’installateur 26100 ne gère pas la mise à niveau sur place.
- Installez le Controller 26100 (ou plus récent). Conservez les emplacements par défaut sauf exigence contraire (stockage de résultats, partage d’installation client, etc.).
- Installer/Mettre à niveau HLK Studio
- Sur les postes d’orchestration, installez le Studio 26100 depuis le même kit.
- Vérifiez l’écran À propos : la version doit commencer par 10.1.26100.x (ou supérieure).
- Déployer les clients 26100 sur les machines cibles
- Depuis chaque DUT en Windows Server 2025 (build 26100), exécutez en administrateur :
\\<Controller>\HLKInstall\Client\setup.cmd
- Attendez la fin de l’installation puis redémarrez si nécessaire.
- Confirmez que le DUT remonte correctement dans HLK Studio (statut Ready).
- Depuis chaque DUT en Windows Server 2025 (build 26100), exécutez en administrateur :
- Recréer (si besoin) vos Projects
- Créez un nouveau Project adapté à Server 2025 et rattachez-y vos cibles.
- Réimportez vos Playlists ou sélectionnez les suites conformes à la branche 26100.
- Lancer une exécution de fumée (smoke test)
- Démarrez une petite playlist pour valider réseau, permissions et état des services HLK.
- Vérifiez que les logs ne contiennent pas d’erreurs de « kit version mismatch ».
Vérifications rapides côté OS et côté kit
Côté Windows Server 2025 (DUT)
- Interface : lancer
winver.exe
– le numéro de build doit afficher 26100. - PowerShell :
# Numéro de build (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion').CurrentBuild # Détail de branche (utile pour diagnostiquer) (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion').BuildLabEx
Côté HLK (Controller / Studio)
- HLK Studio → Aide → À propos : vérifier une version 10.1.26100.x (ou supérieure).
- Clients : dans la vue Machines, chaque DUT doit être en Ready, sans avertissement de compatibilité.
Pourquoi la mise à niveau est indispensable
Les tests HLK encapsulent des assertions et des filtres spécifiques à la branche du noyau (interfaces WDF, comportements PnP/Power, sécurité, etc.). Une divergence Controller/Client/OS mène à des false negatives (tests qui échouent sans lien avec votre matériel ou pilote) ou tout simplement à des refus d’exécution. Sur les préversions, la rétro‑compatibilité n’est pas garantie : il faut synchroniser les branches.
Matrice de compatibilité (indicative)
Cette matrice simplifie la règle d’alignement. Elle n’exonère pas de vérifier le duo « numéro de build OS ⇔ version du kit » au moment de tester.
OS cible | Build noyau | HLK attendu | Remarques |
---|---|---|---|
Windows 11 / Server (Insider) – branche 26085 | 26085 | HLK 26085 | Valable pour la période de cette branche. |
Windows Server 2025 (preview) | 26100 | HLK ≥ 26100 | Votre scénario : 26085 → incompatible. |
Windows Server 2025 (GA/RTM) | RTM | HLK « GA » correspondant | Refaire une passe de certification pour le logo final. |
Procédure pas‑à‑pas (propre et auditable)
1) Sauvegarde et désinstallation contrôlée
- Exportez vos résultats au format supporté par HLK Studio.
- Désinstallez le Controller/Studio 26085 si la mise à jour sur place n’est pas supportée.
2) Installation du Controller 26100
- Laissez l’installeur créer/mettre à jour le partage
\\<Controller>\HLKInstall\Client
. - Vérifiez l’espace disque réservé aux résultats et aux logs.
3) Déploiement des clients 26100
- Exécutez
setup.cmd
en administrateur sur chaque DUT 26100. - Confirmez la présence du client HLK et redémarrez si demandé.
4) Relance des campagnes
- Créez un Project aligné sur Server 2025.
- Smoke test : quelques cas simples pour valider la chaîne.
- Puis exécutez vos Playlists complètes.
Automatisation : exemple PowerShell pour déployer le client
Ce fragment illustre un déploiement en rafale sur plusieurs serveurs (WinRM actif, droits admin requis) :
# Paramètres
$Controller = "HLKCTRL01"
$ClientShare = "\\$Controller\HLKInstall\Client\setup.cmd"
$Duts = @("SRV2025-01","SRV2025-02","SRV2025-03")
# Vérification de l’accessibilité du partage
if (!(Test-Path $ClientShare)) {
throw "Le partage HLKInstall\Client est introuvable : $ClientShare"
}
# Déploiement distant
foreach ($dut in $Duts) {
Write-Host "Installation du client HLK sur $dut..."
Invoke-Command -ComputerName $dut -ScriptBlock {
param($setupCmd)
# Exécution silencieuse en élevant si nécessaire
Start-Process -FilePath $setupCmd -ArgumentList "/quiet" -Wait
} -ArgumentList $ClientShare
```
# Redémarrage si besoin (exemple)
# Restart-Computer -ComputerName $dut -Force
```
}
Astuce : si vous préférez déléguer la copie locale, remplacez Start-Process
par un Copy-Item
vers %TEMP%
, puis exécutez le script depuis ce répertoire.
Contrôles post‑installation : check‑list rapide
- HLK Studio affiche 10.1.26100.x (ou supérieur).
- Machines : toutes les cibles remontent en Ready sans avertissements.
- Exécution d’une playlist courte : pas d’erreurs de type « mismatch », pas de blocages.
- Résultats : génération de rapports et export OK.
Erreurs récurrentes et remèdes
Erreur/Symptôme | Cause probable | Correctif |
---|---|---|
Client HLK refuse de s’installer | Branche HLK ≠ branche OS (26085 vs 26100) | Installer le client 26100 depuis le Controller 26100 |
DUT visible mais tests inopérants | Mix Controller/Client de branches différentes | Uniformiser Controller, Studio et Client sur 26100 |
Échecs aléatoires sur des tests génériques | Filtres/tests non adaptés à la branche | Passer sur la playlist 26100, refaire un smoke test |
Bonnes pratiques pour les préversions (Canary/Beta)
- Isoler les branches : un laboratoire par branche (26085, 26100, GA), pour éviter les confusions.
- Étiqueter vos playbooks et scripts avec la branche cible (tags « HLK‑26100 », « WS2025 »).
- Automatiser les vérifications de build (
CurrentBuild
,BuildLabEx
) avant toute exécution. - Planifier une nouvelle campagne au moment de la GA (RTM) : la certification finale exige le kit « GA » correspondant.
- Conserver des captures de version (Studio, Controller, Clients) dans vos comptes‑rendus d’essais.
Questions fréquentes
Puis‑je garder un Controller 26100 et déployer un client 26085 sur un DUT ancien ?
Non. L’infrastructure HLK ne supporte pas les mix de branches. Chaque lab doit rester homogène.
Le kit 26100 est‑il rétro‑compatible pour des OS 26085 ?
Sur les préversions, la rétro‑compatibilité n’est pas garantie. Conservez un lab 26085 dédié si vous devez encore tester cette branche.
Dois‑je repasser la certification à la sortie de Windows Server 2025 GA ?
Oui. Les exigences « Logo » finales sont liées au kit GA correspondant à la build RTM. Planifiez une nouvelle passe au moment de la publication finale.
Exemples de contrôles scriptés
Avant un déploiement massif, validez que vos cibles sont bien en 26100 :
$machines = @("SRV2025-01","SRV2025-02")
Invoke-Command -ComputerName $machines -ScriptBlock {
$cb = (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion').CurrentBuild
[pscustomobject]@{ ComputerName = $env:COMPUTERNAME; CurrentBuild = $cb }
}
Si un serveur remonte une build 26085, basculez-le sur la branche attendue ou placez-le dans un lab 26085.
Résumé exécutable
- Problème : HLK 26085 ≠ Windows Server 2025 (build 26100).
- Cause : divergence de branche (noyau 26100).
- Solution : mettre à niveau Controller, Studio et Client en 26100+.
- Procédure : désinstaller l’ancien kit → installer Controller/Studio 26100 → déployer clients 26100 depuis
\\<Controller>\HLKInstall\Client
→ vérifier que Studio affiche 10.1.26100.x → relancer les tests. - À prévoir : repasser les tests à la GA de Windows Server 2025 avec le HLK « GA » correspondant.
Conclusion
Ce cas ne relève pas d’une mauvaise configuration mais d’une incompatibilité de version. Tant que votre laboratoire reste en 26085, il est normal que l’installation du client et/ou l’exécution des suites HLK échouent sur Windows Server 2025 (build 26100). Alignez tout le kit HLK sur 26100 (ou supérieur), redéployez les clients depuis le nouveau partage, validez par un smoke test, puis exécutez vos campagnes. Vous sécurisez ainsi la fiabilité des résultats et préparez sereinement la transition vers la certification finale lorsque la version GA paraîtra.
Annexe : check‑list opérationnelle
- Confirmer la build du DUT : 26100.
- Exporter les projets/résultats HLK à archiver.
- Désinstaller HLK Controller/Studio 26085 si la MàJ in‑place n’est pas proposée.
- Installer HLK Controller/Studio 26100.
- Sur chaque DUT : exécuter
\\<Controller>\HLKInstall\Client\setup.cmd
(26100) en administrateur. - Vérifier dans Studio : Machines en Ready, version 10.1.26100.x.
- Exécuter une playlist courte (smoke test).
- Lancer la campagne complète.
- Planifier un nouveau passage à la GA de Windows Server 2025.
En bref : « même branche partout » est la règle qui évite 90 % des surprises dans les labs HLK, en particulier sur les préversions où les compatibilités ne sont pas rétro‑actives.