Вы хотите, чтобы контекстные приложения оболочки занимали мало места. Это исключает управляемый код, по крайней мере, на данный момент. Это может несколько говорить в пользу win32asm, хотя библиотеки C++ на самом деле не так уж велики по сравнению со средой выполнения .NET (все говорят, что меньше МБ в наши дни не так уж и много)!
Вы хотите, чтобы контекстные приложения оболочки были стабильными, иначе люди выкинут их, чтобы сохранить свои процессы explorer.exe. Это сильно говорит против win32asm. Если вы знаете, что только вы когда-либо будете поддерживать приложение, и у вас есть отличные навыки ассемблера, win32asm может работать, хотя я бы сам не пошел по этому пути. Вам все равно придется реализовывать COM-интерфейсы, что является достаточно большой головной болью, не добавляя сложностей ассемблерного кода.
Я бы выбрал VC++ с поддержкой ATL, не задумываясь, но с серьезным модульным тестированием и защитой от утечки ресурсов. Но если вы не знакомы с C++ и шаблонами, это может оказаться для вас тернистым путем. С положительной стороны, у вас будет гораздо меньший набор исходного кода для поддержки, и вам будет намного легче найти других, которые помогут или возьмут на себя управление. Возможно, вы также улучшили еще один ценный набор навыков.
person
Pontus Gagge
schedule
11.06.2009