AFFICHER LES INFORMATIONS DE VERSION D'UN PROCESSUS OU D'UN FICHIER
boumarsel
Messages postés298Date d'inscriptionjeudi 12 juin 2003StatutMembreDernière intervention 9 juillet 2008
-
27 févr. 2006 à 18:16
boumarsel
Messages postés298Date d'inscriptionjeudi 12 juin 2003StatutMembreDernière intervention 9 juillet 2008
-
1 mars 2006 à 11:13
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
boumarsel
Messages postés298Date d'inscriptionjeudi 12 juin 2003StatutMembreDernière intervention 9 juillet 20081 1 mars 2006 à 11:13
et on sort du contexte pédagogique si on ne commente pas notre programme? y'a aucun lien direct.
je pense qu'un commentaire est important dans le cas d'un probleme complexe, c'est pas le cas de mon prog qui n'utilise que 2 ou 3 classes bien documentées par MSDN
cs_coq
Messages postés6350Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 28 févr. 2006 à 22:04
A la seule différence qui est que quand on poste une source, c'est dans un but pédagogique, pas juste pour la poster, donc les commentaires sont importants :-)
boumarsel
Messages postés298Date d'inscriptionjeudi 12 juin 2003StatutMembreDernière intervention 9 juillet 20081 28 févr. 2006 à 19:33
ta solution est plus pratique,economique,chic,fantastique...je plaisante :)
j'ai téléchargé le lien de Tim Anderson, je vais le consulter plus tard..
pour le commentaire, à vrai dire, j'aime pas trop commenter mon code sauf si je développe une application dans un cadre professionnel, mais commenter un petit programme simple comme celui la je trouve que c'est une perte de temps...
merci amigo
cs_coq
Messages postés6350Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 27 févr. 2006 à 21:43
Salut,
Il faudrait que tu commentes un peu ton code car en l'état il ne permet pas trop de voir facilement comment tu récupères les informations que tu affiches.
Ensuite n'aie pas peur de mettre des noms explicites, se limiter à 4 caractères ne se justifie pas, fait chauffer l'IntelliSense ;-)
Concernant la consommation mémoire, jette un coup d'oeil à cet article de Tim Anderson : "How much memory does my .NET application use?" : http://www.itwriting.com/dotnetmem.php
Si tu veux optimiser, les appels à ToString() sur une instance de String, c'est inutile.
Tu peux aussi avantageusement remplacer :
--------------
private void bactualiser_Click(object sender, System.EventArgs e)
{
processus.Clear();
cbprocessus.Items.Clear();
processus.AddRange(Process.GetProcesses());
IEnumerator myEnum = processus.GetEnumerator();
while (myEnum.MoveNext())
{
cbprocessus.Items.Add(((Process)myEnum.Current).ProcessName);
}
}
--------------
par
--------------
private void bactualiser_Click(object sender, System.EventArgs e)
{
processus.Clear();
processus.AddRange(Process.GetProcesses());
cbprocessus.DataSource = processus; // liaison de la source de données
cbprocessus.DisplayMember = "ProcessName"; // définition du membre dont la valeur sera affichée
}
--------------
Ce qui peut d'ailleurs te permettre d'éviter l'utilisation de la collection "processus", SelectedItem étant l'instance de la classe Process :
nomFichier=((Process)processus[cbprocessus.SelectedIndex]).MainModule.FileName;
> nomFichier ((Process)cbprocessus.SelectedItem).MainModule.FileName;
boumarsel
Messages postés298Date d'inscriptionjeudi 12 juin 2003StatutMembreDernière intervention 9 juillet 20081 27 févr. 2006 à 18:16
1 mars 2006 à 11:13
je pense qu'un commentaire est important dans le cas d'un probleme complexe, c'est pas le cas de mon prog qui n'utilise que 2 ou 3 classes bien documentées par MSDN
28 févr. 2006 à 22:04
28 févr. 2006 à 19:33
j'ai téléchargé le lien de Tim Anderson, je vais le consulter plus tard..
pour le commentaire, à vrai dire, j'aime pas trop commenter mon code sauf si je développe une application dans un cadre professionnel, mais commenter un petit programme simple comme celui la je trouve que c'est une perte de temps...
merci amigo
27 févr. 2006 à 21:43
Il faudrait que tu commentes un peu ton code car en l'état il ne permet pas trop de voir facilement comment tu récupères les informations que tu affiches.
Ensuite n'aie pas peur de mettre des noms explicites, se limiter à 4 caractères ne se justifie pas, fait chauffer l'IntelliSense ;-)
Concernant la consommation mémoire, jette un coup d'oeil à cet article de Tim Anderson : "How much memory does my .NET application use?" : http://www.itwriting.com/dotnetmem.php
Si tu veux optimiser, les appels à ToString() sur une instance de String, c'est inutile.
Tu peux aussi avantageusement remplacer :
--------------
private void bactualiser_Click(object sender, System.EventArgs e)
{
processus.Clear();
cbprocessus.Items.Clear();
processus.AddRange(Process.GetProcesses());
IEnumerator myEnum = processus.GetEnumerator();
while (myEnum.MoveNext())
{
cbprocessus.Items.Add(((Process)myEnum.Current).ProcessName);
}
}
--------------
par
--------------
private void bactualiser_Click(object sender, System.EventArgs e)
{
processus.Clear();
processus.AddRange(Process.GetProcesses());
cbprocessus.DataSource = processus; // liaison de la source de données
cbprocessus.DisplayMember = "ProcessName"; // définition du membre dont la valeur sera affichée
}
--------------
Ce qui peut d'ailleurs te permettre d'éviter l'utilisation de la collection "processus", SelectedItem étant l'instance de la classe Process :
nomFichier=((Process)processus[cbprocessus.SelectedIndex]).MainModule.FileName;
> nomFichier ((Process)cbprocessus.SelectedItem).MainModule.FileName;
27 févr. 2006 à 18:16
http://www.cppfrance.com/codes/EXECVERSIONINFO-PERMET-AFFICHER-INFORMATIONS-VERSION-PROCESSUS-OU-FICHIER_27873.aspx
la difference entre les deux :
-le déveleppement est plus simple et rapide avec .net
-la version du programme en .net consomme 20 mo de mémoire alors que la version en api windows ne demande que 2mo.
la conclusion est simple: pour developper des applications systemes sous windows, l'api ou mfc c'est la seule solution