begin process at 2010 09 06 23:29:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Foxpro

 > 

Divers

 > 

Aide et documentation

 > 

Numero de Serie physique d'un disque dur


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Numero de Serie physique d'un disque dur

vendredi 4 juin 2010 à 12:15:58 | Numero de Serie physique d'un disque dur

mahdi22dz

Mes Salutations.
Il existe des DLL (Ex:GetDiskSerial.dll, HardDiskId.dll ..etc) et des OCX ( SysIfo.ocx etc..) pour récupérer le N° de série du disque dur.
Je voudrais savoir s'il existe d'autres méthodes par programmation directe (VFP9) pour recuperer le N° de série permanent du disque dur .

Merci.
vendredi 4 juin 2010 à 12:44:49 | Re : Numero de Serie physique d'un disque dur

Mike Gagnon

Membre Club

Methode #1

LOCAL objWMI,colClass,objClass,strComputer
CREATE CURSOR PhysicalMedia (serialnumber c(100))
strComputer = "."
objWMI = GetObject("winmgmts:\\" +strComputer + "\root\cimv2")
colClass = objWMI.ExecQuery("Select * from Win32_PhysicalMedia",,48)
For Each objClass in colClass
INSERT INTO PhysicalMedia (serialnumber) VALUES (objclass.serialnumber)
Next
BROWSE normal

Methode #2

drvPath="c:\"
ofs=CreateObject('Scripting.FilesystemObject')
drv = ofs.GetDrive(ofs.GetDriveName(drvPath))
? drv.SerialNumber

Methode #3

CREAT TABLE TEMP FREE (COMPTE C(50))

IF !FILE("vol.GLL") && le fichier qui contient reception les information
RUN VOL C: > vol.GLL && obtenu a l'execution de la commande run
ELSE
APPEND FROM vol.GLL SDF
DELETE ALL FOR EMPTY(COMPTE) && ecraser l'enregistrement vierge
ENDIF

GO TOP
LVOLNAME = ALLTRIM(COMPTE) && linge nom du volume
SKIP
LVOLSERIAL = ALLTRIM(COMPTE) && ligne numero de serie
BROW
LSERIE_l = SUBSTR(LVOLSERIAL,RAT(LMOIN,LVOLSERIAL)-4) && localiser le numero de serie
WAIT WINDOW LSERIE_l && le numero serie obtenu en hexadecimal



Mike Gagnon
vendredi 4 juin 2010 à 20:50:53 | Re : Numero de Serie physique d'un disque dur

mahdi22dz

Merci Beaucoup pour votre réponse Mike
Quand j'exécute votre Méthode #1 je reçoit ce message d'erreur : "Field SERIALNUMBER does not accept null values".

Pour les Méthode #2 et #3, elles ne donnent que le numero de serie SOFT ( qui change après formatage ).

Merci encore une fois Mike.
dimanche 6 juin 2010 à 12:32:30 | Re : Numero de Serie physique d'un disque dur

Mike Gagnon

Membre Club

Change cette ligne

CREATE CURSOR PhysicalMedia (serialnumber c(100) )
pour
CREATE CURSOR PhysicalMedia (serialnumber c(100) NULL)

Mike Gagnon
dimanche 6 juin 2010 à 13:02:55 | Re : Numero de Serie physique d'un disque dur

mahdi22dz

Bonjour Mike
J'ai changé la ligne comme vous me l'avez demandé mais en BROWSant le cursor il ne contient que la la valeur NULL ( il n'ya pas de N° serie)
pourtant ça marche trés bien avec Getdiskserial.dll.
Merci
mardi 8 juin 2010 à 18:15:22 | Re : Numero de Serie physique d'un disque dur

mahdi22dz

Apparemment Personne n'a une idée sur la manière dont on peut obtenir le numero de serie physique d'un disque dur.
J'ai obtenu une nouvelle DLL ( HardDriveInfo.dll avec sa clé d'utilisation )
et je n'arrive pas à l'utiliser avec VFP.
j'ai besoin d'un exemple pour VFP.
Sur le site ( www.diskserialnumber.com ) il n'existe qu'un seul exemple pour Visuel Basic.
jeudi 10 juin 2010 à 13:57:33 | Re : Numero de Serie physique d'un disque dur

Mike Gagnon

Membre Club

Quelle version de Windows utilises-tu? Avec Vista et Windows 7,Windows reconnait les disques durs comme des VDH (Virtual Hard Drive) et ce VDH ne contient plus le numéro de série du disque dur lui-meme.
Si tu veux un numéro de série encore disponible dans ces Version de Windows, tu pourrais aller chercher le numéro de série de la carte maitresse, ou du Bios.
____Carte Maitresse
LOCAL lcComputerName, loWMIService, loItems, loItem, lcMID
lcComputerName = "."
loWMIService = GETOBJECT("winmgmts:\\" + lcComputerName + "\root\cimv2")
loItems = loWMIService.ExecQuery("Select * from Win32_BaseBoard")
FOR EACH loItem IN loItems
WITH loItem
MESSAGEBOX("Motherboard Product: " + TRANSFORM(.Product ))
MESSAGEBOX("Serial # :" + TRANSFORM(.SerialNumber))
ENDWITH
endfor
____Bios
clear
lcComputer = "."
loWMIService = Getobject("winmgmts:" ;
+ "{impersonationLevel=impersonate}!\\" + lcComputer + "\root\cimv2")
colBIOS = loWMIService.ExecQuery ;
("Select * from Win32_BIOS")
For Each loBIOS In colBIOS
?"Build Number: " + loBIOS.BuildNumber
?"Current Language: " + loBIOS.CurrentLanguage
?"Installable Languages: " + TRANSFORM(loBIOS.InstallableLanguages)
?"Manufacturer: " + loBIOS.Manufacturer
?"Name: " + loBIOS.Name
?"Primary BIOS: " + TRANSFORM(loBIOS.PrimaryBIOS)
?"Release Date: " + TRANSFORM(loBIOS.ReleaseDate)
?"Serial Number: " + loBIOS.SerialNumber
?"SMBIOS Version: " + loBIOS.SMBIOSBIOSVersion
?"SMBIOS Major Version: " + transf(loBIOS.SMBIOSMajorVersion)
?"SMBIOS Minor Version: " + TRANSFORM((loBIOS.SMBIOSMinorVersion))
?"SMBIOS Present: " + TRANSFORM(loBIOS.SMBIOSPresent)
?"Status: " + loBIOS.Status
?"Version: " + loBIOS.Version
Next



Mike Gagnon
samedi 12 juin 2010 à 13:31:17 | Re : Numero de Serie physique d'un disque dur

mahdi22dz

Pour la ____Carte Maitresse ça ne marche pas , je ne sais pas pourquoi , pourtant j'utilise Windows XPSP2 et aussi Windows XPSP2 avec VFP9.
Je reçois les messages : MotherBoard Product : Nettiling
: Serial# : Base board serialnumber

Pour le____Bios , ça a marché en recevant les valeurs suivantes :
.NULL.
.NULL.
Installable Languages:.NULL.
Manufacturer : Acer
Name : Deafault System Bios
Primary Bios : .T.
Release Date : 2007080900000.00000+000
Serial Number: LXALA0X0A7370A3581601
SMBIOS Version: V1.14
SMBIOS Major Version : 2
SMBIOS Minor Version : 4
SMBIOS Present : .T.
STATUT : .T.
Version :ACRSYS -1

Merci Mike


Cette discussion est classée dans : serie, dll, numero, dur, disque


Répondre à ce message

Sujets en rapport avec ce message

N° de serie du disque dur [ par anwar1966 ] Bonjour, Comment puis-je récuperer le n° du disque dur en VFP9 ? Merci à tous. Dedoublonnage [ par Django1 ] Alors voilà je suis autodidacte sur vfp9 (en gros aucune base de dev)et je voudrais dédoublonner un fichier en gardant certains enregistrements selon lire les offsets , leurs types , leur valeurs d'une DLL via Foxpro V5 [ par sikorssky77 ] bonjour fan de simulation , je souhaite developper sous foxpro un Add-on externe a FSX , mais s'appuyant de façon interactive avec FSX pendant un vo Erreur OLE - classe non enregistrée sur une machine [ par stepber ] Bonjour, J'ai une application VFP9 contenant notamment des formulaires avec des contrôles TreeView "version 1", s'appuyant sur COMCTL32.OCX. Pour ces créer une dll a partir de vfp6.0 [ par aumeric ] Bonjour Je voudrais faire une dll qui contient une fonctionexfunction donneheure()return time()Dans mon programme je voudrais appeler cette fonction Partage avec DLL [ par delphifox ] Je voudrais structurer mon projet VFP entre un EXE et plusieurs DLL.L'EXE est en VFP et les DLL aussi. La DLL doit afficher un écran de saisieAu nivea Pb Set filter to et de grid !!! [ par spoutnic_37 ] aloha,   voici mon code  qui est placé dans la methode click d'un bouton:***************************************************************************** étecter l'ajout ou la modification d'un fichier sur le disque. [ par ygr2 ] Bonjour, je cherche à coder une application qui permet de détecter l'ajout ou la modification d'un fichier sur le disque.Je ne souhaitre pas utiliser dll et tableau de caractères [ par medisys ] Bonjour, je dois déclarer dans mon application une fonction 'GetNom' de dll qui renvoie un tableau (taille 30) de caractères. Comment effectuer la d probleme dll sous windows 98 [ par ducker88 ] Bonjour à tous,Voila mon probleme, je developpe une appli en VFP9 qui dois pouvoir tourner sur les systemes d'exploitation de 98 à XPle probleme est q


Nos sponsors


Sondage...

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,265 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales