【问题标题】:From Qt how to send message to a native application从 Qt 如何将消息发送到本机应用程序
【发布时间】:2013-05-08 12:05:37
【问题描述】:

我找到了一个 c++ 应用程序来创建启动画面。这会创建一个命名事件,因此可以从另一个应用程序关闭该应用程序。我有一个如何从 .net 应用程序关闭它的示例:

private void CloseSplashScreen()
    {
        // signal the native process (that launched us) to close the splash screen
        using (var closeSplashEvent = new EventWaitHandle(false, EventResetMode.ManualReset, "CloseSplashScreenEventSplashScreenStarter"))
        {
            closeSplashEvent.Set();
        }

现在,我不知道如何在 qt5 应用程序中做同样的事情。我是 Qt 新手,请举个例子。

【问题讨论】:

  • 您的解决方案不是多平台的,所以我怀疑 qt 是否会有 api。您可能应该使用 winapi
  • 好的。我会试试的。

标签: c++ .net multithreading qt


【解决方案1】:

试图将 .Net 代码集成到您的 Qt 应用程序中只是为了显示启动屏幕:这是个坏主意。

这是在 Google 上快速搜索“qt splash screen”的结果。

http://www.developer.nokia.com/Community/Wiki/How_to_display_a_splash_screen_in_Qt http://qt-project.org/doc/qt-5.0/qtwidgets/qsplashscreen.html

【讨论】:

  • 谢谢,我知道。初始屏幕由 c++ 应用程序提供。它不是一个 .net 应用程序。只是我发现它作为 WPF 冷启动的示例,这就是为什么我有 .net 应用程序的解决方案。我没有使用 Qt 闪屏的原因是它有透明背景的问题,我想显示一个透明的 png 文件。这是 Qt 中尚未解决的“错误”。那么,你知道如何在 Qt 中实现上述代码吗?
  • 没有 Qt 包装器。正如@10WaRRioR01 所说,使用 WinAPI:msdn.microsoft.com/en-us/library/windows/desktop/…
猜你喜欢
  • 2023-03-22
  • 1970-01-01
  • 1970-01-01
  • 2013-10-04
  • 1970-01-01
  • 1970-01-01
  • 2014-10-17
  • 2013-01-19
  • 1970-01-01
相关资源
最近更新 更多