从 DLL 或 XLL 中显示对话框

适用于:Excel 2013 | Office 2013 | Visual Studio

若要使用(例如,Windows SDK函数 DialogBox)显示 Win32 对话框,必须首先获取 Excel 的完整 32 位实例和main窗口句柄。 有关详细信息,请参阅 访问 Excel 实例和主窗口句柄

假设项目包含对话框资源,则必须执行几个步骤,将消息处理例程设置为新显示的对话框的例程,并在对话框关闭时还原 Excel 消息处理例程。 泛型项目中的示例命令 fShowDialog 演示了如何使用 Windows 函数来正确执行此操作。

还可以使用 C API 显示对话框,而无需使用Windows SDK函数。 但是,与 Windows、Visual Basic for Applications (VBA) 或 Microsoft 基础类 (MFC) 相比,C API 的对话框功能非常有限。 (例如,C API 对话框始终是模式) 。

另请参阅

创建 XLL

开发 DLL

访问 Excel 实例和主窗口句柄

只能从 DLL 或 XLL 调用的 C API 函数