Trouver un numero de serie

Résolu
cs_chris_031 Messages postés 12 Date d'inscription mardi 24 octobre 2006 Statut Membre Dernière intervention 6 décembre 2006 - 5 déc. 2006 à 12:06
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 9 juin 2008 à 08:56
salut a tous ,
voila je doit faire l'inventaire complet d'un parc informatique
j'ai deja recuperer les config complet hard et soft des machines et les numero de serie des UC
tous sa de mon bureau
maintenant il me faut recuperer les N° de serie des ecrans et la soucis
je sais qu'il y a plein de petit logiciel qui le font genre aida32 mais le but c'est de tous recuperer en reseaux sans me taper les machine une a une
si qql a une idée merci d'avance

11 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
5 déc. 2006 à 14:55
Ces "numéros", comme tu dis, sont probablement extraits par une fonction de l'API de Windows et il y a de fortes chances pour que ce soit celle que je t'ai indiquée, à savoir la fonction  EnumDisplayDevices de la librairie "user32"...
Reste que la déclaration d'une fonction de l'API de Windows obéit à des règles à  apprendre et que son utilisation nécessite une connaissance de la fonction et de ses paramètres. Pour ce dernier point, tu as AllApi à ta disposition et dois t'en servir...
Si tout celà te parait du chinois, il vaut mieux que tu attendes de maîtriser le reste pour passer à celà.

Pour ce qui est de la déclaration d'une fonction de l'API de windows, maintenant, voilà un texte que j'ai rédigé il y a quelque temps :

L'appel de l'API est fondamentalement semblable à l'appel d'une fonction ordinaire, aves ses paramètres.

Nous appelons en réalité une fonction d'une librairie (DLL).

Il nous faut déclarer la fonction dont il s'agit et, pour ce faire, préciser les éléments suivants :

- Le nom de la fonction ou de la procédure contenue dans la Dll et que nous voulons utiliser.

- le nom de la librairie (DLL) dans laquelle se trouve cette fonction ou procédure

- les paramètres qui doivent être passés à la fonction ou procédure

- le type de la valeur qui sera renvoyée par la fonction ou procédure.

Examinons par exemple la déclaration de la fonction FindNextFile de la bibliothèque Kernel32.dll :
Cette fonction attend un paramètre hFindFile, de type long, un paramètre lpFindFileData correspondant à une structure WIN32_FIND_DATA et retourne un Long....
La syntaxe de sa déclaration est donc la suivante :

Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long

Encore faudra-t-il définir la structure, ainsi, par exemple en ce qui concerne WIN32_FIND_DATA :

Private Type WIN32_FIND_DATA
dwFileAttributes As Long
ftCreationTime As FILETIME
ftLastAccessTime As FILETIME
ftLastWriteTime As FILETIME
nFileSizeHigh As Long
nFileSizeLow As Long
dwReserved0 As Long
dwReserved1 As Long
cFileName As String * MAX_PATH
cAlternate As String * 14
End Type

et, du coup : faire au besoin des déclarations de constantes (ici par exemple la constante MAX_PATH) pour les membres de cette structure, voire, comme c'est le cas pour celle-ci, définir d'autres structures correspondant elles-mêmes à un élément de la structure principale (ici, par exemple : une structure FILETIME)

Il est évident que tous ces renseignements sont donc nécessaires. Ils peuvent être obtenus ici et là (sur le Net, dans des ouvrages spécialisés, etc....) et... ici-même, je l'espère, pour un grand nombre des fonctions et procédures les plus utilisées...)
3
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
5 déc. 2006 à 16:42
Tu ne te décourages âs et c'est bien !000

Tiens !

Essaye ceci :

Const CCDEVICENAME = 32
Const CCFORMNAME = 32
Private Type DISPLAY_DEVICE
    cb As Long
    DeviceName As String * 32
    DeviceString As String * 128
    StateFlags As Long
    DeviceID As String * 128
    DeviceKey  As String * 128
End Type
Private Type DEVMODE
    dmDeviceName As String * CCDEVICENAME
    dmSpecVersion As Integer
    dmDriverVersion As Integer
    dmSize As Integer
    dmDriverExtra As Integer
    dmFields As Long
    dmOrientation As Integer
    dmPaperSize As Integer
    dmPaperLength As Integer
    dmPaperWidth As Integer
    dmScale As Integer
    dmCopies As Integer
    dmDefaultSource As Integer
    dmPrintQuality As Integer
    dmColor As Integer
    dmDuplex As Integer
    dmYResolution As Integer
    dmTTOption As Integer
    dmCollate As Integer
    dmFormName As String * CCFORMNAME
    dmUnusedPadding As Integer
    dmBitsPerPel As Integer
    dmPelsWidth As Long
    dmPelsHeight As Long
    dmDisplayFlags As Long
    dmDisplayFrequency As Long
    dmICMMethod As Long 'NT 4.0
    dmICMIntent As Long 'NT 4.0
    dmMediaType As Long 'NT 4.0
    dmDitherType As Long 'NT 4.0
    dmReserved1 As Long 'NT 4.0
    dmReserved2 As Long 'NT 4.0
    dmPanningWidth As Long 'Win2000
    dmPanningHeight As Long 'Win2000
End Type
Private Declare Function EnumDisplayDevices Lib "user32" Alias "EnumDisplayDevicesA" (Unused As Any, ByVal iDevNum As Long, lpDisplayDevice As DISPLAY_DEVICE, ByVal dwFlags As Long) As Boolean
Private Sub Form_activate()
    Dim DD As DISPLAY_DEVICE, DevM As DEVMODE
    DD.cb = Len(DD)
    If EnumDisplayDevices(ByVal 0&, 0, DD, ByVal 0&) Then
        MsgBox "ID : " & Left$(DD.DeviceID, InStr(1, DD.DeviceID, Chr$(0)) - 1)
    Else
        Me.Print "L'extraction des informations n'a pas réussi"
    End If
End Sub


 
3
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
5 déc. 2006 à 13:30
Je n'au jamais eu besoin de m'en servir mais :
regarde donc tu côté de la fonction EnumDisplayDevicesde la librairie "user32"
et vois comment utiliser le paramètre lpDisplayDevice (le 2ème) et le membre DeviceID de la structure DISPLAY_DEVICE vers laquelle il pointe.
0
cs_chris_031 Messages postés 12 Date d'inscription mardi 24 octobre 2006 Statut Membre Dernière intervention 6 décembre 2006
5 déc. 2006 à 13:38
dsl mais je ne suis pas un pro en info est ce que tu pourrais detailler un peu plus ta solution stp
merci
0

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

Posez votre question
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
5 déc. 2006 à 13:52
"dsl mais je ne suis pas un pro en info est ce que tu pourrais detailler un peu plus ta solution stp
merci "


Plus détailler que ce que j'ai déjà écrit consisterait à coder moi-même ce que je t'ai signalé !

Je veux bien, oui (bien que l'intéressé ne soit pas moi mais toi ....) , mais pas avant que tu n'aies tenté par toi-même....
Ouvre AllApi ... vois l'exemple fourni avec la fonction en cause... tâches d'adapter.... et reviens avec une difficulté précise sur un point précis.... et (bien évidemment) le code que tu as te,nté d'écrire de ton côté.... S'IL TE PLAIT !


PS : Tu sais quoi ?  Il ne me viendrait personnellement jamais à l'idée de me mettre au volant d'une Ferrarri avant de me sentir à l'aise à celui d'un véhicule pour "pépères".....
Il ne me viendait pas non plus à l'idée de me lancer  sur une toute verglassée avant de savoir le faire sur une route toute simple....
0
cs_chris_031 Messages postés 12 Date d'inscription mardi 24 octobre 2006 Statut Membre Dernière intervention 6 décembre 2006
5 déc. 2006 à 13:59
le but ce n'est pas que tu me donne un code tous fait c'est pas ce que je veut mais si tu connais l'endrois precis ou je peut trouver ces numero apres j'essayerais de me demerder pour fair une petite appli qui va me pecher tous ca sur le reseaux
le probleme c'est que je ne trouve pas ces numero mais je sais qu'il existe puisque aida32 me les donnes
mais sinon c'est pas grave c'est deja super cool de m'avoir repondu
0
cs_chris_031 Messages postés 12 Date d'inscription mardi 24 octobre 2006 Statut Membre Dernière intervention 6 décembre 2006
5 déc. 2006 à 15:31
merci pour tous ca devrait pas mal m'aider
@+
0
cs_chris_031 Messages postés 12 Date d'inscription mardi 24 octobre 2006 Statut Membre Dernière intervention 6 décembre 2006
6 déc. 2006 à 08:48
merci enormement pour ton aide c'est super sympa de ta part
@+
0
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
6 déc. 2006 à 10:34
salut,

en VB6 :
http://www.vbfrance.com/codes/OBTENIR-INFORMATIONS-SUR-MONITEUR-ECRAN-NUMERO-SERIE-TYPE_21507.aspx

je ne l'ai pas encore en VB.Net...mais ca va venir...

ShareVB
0
demonsgames Messages postés 1 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 7 juin 2008
7 juin 2008 à 19:41
Bonjour a tous,
Je suis nouveau sur le site, donc si je m'exprime mal, je vous remercie d'avance de votre compréhension.
Je cherche le numéro de série du programme suivant : Easy NTFS Data Recovery, en effet, un de mes disque dur a été formaté par erreur et il contient des données importantes.
D'avance merci à tous
Demon's games
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
9 juin 2008 à 08:56
Bonjour

demonsgames, poste sur un nouveau sujet, celui-ci est hors de ton sujet.

Ensuite "Je cherche le numéro de série du programme", cela signifie que tu cherche uèn numéro de liscence ? Si oui, relis le règlement, et respecte-le.

Le fer à souder a besoin d'une panne pour fonctionner.
VB (6, .NET1&2), C++, C#.Net1
0
Rejoignez-nous