Récupérer les information de mon PC avec Msinfo32.exe

Messages postés
647
Date d'inscription
mardi 22 avril 2003
Dernière intervention
9 janvier 2017
- - Dernière réponse : rajan11
Messages postés
1
Date d'inscription
mercredi 26 septembre 2018
Dernière intervention
26 septembre 2018
- 26 sept. 2018 à 09:22
Msinfo32.exe permet d'avoir des informations sur le PC.

Avec shellExecute il est possible d'exécuter Msinfo32.exe, ce qui ouvre une fénêtre.

Est-il possible de récupérer les informations de cette fénêtre ouverte par Msinfo32.exe avec DELPHI7 ?

yvessimon
Afficher la suite 

Votre réponse

5 réponses

Messages postés
378
Date d'inscription
vendredi 20 octobre 2000
Dernière intervention
11 décembre 2013
0
Merci
Oui, tu lance Msinfo32 /report c:\MesInfo.txt

Le fichier C:\mes infos.txt contiend les infos....

Bon Coding ....

ManChesTer.
Commenter la réponse de cs_ManChesTer
Messages postés
647
Date d'inscription
mardi 22 avril 2003
Dernière intervention
9 janvier 2017
0
Merci
Avec windows 2000 je n'obtiens pas le fichier texte !

de plus il faut sélectionner la configuration puis exporter la fénêtre.



Comment passer ces paramètres avec Shellexecute ?



Merci

yvessimon
Commenter la réponse de yvessimon
Messages postés
378
Date d'inscription
vendredi 20 octobre 2000
Dernière intervention
11 décembre 2013
0
Merci
Voici un code qui ne me pose aucun problemes (adapter le path dans certans cas.....)

Function RunAndWait(Fname:String;TimeOut:Longint):Boolean; // Execute a file and wait until the end
var SInfo : TStartupInfo;
PInfo : TProcessInformation;
begin
Result:=False;
FillChar(SInfo,SizeOf(SInfo),0);
SInfo.cb:=SizeOf(TStartupInfo);
SInfo.dwFlags:=STARTF_USESHOWWINDOW or STARTF_FORCEONFEEDBACK;
SInfo.wShowWindow:=SW_SHOW;
if CreateProcess(nil,Pchar(Fname),nil,nil,False,NORMAL_PRIORITY_CLASS,nil,nil,SInfo,PInfo) then
if not WaitForSingleObject(PInfo.hProcess,TimeOut)=WAIT_FAILED then
Result:=True;
end;


procedure TForm1.Button1Click(Sender: TObject);
var Windir : Array[0..Max_Path] of Char;
DirOf : String;
j : integer;
begin
GetWindowsDirectory(Windir,Max_PAth);
DirOf:=String(Windir)+'\System32\DllCache\Msinfo32.Exe /report c:\MesInfo.txt';
RunAndWait(DirOf,-1); // lancer MsInfo32 et attendre qu'il se ferme
j:=0;
repeat
Sleep(10); // attendre que le fichier soit dispo....
inc(j);
until (fileexists('c:\MesInfo.txt')) or (j>100);
if j<=100 then
Memo1.Lines.LoadFromFile('c:\MesInfo.TXT')
else
Showmessage('Fichier info introuvable....');
end;

Bon Coding ....

ManChesTer.
Commenter la réponse de cs_ManChesTer
Messages postés
647
Date d'inscription
mardi 22 avril 2003
Dernière intervention
9 janvier 2017
0
Merci
Effectivement c'est mieux.



Par contre le fichier texte généré ne peut être lu tel quel., seulement 4 caractères s'affichent.



Je dois faire un copier coller puis sauvegarde avec un notepad pour avoir un fichier correct.

yvessimon
Commenter la réponse de yvessimon
Messages postés
1
Date d'inscription
mercredi 26 septembre 2018
Dernière intervention
26 septembre 2018
0
Merci
Bien souvent, nous ne comprenions pas comment obtenir des informations sur une tâche particulière. https://unfitpc.com/msinfo32-exe Vous pouvez facilement accéder aux informations sur msinfo32.exe et obtenir des informations supplémentaires.
Commenter la réponse de rajan11

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.