CONTEXTMENU - AJOUT D' UN ITEM DS LE POPMENU DE WINDOWS EXPLORER!

cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 - 14 juil. 2005 à 17:40
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 - 14 févr. 2006 à 14:06
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/32705-contextmenu-ajout-d-un-item-ds-le-popmenu-de-windows-explorer

cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
14 févr. 2006 à 14:06
Salut Forman,
il faut juste en deduire que le monde est un equilibre entre le bien et le mal ... Malheureusement l' un ne va pas sans l' autre. Moi ce qui m' interessait c' est de montrer comment font les utilitaires comme winzip etc ....A+
cs_Forman Messages postés 600 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 6 avril 2010 1
14 févr. 2006 à 10:08
>Dommage que ça va profiter à ceux qui ont des intentions malveillantes, on retrouve ça chez les >codeurs de malware entre autre.

Faut-il en déduire que windows est une boîte à malware?
lol
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
27 juil. 2005 à 10:12
Merci c3rb3r3,
le parametre /u me fut donné par l' aide de Windows et ça marche plutot bien, même si quelques fois on a du mal à recompiler parce que la dll est tjrs en utilisation.
Fermant la fenêtre de l' explorateur de Windows résoud souvent le problème pour éviter le redémarrage du PC.
A+
c3rb3r3 Messages postés 38 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 25 janvier 2006
27 juil. 2005 à 02:59
HuMm, je ne sais pas si mal compris mais dans ma petite tête le regsvr32 /u ne décharge pas la librairie du processus explorer, par contre vous pouvez la décharger sans trop de pb.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/freelibrary.asp

HuMMm, c'est normal que ça ne décharge pas la lib du process explorer ?

Un p'tit kill sur explorer et c'est good ou bien en utilisant FreeLibrary de Kernel32 pour faire proprement mais bon ... y'a que moi ou bien ...

Ton code est propre (je me répète mais c'est appréciable).
c3rb3r3 Messages postés 38 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 25 janvier 2006
27 juil. 2005 à 02:30
Bonne source.
Dommage que ça va profiter à ceux qui ont des intentions malveillantes, on retrouve ça chez les codeurs de malware entre autre.

Sinon au niveau de la compréhension, c'est simple, c'est propre, merci bien.

Voilou.
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
25 juil. 2005 à 10:14
Pour l' icone, je pense que c' est possible.
En ce qui concerne regsvr32, il faut utiliser le paramètre /u pour le unregister.
A+
cs_costello Messages postés 136 Date d'inscription lundi 2 septembre 2002 Statut Membre Dernière intervention 15 février 2006
23 juil. 2005 à 00:00
excusez-moi du double-post, je n'avais pas remarqué, mais il y a une petite erreur dans le message de roud59: ce n'est pas "regsvr32.dll" qu'il faut exécuter mais "regsvr32" tout court (c'est un exécutable, naturellement)
cs_costello Messages postés 136 Date d'inscription lundi 2 septembre 2002 Statut Membre Dernière intervention 15 février 2006
22 juil. 2005 à 23:57
Question: est-il possible de choisir une icone pour l'item du menu contextuel, comme Winrar ou Winzip?
merci d'avanz
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
18 juil. 2005 à 10:26
Merci roud59 pour ces précisions afin d' utiliser regsvr32.dll ...
Utilisateur anonyme
14 juil. 2005 à 23:08
Tres bonne source. On en trouvera facilement une utilité.
roud59 Messages postés 99 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 26 juillet 2007 2
14 juil. 2005 à 22:25
J'ai trouvé et c'était facile. Pour que ça fonctionne, il suffit de retirer la ligne "FList.SaveToFile('c:\dat\delme.txt');" ou de l'adapter au besoin... un oubli lors du nettoyage du code sûrement.
Utiliser regsvr est très pratique pour le développement, il suffit de creer sur le bureau les .bat correspondants.

Encore bravo Mauricio
roud59 Messages postés 99 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 26 juillet 2007 2
14 juil. 2005 à 20:55
Bon source à mettre sous le coude et qui peut toujours être utile.
Pour enregistrer ta dll, il est aussi possible de taper en ligne de commande "regsvr32.dll MyContextMenu.dll" et pour l'annuler "regsvr32.dll MyContextMenu.dll /unreg" au lieu d'utiliser _Server.exe, et plus besoin de rebooter.

Je l'ai essayé (XP) et ça plante complètement l'explorateur, alors que l'exemple de delphi fonctionne...
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
14 juil. 2005 à 17:40
Pour pouvoir tester cette source il faut:
1-compiler le projet _Server.dpr -> _server.exe
2-compiler le projet MyContextMenu.dpr.dpr -> MyContextMenu.dll
3-executer _server.exe, cliquer sur le bouton "Register Server"
4-Sous Windows Explorer, seleccionner 1 ou plusieurs fichiers puis faites un click droit.
Seleccionner l' option "Delphi test ..." du menu.

Et voilà !!!

J' ai qu' en même une question pour les plus pros:

dans ContextM.pas on déclare une const ainsi:
const
Class_ContextMenu: TGUID = '{C763DB5D-B6A8-4A21-9B7E-41EF5CBABD56}';

Je voudrais savoir si cette valeur doit être unique, si on peut la changer nous même manuellement.

Encore merci à Jinh68 pour sa précieuse aide, c' est dommage qu' il ne poste pas de sources parce qu' il est vraiment bon le bougre !!!
Rejoignez-nous