Yam
Yam

Reputation: 303

Finding out installed Metro applications on a machine

I am trying to write a piece of code in C# to find all installed Metro Applications on a machine. I came across the following post Get a list of metro apps and launch them in Windows 8 using PowerShell which explains obtaining this from the system registry. Is this the only reliable way to obtain the list? Does anyone know of any other ways? Thanks in advance

Upvotes: 6

Views: 3725

Answers (4)

Cristian
Cristian

Reputation: 51

If anyone's wondering how to get the packageManager variable in the accepted answer you need to do the following:

Windows.Management.Deployment.PackageManager packageManager = new Windows.Management.Deployment.PackageManager();

I guess this belongs to a comment, but I don't have enough reputation, sorry.

Upvotes: 0

Yam
Yam

Reputation: 303

Thanks everyone! For the PackageManager code to work, I had to do the following

1) Add the following to .csproj.

 <PropertyGroup>
   <TargetPlatformVersion>8.0</TargetPlatformVersion>
 </PropertyGroup>
 <Reference Include="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>

2) Add a reference to C:\Program Files (x86)\Windows Kits\8.0\References\CommonConfiguration\Neutral\Windows.winmd

After doing the above, I was able to list all the metro packages.

Upvotes: 7

Farhan Ghumra
Farhan Ghumra

Reputation: 15296

You can't iterate through all packages installed in PC in WinRT app. It's possible in desktop and console app. See these MSDN threads for more info.

How to get all Metro apps list in Metro App?

How do I get all Metro style apps list in my Metro App?

To perform the same here's code.

Upvotes: 1

n00b
n00b

Reputation: 1852

I wish I could comment...Is this an option?

IEnumerable<Windows.ApplicationModel.Package> packages = 
        (IEnumerable<Windows.ApplicationModel.Package>)packageManager.FindPackagesForUser("");

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

Upvotes: 4

Related Questions