cs_chris_031
Messages postés12Date d'inscriptionmardi 24 octobre 2006StatutMembreDernière intervention 6 décembre 2006
-
5 déc. 2006 à 12:06
NHenry
Messages postés15112Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention13 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
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 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...)
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 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
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 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.
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 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....
cs_chris_031
Messages postés12Date d'inscriptionmardi 24 octobre 2006StatutMembreDerniè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
demonsgames
Messages postés1Date d'inscriptionsamedi 7 juin 2008StatutMembreDerniè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
NHenry
Messages postés15112Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention13 avril 2024159 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