c - 如何在 c 中使用 Winrt API 创建库?

标签 c windows-8

我有一个使用 Win32 API 的现有 C 库,但 Windows 8 Metro 商店应用程序不支持它。 我尝试调用 WinRT API 但失败了,所以有什么方法可以在 C 中使用 WinRT api。

最佳答案

由于这个问题虽然非常普遍,但似乎具体是关于 WinRT 上的 SHGetSpecialFolderPath(),我将解决这个问题:

正如您所发现的,WinRT (Metro) 应用程序在沙盒环境中运行,该环境仅支持 win32 api 的有限子集。

SHGetSpecialFolderPath 正式为 deprecated在 MSDN 上,其功能不适用于 WinRT 应用程序。最接近的等效项是 ApplicationData类(class)。不幸的是,从 C 调用它很复杂。我建议编写一个 C++ 帮助程序,您的库可以调用它。

关于c - 如何在 c 中使用 Winrt API 创建库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13579228/

相关文章:

c - 我的 C 程序生成段错误,我不明白为什么

c++ - 如何在不使用数组或任何算术运算的情况下反转数字

c - %.*s 在这个程序中有什么用

windows-8 - 为什么在自定义 WinRT C++/CX 控件中默认添加了 [Windows::Foundation::Metadata::WebHostHidden]?

python - 在 Python CFFI 中取消引用使用 ffi.addressof 创建的指针(C * - 等效运算符?)

c - 卡在 C 中的乘法表上

c++ - 如何以编程方式将应用程序图标固定到 Windows 8 中的 Metro 启动屏幕

windows-8 - 基本页与空白页

javascript - 网站的 Windows 8 风格开始屏幕磁贴

xaml - Windows 8 按钮在鼠标悬停时消失