在计算机上查找已安装的Metro应用程序

Yam*_*Yam 5 c# microsoft-metro

我正在尝试用C#编写一段代码来在机器上查找所有已安装的Metro应用程序.我看到了以下帖子获取Metro应用程序列表并使用PowerShell在Windows 8中启动它们, 这解释了从系统注册表获取此信息.这是获取清单的唯一可靠方式吗?有没有人知道其他任何方式?提前致谢

Yam*_*Yam 7

感谢大家!要使PackageManager代码起作用,我必须执行以下操作

1)将以下内容添加到.csproj中.

 <PropertyGroup>
   <TargetPlatformVersion>8.0</TargetPlatformVersion>
 </PropertyGroup>
 <Reference Include="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
Run Code Online (Sandbox Code Playgroud)

2)添加对C:\ Program Files(x86)\ Windows Kits\8.0\References\CommonConfiguration\Neutral\Windows.winmd的引用

完成上述操作后,我能够列出所有的地铁套餐.


n00*_*00b 4

我希望我能发表评论...这是一个选项吗?

IEnumerable<Windows.ApplicationModel.Package> packages = 
        (IEnumerable<Windows.ApplicationModel.Package>)packageManager.FindPackagesForUser("");
Run Code Online (Sandbox Code Playgroud)

http://msdn.microsoft.com/en-us/library/windows/apps/windows.management.deployment.packagemanager.aspx

  • 编译项目时出现以下错误“类型‘System.Collections.Generic.IEnumerable`1&lt;T0&gt;’是在未引用的程序集中定义的。您必须添加对程序集‘System.Runtime, Version’的引用=4.0.0.0,文化=中性,PublicKeyToken=b03f5f7f11d50a3a'”。有什么想法为什么我会看到这个吗? (2认同)