Numero unique.

Résolu
Marneus73 Messages postés 344 Date d'inscription mercredi 24 janvier 2007 Statut Membre Dernière intervention 27 octobre 2008 - 31 janv. 2007 à 07:37
Marneus73 Messages postés 344 Date d'inscription mercredi 24 janvier 2007 Statut Membre Dernière intervention 27 octobre 2008 - 2 févr. 2007 à 18:24
Bonjour à tous.
Est ce que quelqu'un pourrait me passer le code qui permet sur Visual Basic Express 2005 de recuperer le numero de serie du disque dur d'un ordinateur. Ou tout autre code qui permetterait de recuperer un numero toujours identique pour un meme PC et different pour deux PC.
Merci d'avance.

11 réponses

ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
31 janv. 2007 à 15:33
3
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
31 janv. 2007 à 07:54
 Bonjour,

Ci-dessous, une réponse, mais en vbs avec wmi.

strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
For Each objOperatingSystem in colOperatingSystems
    Wscript.echo "Numéro de Série : " & objOperatingSystem.SerialNumber
Next
Set objWMIService = Nothing
Set colOperatingSystems = Nothing


jean-marc
0
Marneus73 Messages postés 344 Date d'inscription mercredi 24 janvier 2007 Statut Membre Dernière intervention 27 octobre 2008
31 janv. 2007 à 08:19
C'est super merci beaucoup, mais je suis nouveau. Je m'y suis mis depuis une semaine, donc je fais quoi avec ton code ???
Merci d'avance.
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
31 janv. 2007 à 08:20
Tu peux également utiliser la fonction GetVolumeInformation de la librairie Kernel32 de l'API de Windows pour extraire le numéro de série du disque dur.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Marneus73 Messages postés 344 Date d'inscription mercredi 24 janvier 2007 Statut Membre Dernière intervention 27 octobre 2008
31 janv. 2007 à 08:46
Ok merci mais je fais comment ???
Je ne pense pas etre capable de faire des trucs pareils au bout de 6 jours. Je me contente de creer des generateurs pour l'instant.
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
31 janv. 2007 à 08:52
Au bout de 6 jours, tu demande déjà des choses aussi pointues ?
Tu ferais mieux, je pense, d'abord d'intègrer tout les concepts de vb.net (comprendre les classes du framework, maîtriser les techniques de programmation proposées comme événementielle et objet) avec de vraiment te lancer dans de tels projets !
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
31 janv. 2007 à 08:54
Transpose en VB.Net  ce petit exemple écrit pour VB6 et trouvé sur ALLAPI. Ce devrait être presque pareil, sauf pour le type retourné par la fonction :

Private Declare Function GetVolumeInformation Lib "Kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long) As Long
Private Const MAX_FILENAME_LEN = 256
Public Function DriveSerial(ByVal sDrv As String) As Long
    Dim RetVal As Long
    Dim str As String * MAX_FILENAME_LEN
    Dim str2 As String * MAX_FILENAME_LEN
    Dim a As Long
    Dim b As Long
    Call GetVolumeInformation(sDrv & ":", str, MAX_FILENAME_LEN, RetVal, a, b, str2, MAX_FILENAME_LEN)
    DriveSerial = RetVal
End Function
Private Sub Form_Load()
    MsgBox "Serial of drive C is " & DriveSerial("C")
End Sub

Un VB.Netiste passant par là te dira les petites modifications à apporter au besoin.
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
31 janv. 2007 à 08:56
Et je souscris totalement à ce que vient d'écrire DARKSIDIOUS dans son message précédent.
0
Marneus73 Messages postés 344 Date d'inscription mercredi 24 janvier 2007 Statut Membre Dernière intervention 27 octobre 2008
31 janv. 2007 à 10:57
Les concepts de base, je pense les connaitres. Pas par coeur mais... Je viens de me taper le bouquin de 1200 pages de micro application sur VB avec des exos !
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
31 janv. 2007 à 12:09
Les concepts de base, en 6 jours, je doute que tu les connaissent. En tant que developpeur pro, pas encore totalement passé à .net, je t'annonce qu'il te faudra plusieurs semaines pour maitriser un minimum .net. Et encore plus si te connais pas la programmation à la base.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
Marneus73 Messages postés 344 Date d'inscription mercredi 24 janvier 2007 Statut Membre Dernière intervention 27 octobre 2008
2 févr. 2007 à 18:24
Merci beaucoup pour ta réponse ShareVB.
Quand aux autres:
Je suis d'accord avec vous.Je ne suis absolument pas un pro dans la prog, et je ne le deviendrais surement jamais. La motivation principale pour me mettre à programmer avec visual basic a été le fait que je puisse créer un générateur et un vérificateur de clé CD. Je fais de la conception assistée pas ordinateur (Solidworks pour ceux qui conaissent.) et j'avais besoin de diffuser mes réalisations sans qu'elles soient plagiées !!!
Voila tout est clair.
Merci quand même d'avoir pris le temps de repondre à mon message.
0
Rejoignez-nous