Windows 8 围绕Windows应用商店应用程序沙箱工作

Windows 8 围绕Windows应用商店应用程序沙箱工作,windows-8,Windows 8,我想创建一个Metro应用程序,用于学习和个人消费,以完成各种低级设备API工作,如跟踪功耗、枚举进程和计算每个进程的CPU使用率等。。。不幸的是,Metro应用程序禁止使用这些桌面API 我第一次尝试解决这个问题是创建一个非Windows存储库C++库,它具有正确的 WINAPIIAGUION/COD>变量,以便使用诸如“代码> QueIDIDPrimeCytoCurrimeTimes”(< /代码>)和。不幸的是,当我在第一个参数中向它传递令牌时,后面的函数调用失败,返回代码为STATUS\

我想创建一个Metro应用程序,用于学习和个人消费,以完成各种低级设备API工作,如跟踪功耗、枚举进程和计算每个进程的CPU使用率等。。。不幸的是,Metro应用程序禁止使用这些桌面API

我第一次尝试解决这个问题是创建一个非Windows存储库C++库,它具有正确的<代码> WINAPIIAGUION/COD>变量,以便使用诸如“代码> QueIDIDPrimeCytoCurrimeTimes”(< /代码>)和。不幸的是,当我在第一个参数中向它传递令牌时,后面的函数调用失败,返回代码为

STATUS\u ACCESS\u DENIED

有趣的是,
CallNtPowerInformation()
SystemBatteryState
作为第一个参数时,效果很好,因此我认为在作为Metro应用程序运行以获取处理器信息时,我缺少某种访问权限。我了解到Metro应用程序是通过运行的,因此我正在寻找一种方法来增加这些特权,以允许我的API调用正常进行。为了测试它是进程特权而不是编码错误,我使用了控制台应用程序中的C++库,所有的工作都很好。
我真的不想创建第二个桌面后台进程来完成所有脏活,并通过套接字将结果传递给Metro应用程序。我意识到这是可行的,但我宁愿把所有东西都放在同一个进程空间中。

为什么这么麻烦呢?如果是供您个人使用,您只需编写一个WPF应用程序,就可以获得现代UI应用程序的所有外观,而无需为WinRT的有限权限而奔波,这不是为了你正在做的事情。我希望能够通过平板电脑友好的界面使用它。我喜欢Metro(或现代UI)“外观和感觉”,所以如果你能给我指一个教程,说明如何制作一个基于现代UI的应用程序(可从“开始”菜单启动,在自己的窗口中打开,等等),而不必生活在Windows应用商店应用程序沙盒中,那将非常棒。只需使用WPF编写一个更大的控件即可。“触摸友好”实际上是一个设计问题,而不是一个技术问题(至少就Windows而言)。如果我没有正确理解,请原谅,但这不会让我有能力做一些事情,比如拥有活动互动程序、在触摸友好的启动屏幕上运行等等。。。。正确的?这基本上只是一个带有Metro风格控件的大型桌面应用程序?正确。使用WPF桌面应用程序,您将无法拥有活动磁贴。您的应用程序仍然可以在开始屏幕上列出,但只能使用静态图标。但是对于你正在尝试做的事情来说,桌面应用程序是一个不错的选择……如果有办法绕过它,它将是一个相当糟糕的沙盒。