PETITE CLASSE DE GESTION DES PROCESSUS SOUS WINDOWS
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023
-
7 mars 2011 à 14:41
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023
-
16 mars 2011 à 11:39
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 16 mars 2011 à 11:39
C'est du C++, pas du C. Donc inutile de t'embêter avec des realloc, des malloc, etc...
Utilise la STL (std::list, std::vector, etc...).
Tu as en plus un exemple en message personnel.
wisar
Messages postés32Date d'inscriptionmercredi 8 novembre 2006StatutMembreDernière intervention12 avril 2015 16 mars 2011 à 11:34
en se qui concerne l'allocation dynamique, j'ai pas encore trouvé comment on peut augmenter la taille de mon tableau au fur et a mesure que je rempli le tableau, si quelqu'un sait comment procéder avec le malloc(la technique que j'ai imagine serait de recopier la totalité du tableau dans un autre tableau allouer dynamiquement[+1 emplacement] et de faire sa a chaque fois que l'on ajoute un élément dans le tableau.mais je trouve sa plus que fastidieux et pas très propre surtout pour un tableau a double dimensions.
En se qui concerne tes erreurs moi j'utilise code::blocks comme IDE avec GNU GCC comme compilateur
voila
gandoulf42
Messages postés2Date d'inscriptionjeudi 26 août 2010StatutMembreDernière intervention15 mars 2011 15 mars 2011 à 19:22
Oui oui bien entendu, merci pour ton avertissement =)
Mais cela va déjà m'aider à avancer un peu.
Cependant quand je compile ce code dans Visual 2008 j'obtiens 4 erreurs principalement à cause des paramètres qui ne peuvent pas être convertis en LPCSTR, en attendant une correction je vais tacher de trouver un autre compilateur.
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 15 mars 2011 à 18:36
@gandoulf42: Attention, il n'a pas encore tout corrigé. Tu devrais attendre qu'il ait finalisé son projet.
gandoulf42
Messages postés2Date d'inscriptionjeudi 26 août 2010StatutMembreDernière intervention15 mars 2011 15 mars 2011 à 18:27
Très sympa ce projet ! C'est exactement ce que je cherchais pour mon serveur sur Win2k3.
Je n'ai plus qu'a reprendre l'interface graphique que j'avais mis de coté vu que je n'arrivais pas à gérer les processus.
Merci d'avoir partagé ce code qui me sera d'une grande aide pour avancer un peu dans mes projets. ;)
wisar
Messages postés32Date d'inscriptionmercredi 8 novembre 2006StatutMembreDernière intervention12 avril 2015 7 mars 2011 à 16:42
ok, je savais pas qu'il existait de tel conventions,lol
mais ok j'y penserais
d'ailleurs je vais faire tout de suite l'alloc dynamique, j'ai 2 min la, je ferais tout sa en même temps.
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 7 mars 2011 à 16:39
C'est déjà plus compréhensible.
Quelques petites remarques mineures:
* Différencie un attribut d'une variable. Il existe plusieurs conventions, j'utilise généralement celle qui met un '_' devant le nom d'un attribut. (Ex: handle2 => _handle2).
* Si tu passes des chaînes qui ne doivent pas être modifié, ajoute un "const" devant.
wisar
Messages postés32Date d'inscriptionmercredi 8 novembre 2006StatutMembreDernière intervention12 avril 2015 7 mars 2011 à 16:32
c'est bon je l'ai mis a jour sauf pour le alloc dynamique
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 7 mars 2011 à 16:31
Nos postes se sont croisés. Je vais attendre ta mise à jour :)
wisar
Messages postés32Date d'inscriptionmercredi 8 novembre 2006StatutMembreDernière intervention12 avril 2015 7 mars 2011 à 16:29
oui oui, je sais j'ai modifier tout sa hier mais apparament j'ai du oublier d'envoyer le nouveau zip,je corrige sa
je corrigerai aussi le faite de faire une alloc dynamique pour le tableau Liste
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 7 mars 2011 à 16:26
> Pour se qui est de la taille de mon tableau si on a plus de 100 processus sur un pc il y a du souci a se faire lol
Pas forcément, ça dépend sur quoi tu bosses :) Mais je t'accorde que pour un usage de particulier, c'est rare.
> je comprends pas, je sais je suis pas un pro en POO loin de la même
> mais tout se qu'il y a de déclarer dans la section private dans le fichier Processus.h se sont bien des attributs.
Non, c'est une méthode. Un attribut est une variable locale à la classe. Or ici, il n'y en a pas, donc il n'est pas nécessaire (voir contre productif) d'en faire une classe.
wisar
Messages postés32Date d'inscriptionmercredi 8 novembre 2006StatutMembreDernière intervention12 avril 2015 7 mars 2011 à 16:25
oups je viens de telecharger mon zip et je vois que ma mise a jour ne c'est pas faite correctement, je revoie le zip
je comprends mieux ta remarque
wisar
Messages postés32Date d'inscriptionmercredi 8 novembre 2006StatutMembreDernière intervention12 avril 2015 7 mars 2011 à 16:21
je comprends pas, je sais je suis pas un pro en POO loin de la même
mais tout se qu'il y a de déclarer dans la section private dans le fichier Processus.h se sont bien des attributs.
Pour se qui est de la taille de mon tableau si on a plus de 100 processus sur un pc il y a du souci a se faire lol
et de même je n'ai jamais vu de processus dont le nom excède 100 caractère
mais soit je vais faire une alloc dynamique
cptpingu
Messages postés3837Date d'inscriptiondimanche 12 décembre 2004StatutModérateurDernière intervention28 mars 2023123 7 mars 2011 à 14:41
Étant donné que tu n'as aucun attribut dans ta classe, quelle est l'intérêt d'en faire une ?
Des fonctions auraient suffit. Au pire si tu veux regrouper un ensemble de fonctions, alors c'est un namespace que tu aurais du utiliser.
List[100][100] => Et si on dépasse 100, que se passe-t-il ? Pourquoi ne pas faire de l'allocation dynamique ?
16 mars 2011 à 11:39
Utilise la STL (std::list, std::vector, etc...).
Tu as en plus un exemple en message personnel.
16 mars 2011 à 11:34
En se qui concerne tes erreurs moi j'utilise code::blocks comme IDE avec GNU GCC comme compilateur
voila
15 mars 2011 à 19:22
Mais cela va déjà m'aider à avancer un peu.
Cependant quand je compile ce code dans Visual 2008 j'obtiens 4 erreurs principalement à cause des paramètres qui ne peuvent pas être convertis en LPCSTR, en attendant une correction je vais tacher de trouver un autre compilateur.
15 mars 2011 à 18:36
15 mars 2011 à 18:27
Je n'ai plus qu'a reprendre l'interface graphique que j'avais mis de coté vu que je n'arrivais pas à gérer les processus.
Merci d'avoir partagé ce code qui me sera d'une grande aide pour avancer un peu dans mes projets. ;)
7 mars 2011 à 16:42
mais ok j'y penserais
d'ailleurs je vais faire tout de suite l'alloc dynamique, j'ai 2 min la, je ferais tout sa en même temps.
7 mars 2011 à 16:39
Quelques petites remarques mineures:
* Différencie un attribut d'une variable. Il existe plusieurs conventions, j'utilise généralement celle qui met un '_' devant le nom d'un attribut. (Ex: handle2 => _handle2).
* Si tu passes des chaînes qui ne doivent pas être modifié, ajoute un "const" devant.
7 mars 2011 à 16:32
7 mars 2011 à 16:31
7 mars 2011 à 16:29
je corrigerai aussi le faite de faire une alloc dynamique pour le tableau Liste
7 mars 2011 à 16:26
Pas forcément, ça dépend sur quoi tu bosses :) Mais je t'accorde que pour un usage de particulier, c'est rare.
> je comprends pas, je sais je suis pas un pro en POO loin de la même
> mais tout se qu'il y a de déclarer dans la section private dans le fichier Processus.h se sont bien des attributs.
Non, c'est une méthode. Un attribut est une variable locale à la classe. Or ici, il n'y en a pas, donc il n'est pas nécessaire (voir contre productif) d'en faire une classe.
7 mars 2011 à 16:25
je comprends mieux ta remarque
7 mars 2011 à 16:21
mais tout se qu'il y a de déclarer dans la section private dans le fichier Processus.h se sont bien des attributs.
Pour se qui est de la taille de mon tableau si on a plus de 100 processus sur un pc il y a du souci a se faire lol
et de même je n'ai jamais vu de processus dont le nom excède 100 caractère
mais soit je vais faire une alloc dynamique
7 mars 2011 à 14:41
Des fonctions auraient suffit. Au pire si tu veux regrouper un ensemble de fonctions, alors c'est un namespace que tu aurais du utiliser.
List[100][100] => Et si on dépasse 100, que se passe-t-il ? Pourquoi ne pas faire de l'allocation dynamique ?