PackageManager.FindPackages Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
FindPackages(String, String) |
Recherche tous les packages installés avec le nom et l’éditeur spécifiés. |
FindPackages(String) |
Récupère des informations sur une famille de packages spécifiée installée sur tous les utilisateurs. |
FindPackages() |
Récupère des informations sur une famille de packages spécifiée installée sur tous les utilisateurs. |
FindPackages(String, String)
public:
virtual IIterable<Package ^> ^ FindPackages(Platform::String ^ packageName, Platform::String ^ packagePublisher) = FindPackages;
/// [Windows.Foundation.Metadata.Overload("FindPackagesByNamePublisher")]
IIterable<Package> FindPackages(winrt::hstring const& packageName, winrt::hstring const& packagePublisher);
[Windows.Foundation.Metadata.Overload("FindPackagesByNamePublisher")]
public IEnumerable<Package> FindPackages(string packageName, string packagePublisher);
function findPackages(packageName, packagePublisher)
Public Function FindPackages (packageName As String, packagePublisher As String) As IEnumerable(Of Package)
Paramètres
- packageName
-
String
Platform::String
winrt::hstring
Nom du package. Ce paramètre ne peut pas être null.
- packagePublisher
-
String
Platform::String
winrt::hstring
Éditeur de package. Ce paramètre ne peut pas être null.
Retours
Si la méthode réussit, une collection énumérable d’objets de package portant le même nom de package et le même nom d’éditeur est retournée. Chaque objet Package de cette collection contient des informations sur le package, notamment son nom, son éditeur, sa version et son emplacement d’installation. Si aucun package portant le nom et l’éditeur spécifiés n’est trouvé, cette méthode retourne une liste vide.
- Attributs
Configuration requise pour Windows
Fonctionnalités de l’application |
packageQuery
|
Remarques
Cette méthode nécessite des privilèges d’administration.
Voir aussi
- FindPackages()
- FindPackages(String)
- Package
- Énumérer les packages d’application par nom et exemple d’éditeur
S’applique à
FindPackages(String)
public:
virtual IIterable<Package ^> ^ FindPackages(Platform::String ^ packageFamilyName) = FindPackages;
/// [Windows.Foundation.Metadata.Overload("FindPackagesByPackageFamilyName")]
IIterable<Package> FindPackages(winrt::hstring const& packageFamilyName);
[Windows.Foundation.Metadata.Overload("FindPackagesByPackageFamilyName")]
public IEnumerable<Package> FindPackages(string packageFamilyName);
function findPackages(packageFamilyName)
Public Function FindPackages (packageFamilyName As String) As IEnumerable(Of Package)
Paramètres
- packageFamilyName
-
String
Platform::String
winrt::hstring
Nom de la famille de package. Ce paramètre ne peut pas être null.
Retours
Si la méthode réussit, une collection énumérable d’objets de package portant le même nom de famille de package est retournée. Chaque objet Package de cette collection contient des informations sur le package, notamment son nom, son éditeur, sa version et son emplacement d’installation. Si aucun package portant le nom de famille de package spécifié n’est trouvé, cette méthode retourne une liste vide.
- Attributs
Configuration requise pour Windows
Fonctionnalités de l’application |
packageQuery
|
Remarques
Cette méthode nécessite des privilèges d’administration. Chaque package de la collection IIterable(Package) peut être installé pour l’utilisateur actuel ou pour un autre utilisateur. Cette méthode diffère de la méthode FindPackages(String packageName, String pulisherName). Ici, le paramètre packageFamilyName est une chaîne unique, composée du nom du package et du hachage de l’éditeur de package.
Voir aussi
S’applique à
FindPackages()
public:
virtual IIterable<Package ^> ^ FindPackages() = FindPackages;
/// [Windows.Foundation.Metadata.Overload("FindPackages")]
IIterable<Package> FindPackages();
[Windows.Foundation.Metadata.Overload("FindPackages")]
public IEnumerable<Package> FindPackages();
function findPackages()
Public Function FindPackages () As IEnumerable(Of Package)
Retours
Si la méthode réussit, une collection énumérable d’objets de package est retournée. Chaque objet Package de cette collection contient des informations sur le package, notamment son nom, son éditeur, sa version et son emplacement d’installation.
- Attributs
Configuration requise pour Windows
Fonctionnalités de l’application |
packageQuery
|
Exemples
Cet exemple utilise FindPackages() pour énumérer les packages installés pour tous les utilisateurs.
using Windows.Management.Deployment;
public static int Main(string[] args)
{
PackageManager packageManager = new PackageManager();
IEnumerable<Windows.ApplicationModel.Package> packages =
(IEnumerable<Windows.ApplicationModel.Package>) packageManager.FindPackages();
int packageCount = 0;
foreach (var package in packages)
{
DisplayPackageInfo(package);
packageCount += 1;
}
if (packageCount < 1)
{
Console.WriteLine("No packages were found.");
}
}
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);
}
Consultez également Support Visual Studio pour C++/WinRT.
// main.cpp : In Visual Studio, create a new Windows Console Application (C++/WinRT), and run it (or run Visual Studio) as administrator.
#include "pch.h"
#include <winrt/Windows.ApplicationModel.h>
#include <winrt/Windows.Management.Deployment.h>
#include <winrt/Windows.Storage.h>
#include <iostream>
using namespace winrt;
using namespace Windows::ApplicationModel;
using namespace Windows::Management::Deployment;
using namespace Windows::Storage;
void DisplayPackageInfo(Windows::ApplicationModel::Package const& package)
{
try
{
std::wcout << L"Name: " << package.Id().Name().c_str() << std::endl;
std::wcout << L"FullName: " << package.Id().FullName().c_str() << std::endl;
std::wcout << L"Version: " << package.Id().Version().Major << "." << package.Id().Version().Minor << "." << package.Id().Version().Build << "." << package.Id().Version().Revision << std::endl;
std::wcout << L"Publisher: " << package.Id().Publisher().c_str() << std::endl;
std::wcout << L"PublisherId: " << package.Id().PublisherId().c_str() << std::endl;
std::wcout << L"Installed Location: " << package.InstalledLocation().Path().c_str() << std::endl;
std::wcout << L"IsFramework: " << (package.IsFramework() ? L"True" : L"False") << std::endl;
}
catch (winrt::hresult_error const& ex)
{
std::wcout << ex.message().c_str() << std::endl;
}
}
int wmain()
{
winrt::init_apartment();
bool noPackagesFound{ true };
for (auto const& package : PackageManager{}.FindPackages())
{
DisplayPackageInfo(package);
noPackagesFound = false;
}
if (noPackagesFound)
{
std::wcout << L"No packages were found." << std::endl;
}
return 0;
}
using namespace Windows::Management::Deployment;
[STAThread]
int __cdecl main(Platform::Array<String^>^ args)
{
PackageManager^ packageManager = ref new PackageManager();
IIterable<Windows::ApplicationModel::Package^>^ packages = packageManager->FindPackages();
int packageCount = 0;
std::for_each(Windows::Foundation::Collections::begin(packages), Windows::Foundation::Collections::end(packages),
[&](Windows::ApplicationModel::Package^ package)
{
DisplayPackageInfo(package);
packageCount += 1;
});
if ( packageCount < 1 )
{
wcout << L"No packages were found." << endl;
}
return 0;
}
void DisplayPackageInfo(Windows::ApplicationModel::Package^ package)
{
wcout << L"Name: " << package->Id->Name->Data() << endl;
wcout << L"FullName: " << package->Id->FullName->Data() << endl;
wcout << L"Version: " << package->Id->Version.Major << "." <<
package->Id->Version.Minor << "." << package->Id->Version.Build <<
"." << package->Id->Version.Revision << endl;
wcout << L"Publisher: " << package->Id->Publisher->Data() << endl;
wcout << L"PublisherId: " << package->Id->PublisherId->Data() << endl;
wcout << L"Installed Location: " << package->InstalledLocation->Path->Data() << endl;
wcout << L"IsFramework: " << (package->IsFramework ? L"True" : L"False") << endl;
}
Remarques
Cette méthode nécessite des privilèges d’administration. Sinon, une exception AccessDeniedException est levée.
Voir aussi
- FindPackages(String)
- FindPackages(String, String)
- Package
- Exemple d’énumération de packages d’application