我正在编写一个与 Windows shell 集成并添加额外上下文菜单的应用程序。并且正在考虑用几种语言来编写它:
- MS .NET - 我宁愿不为此类应用程序使用托管代码
- win32asm - 这是我的第一选择
- VC++/C++ - 不确定
所以基本上它是汇编和 C++ 之间的折腾,任何人有任何想法或考虑可能会让我的选择更容易吗?
我正在编写一个与 Windows shell 集成并添加额外上下文菜单的应用程序。并且正在考虑用几种语言来编写它:
所以基本上它是汇编和 C++ 之间的折腾,任何人有任何想法或考虑可能会让我的选择更容易吗?
您希望 shell 上下文应用程序占用空间小。这至少目前排除了托管代码。这可能有点支持 win32asm,尽管与 .NET 运行时相比,C++ 库并没有那么大(总而言之,不到 1 MB,现在还不算大)!
你希望 shell 上下文应用程序是稳定的,否则人们会踢出它们来保存他们的 explorer.exe 进程。这严重反对win32asm。如果你知道只有你会维护这个应用程序,并且你有很好的汇编技能,win32asm 可能会工作,尽管我自己不会那样做。您仍然必须实现 COM 接口,这在不增加汇编编码的复杂性的情况下已经足够令人头疼了。
我会选择支持 ATL 的 VC++,无需进一步考虑,但要进行严格的单元测试和防止资源泄漏的保护措施。但是,如果您对 C++ 和模板不满意,那么这可能会给您带来一条坎坷的道路。从好的方面来说,您需要维护的源代码集要少得多,并且可以更轻松地找到其他人来帮助或接管。您可能还改进了仍然相关的有价值的技能。