2009-06-11 4 views
1

J'écris une application qui s'intègre à Windows Shell et ajoute un menu contextuel supplémentaire. Et je envisage deux langues pour écrire dans:Quelle est la meilleure langue à utiliser lors de la création du menu contextuel Shell Windows?

  1. MS .NET - Je préfère ne pas utiliser le code managé pour ce type d'application
  2. win32asm - Ceci est mon premier choix
  3. VC++/C++ - Je ne sais pas

Donc, fondamentalement, c'est un mélange entre l'assemblage et le C++. Quelqu'un at-il des idées ou des considérations qui pourraient faciliter mon choix?

Répondre

1

Vous souhaitez que les applications de contexte de coque aient de petites empreintes. Cela exclut le code managé au moins pour l'instant. Cela peut parler un peu en faveur de win32asm, bien que les bibliothèques C++ ne soient pas vraiment grandes par rapport à l'environnement d'exécution .NET (moins d'un Mo, tout compte fait, n'est pas si grand ces jours-ci)!

Vous souhaitez que les applications de contexte shell soient stables, sinon les utilisateurs les expulseront pour sauvegarder leurs processus explorer.exe. Cela parle fortement contre win32asm. Si vous savez seulement que vous aurez toujours l'application, et que vous avez de grandes compétences en assembleur, win32asm peut fonctionner, même si je ne le ferais pas moi-même. Vous devez encore implémenter des interfaces COM, ce qui est un mal de tête assez important sans ajouter les complexités du codage d'assemblage. J'aurais opté pour VC++ avec le support ATL, sans plus y penser, mais avec des tests unitaires sérieux et des sauvegardes contre les fuites de ressources. Mais si vous n'êtes pas à l'aise avec C++ et les gabarits, cela peut représenter une route difficile pour vous. Sur le plan positif, vous aurez un ensemble de code source beaucoup plus petit à maintenir, et vous aurez beaucoup plus de facilité à trouver d'autres personnes pour vous aider ou prendre le contrôle. Vous avez peut-être également amélioré un ensemble de compétences utiles et pertinentes.

Questions connexes