winapi - 是否可以使用 IUIFramework::LoadUI 加载已编译的标记文件?

标签 winapi ribbon

documentation该函数的内容如下:

加载 Windows Ribbon 框架 UI 资源、或编译的标记文件。

我有已编译的 .bml 文件(通过 uicc.exe)。但是,我不知道调用 LoadUI 时要为 instanceresourceName 传递哪些参数。

最佳答案

根据记录,IUIFramework::LoadUI实际上,调用可以加载已编译的二进制标记文件。该文件必须链接为 user-defined resource进入通过 instance 参数标识的二进制图像。 resourceName 是该资源的名称。默认情况下,UUIC.exe 分配名称“APPLICATION_RIBBON”

假设标准 UUIC.exe invocation

UICC.exe RibbonMarkup.xml RibbonMarkup.bml /header:RibbonIds.h /res:RibbonUI.rc

这会生成一个资源脚本文件RibbonUI.rc,其中包含以下行

APPLICATION_RIBBON UIFILE "RibbonMarkup.bml"

这是将已编译的二进制标记文件添加到可执行镜像中的资源脚本文件。 "APPLICATION_RIBBON" 是资源的名称,您可以将其更改为您认为合适的任何名称(只要它不与 UIFILE 类型的其他用户定义资源冲突) em>)。

完整的指南可以在 Creating a Ribbon Application 找到。 .

关于winapi - 是否可以使用 IUIFramework::LoadUI 加载已编译的标记文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41333269/

相关文章:

C# WPF - 自定义调整大小

c - minGW项目中w32api有什么用

c# - 使用 .NET 设置注册表项写入权限

WPF Ribbon 4.0 - 控件级别的尺寸定义

c++ - 在开源应用程序中使用功能区界面

vba - Outlook VBA 插入文本行

c++ - 如何获取 SaveDialogBox 组合框值

java - 如何修复 QueryFullProcessImageName 抛出 "A device attached to the system is not functioning"?

dynamics-crm - 如何根据表单状态隐藏 Vanilla 按钮

Excel自定义RibbonUI;为菜单添加部分标题