jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 15 févr. 2007 à 08:47
Il te faut simplement un timer et une listbox (invisible) à laquelle tu ajoutes les applications ouvertes.
Dans te timer : une instruction qui, toutes les x millisecondes, va faire l'inventaire des applis en cours et :
- si nombre > le nombre présent dans ta liste : faire une boucle sur les applis ouvertes et sur ta listbox pour déceler celle qui vient d'être ajoutée ... l'ajouter à ta listbox et envoyer ton message.
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 15 févr. 2007 à 09:20
Ceci étant, une chose mechagrine un peu ...
Celui qui lance une application sait bien ce qu'il lance, non ? (et n'a donc aucun besoin qu'on le lui fasse savoir)...
Quelle sera donc ta prochaine question ?
- comment inscrire tout celà dans un fichier discret ?
ou
- comment faire exécuter de façon silencieuse (à l'insu de l'utilisateur, donc) l'envoi d'un email ?
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 15 févr. 2007 à 13:30
Encore aucun prob, toutes ces questions émanent de petits plaisantins qui n'ont pas compris ce qu'est un interprété et son champ d'application.
Un monitoring progs se fait par hook CBT, infaisable en interprété comme tout ce qui est prog system, idem pour ce qui est d'automatiser un prog externe.
cs_snake57
Messages postés204Date d'inscriptionvendredi 19 novembre 2004StatutMembreDernière intervention 1 novembre 2011 15 févr. 2007 à 13:38
Oui alors je vous doit quelques précisions. Le but n'est pas du tout de lister les appli d'un ordi autre que le miens.
Le programme tournera bien sur mon propre ordi.
Et il va me servire a lancer simultanément plusieurs appli.
Par ex si je lance msn alors le prog le remarque et il si jamais je suis pas connecter au net il va le faire.
Ou bien encore, si je lance emule Il vérifie que mon disque externe soit connecté et si il le trouve pas il me le dit.
Voila c'est pour faire des petites choses de ce genre la.
jmfmarques tu parles d'une instruction dans un timer qui, toutes les x millisecondes, va faire l'inventaire des applis en cours. Peut tu me donner plus d'infos la dessus. c'est justement cela qui me bloque.
vicosta
Messages postés178Date d'inscriptionlundi 5 juin 2006StatutMembreDernière intervention30 novembre 2011 15 févr. 2007 à 13:43
je pense que notre ami snake57 veut connaître le nom des programmes qui se lancent, y compris ceux de derrière plan.
j'ai fait précisement un programme dans le genre, cela me permettait de stopper, sur demande, les processus que je n'avais pas accepté auparavant. C'était hautement pratique quand j'avais le SP1, puisque des programmes inconnus riscaient de se créer/lancer en navigant sur internet
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 15 févr. 2007 à 13:47
C'est un vrai bouffe cpu cette histoire, ok pas d'autre moyen en vb mais en ce cas va plutot apprendre le C au lieu de perdre ton temps avec des trucs nuisibles de ce genre.
Un hook tourne sans timer, sans listbox, sans... RIEN d'autre qu'un event qui te sera transmis par le systeme. Le temps passé à cette inutilité sera autant que tu pourrais passer à apprendre la prog, je ne comprends pas qu'on puisse passer à coté d'une telle évidence.
cs_snake57
Messages postés204Date d'inscriptionvendredi 19 novembre 2004StatutMembreDernière intervention 1 novembre 2011 15 févr. 2007 à 13:58
Je connais le C Brunews mais vraiment la base. Si ce que tu propose de faire est abordable par un debutant je suis preneur d'un ou deux liens qui pourrais m'aider.
Voici qlqs liens mais je me doute que tu ne pourras pas suivre, le C doit être parfaitement maitrisé pour en obtenir qlq résultat intéressant, impossible d'y aller par tatonnement comme en VB ou autre. Il ne faut pas craindre d'y investir temps et efforts, c'est à ce prix qu'on obtient la liberté de produire TOUT ce que l'on veut.
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 15 févr. 2007 à 18:49
Salut,
Certe, le C est rapide et permet plus de contrôle, mais il est plus compliqué quand on débute.
Sous VB6, tu peux facilement lister les processus en cours d'execution
avec les fonctions que tu utiliserais aussi en C pour faire de même.
(Certe aussi, un hook serait nettement plus intéressant côté
consommation CPU).
Vala un exemple de code ou on cherche un nom de processus parmis ceux qui tournent :
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 15 févr. 2007 à 19:08
Mais c'est justement là le point fondamental, il n'y a rien à lister. On est informé par le simple fait qu'une instance de la dll hook est mappée dans le processus démarrant et cela de manière automatique sans timer ni quoi que ce soit.
Il n'est pas question de savoir si le C est plus rapide puisque c'est une évidence, il est par contre opportun d'indiquer que c'est LE langage de la prog system (comme de tout vrai prog d'ailleurs).
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 15 févr. 2007 à 19:54
NON, hors souris et claviers que Windows palce en "shared resource", il est absolument impossible de faire un hook systeme en langage interprété quel qu'il soit pour la simple raison qu'ils ne peuvent produire de DLL.
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 16 févr. 2007 à 11:31
Seulement voilà, le VB6 est pas forcément interprété. la version pro
permet certe de compiler vers du code intermédiare, mais aussi vers du
langage machine tout ce qu'il y a de plus compatible IA32. Seul souci,
le compilo est franchement mauvais, et on se fait souvent très peur
quand on désassemble un exe VB6...
On peut faire une dll classique via ce add-in qui permet aussi très accéssoirement de mettre de l'assembleur et du C au beau milieu du code VB6.
Sachant qu'en plus VB dispose des instructions address of qui permet de
récupérer l'adresse d'une routine (Qui sont en stdcall, donc ok pour
servir de call back pour le Win32), et de de tout ce qu'il faut pour
récupérer l'adresse d'une variable (VarPtr, ...)
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 16 févr. 2007 à 11:48
Ce genre de bidule add-in est totalement déconseillé et à proscrire, il ne fera que donner l'illusion (pour preuve ton post) qu'on produit du natif alors qu'il n'en est absolument rien.
La seule chose que le compilo produit de natif dans un binaire c'est les boucles numériques, hors cela TOUT est transcrit en un "call vbMethodexxx" vers la virtual machine.
Imagine le system devant mapper une copie de virtual machine dans chaque processus en cas de hook system, à exclure.