none
Obtenir Card ID d'une carte micro SD RRS feed

  • Question

  • Bonjour à tous,
    Comment obtenir le Card ID d'une carte micro SD?
    Je crois que le card ID est une suite de 10 chiffres, mais je n'arrive pas à le trouver.
    J'espère que quelqu'un pourra m'aider.
    J'utilise windows xp
    Bonne fin de journée à tous,
    mardi 19 mai 2009 13:31

Réponses

  • Bonjour,

    Je vous donne le code en VB .net avec la total.
    Ne pas oublier l'import System.Management et de l'ajouté au projet


            Try
                Dim searcher As New ManagementObjectSearcher( _
                    "root\CIMV2", _
                    "SELECT * FROM Win32_LogicalDisk")
    
                For Each queryObj As ManagementObject In searcher.Get()
    
                    Console.WriteLine("-----------------------------------")
                    Console.WriteLine("Win32_LogicalDisk instance")
                    Console.WriteLine("-----------------------------------")
                    Console.WriteLine("Access: {0}", queryObj("Access"))
                    Console.WriteLine("Availability: {0}", queryObj("Availability"))
                    Console.WriteLine("BlockSize: {0}", queryObj("BlockSize"))
                    Console.WriteLine("Caption: {0}", queryObj("Caption"))
                    Console.WriteLine("Compressed: {0}", queryObj("Compressed"))
                    Console.WriteLine("ConfigManagerErrorCode: {0}", queryObj("ConfigManagerErrorCode"))
                    Console.WriteLine("ConfigManagerUserConfig: {0}", queryObj("ConfigManagerUserConfig"))
                    Console.WriteLine("CreationClassName: {0}", queryObj("CreationClassName"))
                    Console.WriteLine("Description: {0}", queryObj("Description"))
                    Console.WriteLine("DeviceID: {0}", queryObj("DeviceID"))
                    Console.WriteLine("DriveType: {0}", queryObj("DriveType"))
                    Console.WriteLine("ErrorCleared: {0}", queryObj("ErrorCleared"))
                    Console.WriteLine("ErrorDescription: {0}", queryObj("ErrorDescription"))
                    Console.WriteLine("ErrorMethodology: {0}", queryObj("ErrorMethodology"))
                    Console.WriteLine("FileSystem: {0}", queryObj("FileSystem"))
                    Console.WriteLine("FreeSpace: {0}", queryObj("FreeSpace"))
                    Console.WriteLine("InstallDate: {0}", queryObj("InstallDate"))
                    Console.WriteLine("LastErrorCode: {0}", queryObj("LastErrorCode"))
                    Console.WriteLine("MaximumComponentLength: {0}", queryObj("MaximumComponentLength"))
                    Console.WriteLine("MediaType: {0}", queryObj("MediaType"))
                    Console.WriteLine("Name: {0}", queryObj("Name"))
                    Console.WriteLine("NumberOfBlocks: {0}", queryObj("NumberOfBlocks"))
                    Console.WriteLine("PNPDeviceID: {0}", queryObj("PNPDeviceID"))
    
                    If queryObj("PowerManagementCapabilities") Is Nothing Then
                        Console.WriteLine("PowerManagementCapabilities: {0}", queryObj("PowerManagementCapabilities"))
                    Else
                        Dim arrPowerManagementCapabilities As UInt16()
                        arrPowerManagementCapabilities = queryObj("PowerManagementCapabilities")
                        For Each arrValue As UInt16 In arrPowerManagementCapabilities
                            Console.WriteLine("PowerManagementCapabilities: {0}", arrValue)
                        Next
                    End If
                    Console.WriteLine("PowerManagementSupported: {0}", queryObj("PowerManagementSupported"))
                    Console.WriteLine("ProviderName: {0}", queryObj("ProviderName"))
                    Console.WriteLine("Purpose: {0}", queryObj("Purpose"))
                    Console.WriteLine("QuotasDisabled: {0}", queryObj("QuotasDisabled"))
                    Console.WriteLine("QuotasIncomplete: {0}", queryObj("QuotasIncomplete"))
                    Console.WriteLine("QuotasRebuilding: {0}", queryObj("QuotasRebuilding"))
                    Console.WriteLine("Size: {0}", queryObj("Size"))
                    Console.WriteLine("Status: {0}", queryObj("Status"))
                    Console.WriteLine("StatusInfo: {0}", queryObj("StatusInfo"))
                    Console.WriteLine("SupportsDiskQuotas: {0}", queryObj("SupportsDiskQuotas"))
                    Console.WriteLine("SupportsFileBasedCompression: {0}", queryObj("SupportsFileBasedCompression"))
                    Console.WriteLine("SystemCreationClassName: {0}", queryObj("SystemCreationClassName"))
                    Console.WriteLine("SystemName: {0}", queryObj("SystemName"))
                    Console.WriteLine("VolumeDirty: {0}", queryObj("VolumeDirty"))
                    Console.WriteLine("VolumeName: {0}", queryObj("VolumeName"))
                    Console.WriteLine("VolumeSerialNumber: {0}", queryObj("VolumeSerialNumber"))
                Next
            Catch err As ManagementException
                MessageBox.Show(err.Message)
            End Try


    Normalement vous avez toute les informations sur tous les supports amovible ou pas ...
    En cas de problème n'hésiter pas


    .
    Cordialement, Troxsa
    mercredi 20 mai 2009 09:34

Toutes les réponses

  • Bonjour,

    Il faut utiliser WMI Win32_LogicalDisk avec "VolumeSerialNumber"
    Avez vous besoin de plus d'information ?


    .
    Cordialement, Troxsa
    mardi 19 mai 2009 21:21
  • Bonjour, merci pour ta réponse Troxsa.
    Mais je crois que j'ai quand même besoin de plus d'information et d'explication. Surtout sur la marche à suivre pour utiliser Win32_LogicalDisk avec "VolumeSerialNumber"

    J'ai une nouvelle carte micro SD de 2gb, j'utilise windows XP et je voudrais connaitre le Card ID de cette micro SD.
    Comment dois-je proceder en utilisant Win32_LogicalDisk pour obtenir le Card ID de la micro SD,

    Je précise que je ne dois pas obtenir le Device ID du lecteur dans lequel la carte est insérée,mais bien le Card ID number de la carte elle même.

    J'espère que tu pourra m'aider, je te souhaite une bonne journée.
    Merci.
    mercredi 20 mai 2009 06:57
  • Bonjour,

    Je vous donne le code en VB .net avec la total.
    Ne pas oublier l'import System.Management et de l'ajouté au projet


            Try
                Dim searcher As New ManagementObjectSearcher( _
                    "root\CIMV2", _
                    "SELECT * FROM Win32_LogicalDisk")
    
                For Each queryObj As ManagementObject In searcher.Get()
    
                    Console.WriteLine("-----------------------------------")
                    Console.WriteLine("Win32_LogicalDisk instance")
                    Console.WriteLine("-----------------------------------")
                    Console.WriteLine("Access: {0}", queryObj("Access"))
                    Console.WriteLine("Availability: {0}", queryObj("Availability"))
                    Console.WriteLine("BlockSize: {0}", queryObj("BlockSize"))
                    Console.WriteLine("Caption: {0}", queryObj("Caption"))
                    Console.WriteLine("Compressed: {0}", queryObj("Compressed"))
                    Console.WriteLine("ConfigManagerErrorCode: {0}", queryObj("ConfigManagerErrorCode"))
                    Console.WriteLine("ConfigManagerUserConfig: {0}", queryObj("ConfigManagerUserConfig"))
                    Console.WriteLine("CreationClassName: {0}", queryObj("CreationClassName"))
                    Console.WriteLine("Description: {0}", queryObj("Description"))
                    Console.WriteLine("DeviceID: {0}", queryObj("DeviceID"))
                    Console.WriteLine("DriveType: {0}", queryObj("DriveType"))
                    Console.WriteLine("ErrorCleared: {0}", queryObj("ErrorCleared"))
                    Console.WriteLine("ErrorDescription: {0}", queryObj("ErrorDescription"))
                    Console.WriteLine("ErrorMethodology: {0}", queryObj("ErrorMethodology"))
                    Console.WriteLine("FileSystem: {0}", queryObj("FileSystem"))
                    Console.WriteLine("FreeSpace: {0}", queryObj("FreeSpace"))
                    Console.WriteLine("InstallDate: {0}", queryObj("InstallDate"))
                    Console.WriteLine("LastErrorCode: {0}", queryObj("LastErrorCode"))
                    Console.WriteLine("MaximumComponentLength: {0}", queryObj("MaximumComponentLength"))
                    Console.WriteLine("MediaType: {0}", queryObj("MediaType"))
                    Console.WriteLine("Name: {0}", queryObj("Name"))
                    Console.WriteLine("NumberOfBlocks: {0}", queryObj("NumberOfBlocks"))
                    Console.WriteLine("PNPDeviceID: {0}", queryObj("PNPDeviceID"))
    
                    If queryObj("PowerManagementCapabilities") Is Nothing Then
                        Console.WriteLine("PowerManagementCapabilities: {0}", queryObj("PowerManagementCapabilities"))
                    Else
                        Dim arrPowerManagementCapabilities As UInt16()
                        arrPowerManagementCapabilities = queryObj("PowerManagementCapabilities")
                        For Each arrValue As UInt16 In arrPowerManagementCapabilities
                            Console.WriteLine("PowerManagementCapabilities: {0}", arrValue)
                        Next
                    End If
                    Console.WriteLine("PowerManagementSupported: {0}", queryObj("PowerManagementSupported"))
                    Console.WriteLine("ProviderName: {0}", queryObj("ProviderName"))
                    Console.WriteLine("Purpose: {0}", queryObj("Purpose"))
                    Console.WriteLine("QuotasDisabled: {0}", queryObj("QuotasDisabled"))
                    Console.WriteLine("QuotasIncomplete: {0}", queryObj("QuotasIncomplete"))
                    Console.WriteLine("QuotasRebuilding: {0}", queryObj("QuotasRebuilding"))
                    Console.WriteLine("Size: {0}", queryObj("Size"))
                    Console.WriteLine("Status: {0}", queryObj("Status"))
                    Console.WriteLine("StatusInfo: {0}", queryObj("StatusInfo"))
                    Console.WriteLine("SupportsDiskQuotas: {0}", queryObj("SupportsDiskQuotas"))
                    Console.WriteLine("SupportsFileBasedCompression: {0}", queryObj("SupportsFileBasedCompression"))
                    Console.WriteLine("SystemCreationClassName: {0}", queryObj("SystemCreationClassName"))
                    Console.WriteLine("SystemName: {0}", queryObj("SystemName"))
                    Console.WriteLine("VolumeDirty: {0}", queryObj("VolumeDirty"))
                    Console.WriteLine("VolumeName: {0}", queryObj("VolumeName"))
                    Console.WriteLine("VolumeSerialNumber: {0}", queryObj("VolumeSerialNumber"))
                Next
            Catch err As ManagementException
                MessageBox.Show(err.Message)
            End Try


    Normalement vous avez toute les informations sur tous les supports amovible ou pas ...
    En cas de problème n'hésiter pas


    .
    Cordialement, Troxsa
    mercredi 20 mai 2009 09:34
  • Bonjour, merci Troxsa pour ton soutien et tes réponses, mais je suis vraiment pas un expert en informatique et pour moi toute ta belle explication est vraiment du chinois si je peux dire. Je pensais que cela serai plus simple de trouver le card ID d'une micro SD.
    Bon pour l'instant j'en suis toujours au même point,pas de solution.
    Je te souhaite une bonne journée.
    @+
    lundi 25 mai 2009 11:44
  • Bonjour Navi924


    On va faire les choses par étape si vous le souhaitez

    Dans quel langage programmer vous ? (réponse possible :  Vb.net, C#, Vbs, C++)
    Quelle est la version de Visual Studio utilisez vous ? (réponse possible : 2002, 2003, 2005, 2008)

    Quel est le code que vous avez fait ?

    A bientot
    Cordialement, Troxsa
    lundi 25 mai 2009 13:05
  • Bonjour Navi924,

    Laisse tomber le programme de TroXsa, il donne un faux ID son programme ne marche que pour les HD et non pour les amovibles.
    Des programmes similaires sont disponibles partout sur internet.
    Le numéro obtenu en Hexa est pris a l'emplacement normal de celui d'un disque dur, le numéro ID d'une SD CARD se trouve dans la partie electronique de la carte et le seul moyen de l'avoir c'est de lire dans la memoire une fois la carte inseré sinon il existe des produit "forensic" a 2000 euros.....
    Ou alors avec un N95...
    Bye
    dimanche 7 juin 2009 19:22
  • Bonjour Navi924,

    Laisse tomber le programme de TroXsa, il donne un faux ID son programme ne marche que pour les HD et non pour les amovibles.

    Bonjour Navi924

    Faux, ça fonctionne aussi pour les dd amovible, en faite ça fonctionne pour tous les type de Disque dur reconnue en tant que tel ... et une SD est reconnue en tant que tel

    Des programmes similaires sont disponibles partout sur internet.
    Oui, tout le monde parle de WMI quand on souhaite récupérer des informations plus pousser
    Il y a aussi une autre methode qui est le DMI quelle que explication son dispo ici



    Le numéro obtenu en Hexa est pris a l'emplacement normal de celui d'un disque dur, le numéro ID d'une SD CARD se trouve dans la partie electronique de la carte et le seul moyen de l'avoir c'est de lire dans la memoire une fois la carte inseré sinon il existe des produit "forensic" a 2000 euros.....
    Ou alors avec un N95...
    Oui, c'est bien a premier vu de l'Hexa, il est pris a un emplacement normal de celui d'un disque dur c'est vrai et faux explication nécessaire ?
    le N° ID d'une SD se trouve dans la partie élétronique de la carte, en quelle que sorte oui sinon le materielle serait, me semble t'il, pas reconnue

    Un volume disque est reconue de facon unique d'ou le nom VolumeSerialNumber sinon il aurais appeler ça PortSerialNumber !




    Cordialement, Troxsa
    dimanche 7 juin 2009 22:31
  • Bonjour Troxsa

    Tu trouveras une explication de ce que je dis sur ce lien :
    http://www.gpsunderground.com/forums/showthread.php?t=2432&highlight=card+serial

    Tu me diras ce que tu en pense.....

    Cordialement elmalin
    lundi 8 juin 2009 09:20