问题标签 [cppwinrt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
59 浏览

c++-winrt - 为什么没有 SelectorT?

我正在尝试实现一个自定义控件(我称之为 DataGrid),我选择从Selector. 在 cppwinrt 中,我写了一些这样的

此代码无法编译。事实上,SelectorT在任何附带的 Windows.UI.Xaml.Controls.Primitives.h 文件中都没有调用这样的结构。我检查了SDK(19041)附带的winmd文件,发现SelectorComposable(具有ComposableAttribute属性),所以,SelectorT应该已经生成了,我错过了什么?非常感谢!

0 投票
1 回答
760 浏览

c++ - 库包括 WinRT Broken

我正在尝试编译这个项目:https ://github.com/bucienator/ble-win-cpp

克隆存储库后,我收到错误“wait_for”不是“winrt :: impl”的成员。使用 NuGet,我将 Microsoft.Windows.CppWinRT 包添加到项目中。但在那之后,我对所有库的导入都中断了:

告诉我如何让 Visual Studio 编译我的项目?

0 投票
2 回答
902 浏览

windows-runtime - 如何使用 WinRT/C++ 在 WinUI3 中打开新窗口?

如何在 WinRT / WinUI3 中打开新窗口?我想单击一个按钮并在当前/主窗口顶部打开另一个浮动窗口。

我已经尝试了几个零运气样本的代码:

大多数 C++ WinUI3 文档中仍然只有 C# 代码示例,因此对我来说基本上没用。我只想打开一个新窗口,别无其他。

0 投票
0 回答
35 浏览

windows-runtime - [winrt]无法初始化投影类型的基类

我是 cpp/winrt 的新手,我使用 implements_type 和 base_type 来初始化投影类型的基类,但编译错误。

本地类:

0 投票
1 回答
59 浏览

uwp - 如何从 C++/WinRT 中的 URI 对象获取文件名

我正在开发 C++WinRT UWP 应用程序。我有 URI 对象,其中包含通过 Internet 下载文件的文件路径。我只想从此 URI 对象中提取带有扩展名的文件名。我想用这个名字创建一个本地文件。有没有图书馆方法可以做到这一点?感谢帮助。谢谢

0 投票
0 回答
114 浏览

winrt-xaml - 无法编译引用自定义 Windows 运行时组件的 WinUI 3.0 应用

我有一个包含两个项目的 Visual Studio 2019 解决方案。

第一个项目是使用“Windows 运行时组件 (WinUI 3) Visual Studio 模板(库项目)创建的。它生成一个 dll 和关联的 winmd 文件,其中包含一个基于 DirectX 的 Windows 运行时组件,用于WinUI 3.0 应用程序。

第二个项目是使用“Blank App, Packaged (WinUI 3 in Desktop)”Visual Studio 模板创建的。它生成一个使用 WinUI 3.0 作为 UI 框架的 Win32 应用程序,并使用第一个项目的输出。

第二个项目通过 Visual Studio / MSBuild 项目引用引用了第一个项目。

第一个项目通过MIDL如下方式定义组件:

从 this 中生成的标头如下所示:

然后,我尝试在Microsoft.UI.Xaml.Controls.PageXAML 文件中使用该组件,如下所示:

但是,如果我编译整个代码,我会收到以下错误消息:

CustomControl不知何故,在编译为引用它的 XAML 文件生成的源代码时,无法识别my 。我不明白问题是什么。理论上,使用该组件所需的只是 winmd 文件,因为它应该描述该组件。

有人可以告诉我为什么会出现这些错误吗?

编辑:

我试图重现该问题,生成的 Git 存储库可在此处获得

0 投票
1 回答
191 浏览

c++ - C++ 协程可以包含简单的“return”语句吗?

我正在使用C++/WinRT为 UWP 控件编写 C++ 协程:

这是为我编译的,但据我所知,C++ 协程不允许普通return语句。这是编译器中的错误吗?

(有趣的是,我无法将 to 更改co_returnreturn;我收到编译器错误。是否仅在a or must be之后返回语句?)co_awaitco_yieldco_return

0 投票
1 回答
61 浏览

c++ - 如何在 C++/WinRT(`Promise.all` 等效项)中等待多个等待项/IAsyncAction?

对于可等待对象(或只是) ,是否有与Promise.allC++ 或 C++/WinRT 中的JavaScript 等效Windows.Foundation.IAsyncAction

例如,我正在尝试收集多个 IAsyncAction 并在它们全部完成后继续。现在我开始每个动作,然后在一个简单的循环中一个接一个地等待它们:

有一个更好的方法吗?有语言方式吗?

0 投票
0 回答
43 浏览

c++ - UI.Composition 中的 Win2D 效果 (C++)

注意:目标是创建一个带有丙烯酸背景的窗口,可以由 OpenGL 绘制。欢迎任何可以实现这一目标的方法。

我已经能够按照教程成功创建一个合成器。并打算根据本文档中给出的示例代码添加高斯模糊

这篇文章之后,我从 Nuget 安装了 Win2D 并将文件复制Generated Files/winrt到包含目录。(也尝试cppwinrt.exe.winmd文件上运行。找不到答案中提到的“Win2D dll”)

这是我目前正在运行的代码:

执行时的错误GaussianBlurEffect blurEffect{};

调用堆栈


完整代码:

0 投票
1 回答
69 浏览

c++ - 如何获取mac地址

我正在开发一个在 hololens2 上运行的 uwp 应用程序,我想获取 wifi mac 地址。

根据这个文件:Windows.Networking,我写了这段代码。

但是报错:WinRT origin error - 0x8007007F : 'The specified procedure could not be found.'。</p>

似乎缺少 dll,我找不到哪一个或两个?

如果你知道,请告诉我。

如果您知道其他获取mac地址的方法,请告诉我。

谢谢