Récupérer l'index dun Disque dur

Résolu
NHenry Messages postés 15114 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 4 mai 2024 - 8 juil. 2011 à 22:06
NHenry Messages postés 15114 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 4 mai 2024 - 10 juil. 2011 à 17:44
Bonjour,

Après avoir chercher (je ne trouves visiblement pas les bons mots clés), je viens poser ma question ici.

Elle est simple, je veux utiliser un volume TrueCrypt qui est en fait une partition cryptée et non un fichier.

Pour cela, TrueCrypt as besoin de l'identification de la partition selon le format :
\Device\Harddisk2\Partition2

Je sais que mon programme s'exécutera sur un lecteur qui sera contenu dans la première partition de ce disque, comment déterminer quel Index mettre pour le Harddisk# ?

Quels sont les composants extérieurs qu'il faut utiliser ?

Je travail en VB.NET (2010, .NET4), mais peut aussi faire un tour du coté de C# si besoin.

En attendant, je continue de chercher.

Merci d'avance.

Mon site

2 réponses

Utilisateur anonyme
8 juil. 2011 à 23:42
Bonsoir NHenry,

Peut-être que WMI pourra t'aider à récupérer les infos que tu cherches.
Voici ici les classes que tu peux exploiter dans les requêtes.

Un exemple que j'ai trouvé je ne sais plus où avec la classe DiskDrive après avoir référencé System.Management :
Imports System.Management
Public Class Form1
    Dim Listbox1 As New ListBox With {.Width 800, .Height 900}

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Me.Bounds = Listbox1.Bounds
        Dim searcher As ManagementObjectSearcher = _
                        New ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive")
        For Each wmi_HD As ManagementObject In searcher.Get()
            ListBox1.Items.Add("Model:" & vbTab & wmi_HD("Model").ToString())
            Listbox1.Items.Add("Type:" & vbTab & wmi_HD("InterfaceType").ToString())
            Listbox1.Items.Add("Index:" & vbTab & wmi_HD("Index").ToString())
            Listbox1.Items.Add("Partitions:" & vbTab & wmi_HD("Partitions").ToString())
            Listbox1.Items.Add("SCSITargetId:" & vbTab & wmi_HD("SCSITargetId").ToString())
            Listbox1.Items.Add("SCSIBus:" & vbTab & wmi_HD("SCSIBus").ToString())
            Listbox1.Items.Add("SCSILogicalUnit:" & vbTab & wmi_HD("SCSILogicalUnit").ToString())
            Listbox1.Items.Add("SCSIPort:" & vbTab & wmi_HD("SCSIPort").ToString())
            Listbox1.Items.Add("DeviceID:" & vbTab & wmi_HD("DeviceID").ToString())
            Listbox1.Items.Add("PNPDeviceID:" & vbTab & wmi_HD("PNPDeviceID").ToString())
            Listbox1.Items.Add("SerialNumber:" & vbTab & wmi_HD("SerialNumber").ToString())
            Listbox1.Items.Add("Status:" & vbTab & wmi_HD("Status").ToString())

            Listbox1.Items.Add("-------------------------------------------------")
        Next wmi_HD
        Me.Controls.Add(Listbox1)
    End Sub
End Class

Bonne nuit
3
NHenry Messages postés 15114 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 4 mai 2024 159
10 juil. 2011 à 17:44
Bonjour,

Merci banana32.

Je vais voir pour utiliser ça.

Désolé pour le temps de réponse, mais je n'ai pas eu de notification mail de la réponse.

Mon site
0
Rejoignez-nous