1 votes

Comment éviter que l'application de gestionnaire de menu contextuel ne bloque l'explorateur?

J'ai créé une application qui peut être invoquée via le menu contextuel en dérivant de IContextMenu et IShellExtInit. J'enregistre le DLL et lorsque je clique avec le bouton droit de la souris, l'application est invoquée.

Cependant, le problème est que tant que mon application est en cours d'exécution, je ne peux pas accéder à d'autres fichiers dans cet explorateur. L'explorateur est bloqué tant que mon application n'a pas fini.

Le même comportement n'est pas reflété dans d'autres applications telles que WinZip, WinRar, etc.

Comment éviter que mon application bloque l'explorateur?

Tout conseil dans cette direction sera très utile.

1voto

Jay Points 8393

J'ai trouvé la solution. Je devrais lancer un processus lorsque l'explorateur invoque ma DLL afin que mon processus puisse continuer séparément tandis que l'explorateur peut poursuivre son exécution sans être bloqué sur ma logique.

Merci à Paul Betts pour ses conseils initiaux.

0voto

Paul Betts Points 41354

Attachez le débogueur à Explorer et recherchez un fil qui contient votre DLL dans la pile d'appels, puis voyez sur quoi il est bloqué

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X