PackageManager.FindPackages Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
FindPackages(String, String) |
Busca todos los paquetes instalados con el nombre y el publicador especificados. |
FindPackages(String) |
Recupera información sobre una familia de paquetes especificada instalada en todos los usuarios. |
FindPackages() |
Recupera información sobre una familia de paquetes especificada instalada en todos los usuarios. |
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)
Parámetros
- packageName
-
String
Platform::String
winrt::hstring
Nombre del paquete. Este parámetro no puede ser null.
- packagePublisher
-
String
Platform::String
winrt::hstring
Publicador del paquete. Este parámetro no puede ser null.
Devoluciones
Si el método se ejecuta correctamente, se devuelve una colección enumerable de objetos de paquete con el mismo nombre de paquete y nombre del publicador. Cada objeto Package de esta colección contiene información sobre el paquete, incluidos, entre otros, su nombre, el publicador, la versión y la ubicación de instalación. Si no se encuentra ningún paquete con el nombre y el publicador especificados, este método devuelve una lista vacía.
- Atributos
Requisitos de Windows
Características de aplicaciones |
packageQuery
|
Comentarios
Este método requiere privilegios administrativos.
Consulte también
- FindPackages()
- FindPackages(String)
- Paquete
- Enumeración de paquetes de aplicaciones por nombre y ejemplo de publicador
Se aplica a
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)
Parámetros
- packageFamilyName
-
String
Platform::String
winrt::hstring
Nombre de familia del paquete. Este parámetro no puede ser null.
Devoluciones
Si el método se ejecuta correctamente, se devolverá una colección enumerable de objetos de paquete con el mismo nombre de familia de paquete. Cada objeto Package de esta colección contiene información sobre el paquete, incluidos, entre otros, su nombre, el publicador, la versión y la ubicación de instalación. Si no se encuentra ningún paquete con el nombre de familia de paquete especificado, este método devuelve una lista vacía.
- Atributos
Requisitos de Windows
Características de aplicaciones |
packageQuery
|
Comentarios
Este método requiere privilegios administrativos. Cada paquete de la colección IIterable(Package) se puede instalar para el usuario actual o para otro usuario. Este método difiere del método FindPackages(String packageName, String pulisherName). Aquí el parámetro packageFamilyName es una sola cadena, formada por el nombre del paquete y el hash del publicador de paquetes.
Consulte también
Se aplica a
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)
Devoluciones
Si el método se ejecuta correctamente, se devuelve una colección enumerable de objetos de paquete. Cada objeto Package de esta colección contiene información sobre el paquete, incluidos, entre otros, su nombre, el publicador, la versión y la ubicación de instalación.
- Atributos
Requisitos de Windows
Características de aplicaciones |
packageQuery
|
Ejemplos
En este ejemplo se usa FindPackages() para enumerar los paquetes instalados para todos los usuarios.
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);
}
Consulta también Compatibilidad de Visual Studio para 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;
}
Comentarios
Este método requiere privilegios administrativos. De lo contrario, se produce una excepción AccessDeniedException .
Consulte también
- FindPackages(String)
- FindPackages(String, String)
- Paquete
- Ejemplo de enumeración de paquetes de aplicación