目前我正在使用winapi
和boost
在C ++中开发Windows服务。因为在源代码中不写字符串是一种好的风格(比如“Service is started。”),并且由于国际化的方面,我正在寻找一种技术来管理我的应用程序的消息/标题。
我找到了一个code project article,它描述了消息编译器(mc.exe)与资源文件结合使用的情况。但这种方式看起来有点不常见。作者写道,消息编译器是一种很少使用的工具,文章也很老。因此,我想问一下在一个项目中管理字符串的现代方法是什么,它只依赖于Windows API和提升。
我希望有人能给我一个提示。
答案 0 :(得分:3)
对于Windows应用程序,我建议在资源文件中使用LoadString() API建立良好的老式STRINGTABLE。
服务也可以使用上述内容,但有一个明显的例外。如果您的服务需要将消息发布到Windows事件日志,那么您将需要使用消息编译器将此类消息/格式字符串作为资源存储在应用程序中。 This article(虽然简洁)包含了为支持这一点而需要采取的措施的摘要。