错误消息和通知

[与此页面关联的功能 MCIWnd Window 类是一项旧功能。 它已被 MediaPlayer 取代。 MediaPlayer 已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer 而不是 MCIWnd Window 类。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

MCIWnd 使用 MCI 来控制播放和记录多媒体数据的设备。 通常,MCIWnd 会在错误对话框中显示 MCI 错误。 每当 MCI 命令失败时,都会生成 MCI 错误。 例如,如果应用程序尝试使用 MCIWndResume 宏恢复暂停的播放,而当前设备不支持恢复,则会向用户报告错误。

MCIWnd 允许使用两个选项来处理错误消息:

  • 可以阻止错误消息到达用户。 若要防止显示 MCI 错误消息,请在使用 MCIWndCreateCreateWindowEx 函数创建 MCIWnd 窗口实例时指定MCIWNDF_NOERRORDLG窗口样式。
  • 可以将它们重定向到应用程序进行显示。 若要将 MCI 错误消息重定向到应用程序,请在使用 MCIWndCreateCreateWindowEx 创建 MCIWnd 窗口实例时指定MCIWNDF_NOTIFYERROR窗口样式。

启用错误通知后,MCIWnd 会将每个通知消息 (MCIWNDM_NOTIFYERROR) 发送到 MCIWnd 窗口父级的main消息处理程序。 应用程序必须具有消息处理程序才能处理它收到的通知消息。

可以使用 MCIWndGetError 宏获取最新 MCI 错误消息的文本说明。 此宏返回应用程序定义的缓冲区中的文本。 如果错误字符串长于缓冲区,MCIWnd 将截断该字符串。

可以使用 MCIWndSetOwner 宏将所有通知路由到另一个窗口。