J'ai besoin d'obtenir le mode de transfert hdd (dma ou pio) et l'imprimer, vous pouvez le trouver dans le gestionnaire de périphériques (en cercle rouge dans la capture d'écran). Donc, j'ai besoin d'obtenir l'information dans le cercle rouge du programme. J'ai essayé d'utiliser les classes wmi, mais Win32_DiskDrive, Win32_IDEController et d'autres ne fournissent pas les informations dont j'ai besoin. Le plus proche de la fenêtre de propriétés du gestionnaire de périphériques était Win32_IDEController, le champ Win32_IDEController ["Nom"] renvoie la chaîne ATA Channel 1
.Comment obtenir le mode de transfert hdd?
J'ai également trouvé ce https://msdn.microsoft.com/en-us/library/windows/hardware/ff550142(v=vs.85).aspx, mais il utilise irb.h
, qui fait partie de ddk (wdk) et je ne l'ai jamais utilisé auparavant, donc je ne sais même pas comment utiliser cette fonction. Maintenant j'apprends le WDK) Toute solution dans n'importe quelle langue sera bonne, dans le projet j'emploie C#, mais si la solution sera dans une autre langue je peux écrire "DMA" ou "PIO" dans un dossier dans cette solution, exécutez-le .exe à partir de C# et lisez à partir du fichier. La solution OFC en C# sera plus appréciée.
Avez-vous une version anglaise? il est difficile de comprendre exactement où réside cette information dans le gestionnaire de périphériques –
@SimonMourier DeviceManager -> Contrôleurs IDE ATA/ATAPI -> liste déroulante, faites un clic droit sur celui du canal et choisissez Propriétés - Propriétés avancées (second onglet). Windows 7. – Nikita
Avez-vous essayé AdapterUsesPio à partir de la structure STORAGE_ADAPTER_DESCRIPTOR (https://msdn.microsoft.com/en-us/library/windows/desktop/ff800832.aspx), j'ai posté un exemple ici: http: // pastebin .com/LSHCy08y mais je ne peux pas tester puisque je n'ai pas de disques IDE. –