谁知道如何使用mc.exe(消息编译器)?

发布于 2024-09-11 06:05:20 字数 382 浏览 6 评论 0原文

我正在尝试使用 mc.exe 来为我的事件日志编写程序制作消息文件。但即使是由微软不会编译。谁知道如何编写一个可以由mc.exe编译的消息文件?

编辑:我收到的错误消息是:

msgs.mc(1) : error : expected keyword
- ??

编辑2:问题已解决。 mc.exe 只能支持 Unicode 或 ANSI 编码的源文件。我的文件编码为 UTF8。就是这样。

谢谢。

I am trying to use the mc.exe to make message files for my event log writing program. But even the sample message file provided by the Microsoft won't compile. Who knows how to write a message file that could be compiled by mc.exe?

EDIT: The error message I got is :

msgs.mc(1) : error : expected keyword
- ??

Edit 2: Problem solved. The mc.exe can only support Unicode or ANSI encoded source file. My file is encoded as UTF8. That's it.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

夏夜暖风 2024-09-18 06:05:20

始终记录您收到的错误消息

被迫猜测:如果您在第 #82 行中收到错误,抱怨无效字符 (0x2e),则在文本编辑器中打开文件,将光标放在之后。并按 Enter 键,以便该行以换行符结束。

Always document the error message you get

Being forced to guess: if you get an error in line #82, complaining about an invalid character (0x2e), then open the file in a text editor, put the cursor after the . and press Enter so the line is terminated with a line feed.

永言不败 2024-09-18 06:05:20

问题解决了。 mc.exe 只能支持 Unicode 或 ANSI 编码的源文件。我的文件编码为 UTF8。就是这样。

谢谢你们。

Problem solved. The mc.exe can only support Unicode or ANSI encoded source file. My file is encoded as UTF8. That's it.

Thanks guys.

烟酒忠诚 2024-09-18 06:05:20

该示例在 Visual Studio 2008 或 2010 中适用于我。发布您的 msgs.mc 文件如何?

你还保存为纯ascii吗?也许编码标头令人困惑......

The sample works for me in Visual Studio 2008 or 2010. How about posting your msgs.mc file.

Also did you save as plain ascii? Maybe the encoding header is confusing it...

巷雨优美回忆 2024-09-18 06:05:20

这里我主要以VS Developer命令行为例来说明如何将mc.exe集成到Visual Studio构建环境中。

需要从 Visual Studio 开发人员命令行按如下方式编译消息文件:

  1. mc -v MyWebService.mc
  2. rc -r -fo MyWebService.res MyWebService.rc
  3. link -dll -noentry -out:MyWebServiceEvtID.dll MyWebService.res / MACHINE:X86

另外,确保将 MyWebServiceEvtID.dll 复制到 C:\inetpub\wwwroot\MyWebServices\\bin

最后,确保注册表包含如下条目:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application<项目>.MyWebService]
"EventMessageFile"="C:\inetpub\wwwroot\MyWebServices\\bin\MyWebServiceEvtID.dll"

可以将上述条目复制到 .reg 文件并使用 regedit 工具执行

Here I traying to explains how to integrate mc.exe into the Visual Studio build environment by VS Developer command line example.

The Message file will need to be compiled as follows from the Visual Studio Developer Comand line :

  1. mc -v MyWebService.mc
  2. rc -r -fo MyWebService.res MyWebService.rc
  3. link -dll -noentry -out:MyWebServiceEvtID.dll MyWebService.res /MACHINE:X86

Also, ensure the MyWebServiceEvtID.dll is copied to C:\inetpub\wwwroot\MyWebServices\\bin

Finally, make sure that the registry contains an entry as follows :

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application<Project>.MyWebService]
"EventMessageFile"="C:\inetpub\wwwroot\MyWebServices\\bin\MyWebServiceEvtID.dll"

The above entries can be copied to a .reg file and executed using the regedit tool

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文