FindPackages(String, String) メソッド

PackageManager.FindPackages(String, String) Method

指定した名前および発行元のインストール済みパッケージをすべて検索します。

構文


public IEnumerable<Package> FindPackages(
  string packageName, 
  string packagePublisher
)

パラメーター

packageName

型: System.String [.NET] | Platform::String [C++]

パッケージの名前。このパラメーターには、null は指定できません。

packagePublisher

型: System.String [.NET] | Platform::String [C++]

パッケージの発行元。このパラメーターには、null は指定できません。

戻り値

型: IIterable<Package> [C++] | System.Collections.Generic.IEnumerable<Package> [.NET]

メソッドが成功した場合、同じパッケージ名と発行者名のパッケージ オブジェクトの列挙可能なコレクションが返されます。このコレクションの各パッケージ オブジェクトには、名前、発行者、バージョン、およびインストールの場所を含むがこれに限定されない、パッケージに関する情報が格納されます。指定された名前と発行者のパッケージがない場合、このメソッドは空のリストを返します。

解説

このメソッドには管理特権が必要です。IIterable(Package) のコレクションの各パッケージは、現在のユーザーまたは別のユーザー用にインストールできます。このメソッドは、指定されたパラメーターは、発行者のハッシュ値に含まれているパッケージ ファミリ名ではなく、パッケージ名またはパッケージの発行者名である必要があるため、FindPackages(String packageFamilyName) とは異なります。

この例では、FindPackages(String, String) を使用して、指定した名前と発行者を持つインストール済みパッケージを列挙します。


using Windows.Management.Deployment;

public static int Main(string[] args)
{
    PackageManager packageManager = new PackageManager();

    string inputPackageName = args[0];
    string inputPublisherName = args[1];

    IEnumerable<Windows.ApplicationModel.Package> packages = 
        (IEnumerable<Windows.ApplicationModel.Package>)packageManager.FindPackages(
            inputPackageName, 
            inputPublisherName);

    int packageCount = 0;
    foreach (var package in packages)
    {
        DisplayPackageInfo(package);
        Console.WriteLine();
        packageCount += 1;
    }

    if (packageCount < 1)
    {
        Console.WriteLine("No packages were found.");
    }

    return 0;
}

private static void DisplayPackageInfo(Windows.ApplicationModel.Package package)
{
    Console.WriteLine("Name: {0}", package.Id.Name);

    Console.WriteLine("FullName: {0}", package.Id.FullName);

    Console.WriteLine("Version: {0}.{1}.{2}.{3}", package.Id.Version.Major, package.Id.Version.Minor,
        package.Id.Version.Build, package.Id.Version.Revision);

    Console.WriteLine("Publisher: {0}", package.Id.Publisher);

    Console.WriteLine("PublisherId: {0}", package.Id.PublisherId);

    Console.WriteLine("Installed Location: {0}", package.InstalledLocation.Path);

    Console.WriteLine("IsFramework: {0}", package.IsFramework);
}

要件

最小限サポートされるクライアント

Windows 8

最小限サポートされるサーバー

Windows Server 2012

名前空間

Windows.Management.Deployment
Windows::Management::Deployment [C++]

メタデータ

Windows.winmd

参照

サンプル
名前および発行者によるアプリケーション パッケージの列挙のサンプル
参照
FindPackages()
FindPackages(String)
PackageManager

 

 

表示:
© 2016 Microsoft