我正试图学习如何显示来自我的程序的Toast通知,这是注册为Windows服务的原生c ++控制台应用程序。
我了解到Toasts是Windows运行时UI组件的一部分; 那么这是否意味着我必须为我的产品开发GUI组件才能发送Toasts?
是的,这可能是检查这个链接在这里某些WinRT类可以使用桌面应用程序,包括Windows.UI命名空间的一部分。 敬酒通知API就是这样一个例子 – 它们可以被Windows Store应用程序和桌面应用程序使用
你应该检查这个 。 纯非托管的c + +和COM。
我开发了WinToast ,一个用C ++编写的库,可以轻松地集成Windows Toast Notification。 我用它来将Toast通知集成到不同的项目中,特别是使用Qt Framework。
原生Toast通知需要Com基础版的一些功能,这些功能仅适用于Windows现代版本(最低支持的客户端:Windows 8)。
这就是为什么图书馆动态加载所有必需的库。 使用WinToast使您的应用程序与旧版Windows兼容。 有一个附加的例子解释了如何在资源库中使用它。
要显示敬酒,只需创建模板和自定义处理程序并启动它:
WinToastHandlerExample* handler = new WinToastHandlerExample; WinToastTemplate templ = WinToastTemplate(WinToastTemplate::ImageWithTwoLines); templ.setImagePath(L"imagepath"); templ.setTextField(L"firstline", 0); templ.setTextField(L"secondline", 1); if (!WinToast::instance()->showToast(templ, handler)) { std::wcout << L"Could not launch your toast notification!"; }