调用API的WPF应用程序,需要消息泵

时间:2010-06-17 20:49:27

标签: wpf com loops message

我有一个WPF应用程序,它调用API来操作设备(扫描程序)。此API基于COM,内部有一个隐藏窗口,扫描程序也会发送消息。 API的目的是将这些Windows消息转换为COM事件。问题是WPF应用程序没有消息泵,因此没有消息被传递到隐藏窗口。因此,没有任何事件被触发,看起来扫描仪没有响应。

我应该如何在WPF应用程序中创建一个能够将消息发送到不可见窗口的消息循环?

1 个答案:

答案 0 :(得分:1)

如果您还没有消息泵,则此方法可以启动消息泵:http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatcher.run.aspx

请注意,每个线程都拥有一个单独的消息泵,它为该线程创建的所有窗口提供消息。您需要找到创建隐藏窗口的线程。