marionsname Posté(e) le 17 octobre 2006 Posté(e) le 17 octobre 2006 salut, je cherche comment extraire le n° de serie du hardware (disc dur, ram...)en cherchant j'ai trouvé ceci ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;VxGetDriveInfos - Returns informations from the selected drive;; -- Function VxGetDriveInfos; Returns informations from the selected drive.; Copyright:; ©2001 MENZI ENGINEERING GmbH, Switzerland; Arguments [Typ]:; Drv = Drive character, eg. "C" or "C:" [sTR]; Return [Typ]:; > Drive infos '(TotalSize FreeSpace DriveType FileSystem SerialNumber; ShareName VolumeName) ; Explanations:; - TotalSize (kB) [REAL]; Returns the total space of a drive or network share.; - FreeSpace (kB) [REAL]; Returns the amount of space available to a user on the specified drive; or network share.; - DriveType [iNT]; 0 = "Unknown"; 1 = "Removable"; 2 = "Fixed"; 3 = "Network"; 4 = "CD-ROM"; 5 = "RAM Disk"; - FileSystem [sTR]; Returns the type of file system in use for the specified drive, eg.; "FAT", "NTFS", "CDFS".; - SerialNumber [iNT]; Returns the serial number used to uniquely identify a disk volume.; - ShareName [sTR]; Returns the network share name (UNC) for the specified drive. If it's; not a network drive, ShareName returns a zero-length string (""). ; - VolumeName [sTR]; Returns the volume name of the specified drive.; > 0 The drive doesn't exist.; > -1 The drive is not ready. For removable-media drives and CD-ROM drives,; VxGetDriveInfos returns -1 when the appropriate media is not inserted; or not ready for access.; Notes:; - Requires ScrRun.dll (see also notes at top of page).; ;DrvObj FilSys RetVal(defun Drvinfos (Drv / )(setq FilSys (vlax-create-object "Scripting.FileSystemObject")RetVal (cond((= (vlax-invoke FilSys 'DriveExists Drv) 0) 0)((setq DrvObj (vlax-invoke FilSys 'GetDrive Drv))(cond((= (vlax-get DrvObj 'IsReady) 0) -1)((list(/ (vlax-get DrvObj 'TotalSize) 1000.0)(/ (vlax-get DrvObj 'FreeSpace) 1000.0)(vlax-get DrvObj 'DriveType)(vlax-get DrvObj 'FileSystem)(vlax-get DrvObj 'SerialNumber)(vlax-get DrvObj 'ShareName)(vlax-get DrvObj 'VolumeName)))))))(if DrvObj (vlax-release-object DrvObj))(vlax-release-object FilSys)RetVal) quand j'utilise cette fonction (drvinfos "c:") ça me donne un n° de série pour c mais quand je formate mon dd plus le même serial. ça veut dire quoi ? que c'est le n° de serie donné par windows ? sinon y-a t il d'autre moyen pour extraire le n° de série du matériel (inchangeant) je me demande si celà est possible. merci
Patrick_35 Posté(e) le 17 octobre 2006 Posté(e) le 17 octobre 2006 SalutPour moi, c'est un numéro de série qui est unique et qui change à chaque fois (comme pour les disquettes) Mais tu peux te servir de l'identifiant de ton ordinateur (setq Wsn (vlax-create-object "WScript.Network")) (alert (strcat "Nom de l'ordinateur\n" (vlax-get-property Wsn 'ComputerName))) (vlax-release-object Wsn) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 18 octobre 2006 Auteur Posté(e) le 18 octobre 2006 Merci pour ta réponse, si je comprends bien cet identifiant est donné par windows au cours de l'installation. donc si je réinstalle windows, et le cas échéant si je formate ou si je repartitionne mon ddur, ce nom va certainement changer. si tel est le cas ça ne résoud pas le problème. si tu peux m'éclairer davantage si je me trompe.merci
Patrick_35 Posté(e) le 18 octobre 2006 Posté(e) le 18 octobre 2006 OuiIl me semble bien que pour chaque formatage, le numéro est unique, ceci à cause des disquettes, donc il est logique qu'il en va de même pour les disques durs.Pour ce qui est du numéro de serie, je t'ai donné une piste, mais je ne comprends pas à quoi cela pourra bien te servir ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 18 octobre 2006 Auteur Posté(e) le 18 octobre 2006 C'est pour personnaliser l'installation d'un lisp. il me faut queque un numéro unique et invariant propre à la machine. Merci
Patrick_35 Posté(e) le 18 octobre 2006 Posté(e) le 18 octobre 2006 Eh bien le lisp que je t'ai donné correspond à ton besoin puisqu'il te donne le nom de l'ordinateur @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 19 octobre 2006 Auteur Posté(e) le 19 octobre 2006 je reste sur ma faim...il me semble pourtant pas trop difficile d'extraire ce genre de numéro du matériel. Moi qui ne maitrise pas le lisp, je suis pas qualifié pour en juger.il vaut mieux peut etre voir du coté des forums de windows. merci patrick_35
CDL Posté(e) le 19 octobre 2006 Posté(e) le 19 octobre 2006 Un idée a tester :casstet: mais j'ai pas trop le tempsDans programme tu passe la commande SHELLPour revenir en mode DOSEnsuite tu fait un batch avec un IPCONFIG /all >INFO.txtTu obtient un fichier info.txt contenant l’adresse MAC de la carte réseau (unique) :D :D
DenisHen Posté(e) le 23 octobre 2006 Posté(e) le 23 octobre 2006 Tu veux quoi, que l'installation ne se fait que sur un seul ordinateur ou qu'à chaque installation, ton "client" te contact ? Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
marionsname Posté(e) le 26 octobre 2006 Auteur Posté(e) le 26 octobre 2006 ouai, quelque chose comme ça
Patrick_35 Posté(e) le 26 octobre 2006 Posté(e) le 26 octobre 2006 Et avec l'IP du pc, ça irait comme solution ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 27 octobre 2006 Auteur Posté(e) le 27 octobre 2006 S'il te plait Patrick_35 un peu plus de précision. qu'est ce que tu veux dire par IP ? est-ce l'identifiant dont tu avais parlé plus haut ? si c'est oui alors cet identifiant est variant, c'est windows qui le définit à chaque réinstallation du système d'exploitation. si c'est autre chose je voudrais que tu m'éclaircisse davantage. merci
DenisHen Posté(e) le 27 octobre 2006 Posté(e) le 27 octobre 2006 On peut aussi par le numéro de license de Windows pris dans la base de registre (ou dans une DLL, je ne sais plus)... Mais ça ne fonctionne ni sur Linux ni sur BEos ni... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
Patrick_35 Posté(e) le 27 octobre 2006 Posté(e) le 27 octobre 2006 Quand tu fais un ipconfig sur ton pc, l'adresse qu'il te donne est fixe, c'est en réalité l'adresse de la carte et non celle qui permet de surfer qui elle peut être variable Voici un exemple récuperé sur The Swamp (defun ipaddress (/ item meth1 meth2 ml s wmi) (vl-load-com) (setq ml '() WMI (vlax-create-object "WbemScripting.SWbemLocator") meth1 (VLAX-INVOKE WMI 'ConnectServer nil nil nil nil nil nil nil nil) meth2 (vlax-invoke meth1 'ExecQuery (strcat "Select IPAddress from Win32_NetworkAdapterConfiguration")) S (vlax-for item meth2 (setq ml (append (vlax-get item 'IPAddress) ml ) ) ) ) (vlax-release-object meth1) (vlax-release-object meth2) (vlax-release-object wmi) s ) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 28 octobre 2006 Auteur Posté(e) le 28 octobre 2006 salut, je n'ai pas compris comment faire fonctionner cette fonction, une fonction defun c: avec comme résultat cet IP serait mieux. Merci de votre aide Patrick_35
Patrick_35 Posté(e) le 28 octobre 2006 Posté(e) le 28 octobre 2006 Cette fonction est faite de manière à pouvoir récuperer son résultat dans une variable un (setq ip (ipaddress)) stocke l'adresse IP dans la variable ip pour s'en servir ensuite dans le programme @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 29 octobre 2006 Auteur Posté(e) le 29 octobre 2006 avec (defun c:IPP ( / )(setq ip (ipaddress))) ça donne nil comme résultat. je l'ai testé sur un ordinateur qui n'est pas connecté à INTERNET. est-ce que ça a un rapport ? Merci
CDL Posté(e) le 29 octobre 2006 Posté(e) le 29 octobre 2006 Une adresse IP n’est pas liée physiquement aux matériel !Elle est imposée par l’utilisateur ou défini par un serveur DHCPl’adresse MAC de la carte réseau est physique !(Ou des deux : les PC portables ont souvent une carte ethernet et une carte WIFI intégrée) :casstet: [Edité le 29/10/2006 par CDL]
marionsname Posté(e) le 29 octobre 2006 Auteur Posté(e) le 29 octobre 2006 est-ce qu'il y a un moyen d'obtenir ça directement sur le registre sans passer par le shell - - - > IPCONFIG /all >INFO.txt Merci
marionsname Posté(e) le 29 octobre 2006 Auteur Posté(e) le 29 octobre 2006 j'ai exécuté IPCONFIG /all >info.txt sur le même PC qui n'est pas connecté à INTERNET. le fichier info contient uniquement ceci "IP configuration de Windows" si l'IP ne s'affiche que sur les PC connecté à INTERNET c'est une limitation qui me décourage sur cette piste. Merci
DenisHen Posté(e) le 29 octobre 2006 Posté(e) le 29 octobre 2006 "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProductId" te donne le numéro du Windows installé... 1 ProductId = 1 Windows format : xxxxx-xxx-xxxxxxx-xxxxx Il y a d'autre numéros, mais celui-ci devrait t'aller... Par contre, j'ai oublié s'il change à chaque installation du "même" windows... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
DenisHen Posté(e) le 3 novembre 2006 Posté(e) le 3 novembre 2006 Tu peux aussi aller sur VBFrance, il y aurra certainement ce que tu cherche, mais c'est plus que sûr que ce ne sera pas en LiSP... Denis... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
Morgul Posté(e) le 4 novembre 2006 Posté(e) le 4 novembre 2006 Salut, Je pense que tu souhaites protéger tes lisps pour qu'ils ne puissent s'éxecuter que sur ta machine.Plutôt, que de rechercher un numéro de série déja existant, tu peux toujours en créer un dans un fichier txt que tu caches ensuite dans l'aborescense de ton pc.Puis dans ton lisp tu demandes d'aller chercher ce fichier et de lire cequ'il y a dedans. Mais, a mon sens, le but du lisp n'est pas fait pour cette manière de pensées...C'est pour cela que ce forum existe, et que nos camarades partage leurs oeuvres. Il n'y a pas d'homme cultivé, il n'y a que des hommes qui se cultivent. Maréchal Foch
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant