PackageManager.FindPackages Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
FindPackages(String, String) |
Localiza todos os Pacotes instalados com o nome e o editor especificados. |
FindPackages(String) |
Recupera informações sobre uma família especificada de Pacotes instalados em todos os usuários. |
FindPackages() |
Recupera informações sobre uma família especificada de Pacotes instalados em todos os usuários. |
FindPackages(String, String)
Localiza todos os Pacotes instalados com o nome e o editor especificados.
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
O nome do pacote. Esse parâmetro não pode ser nulo.
- packagePublisher
-
String
Platform::String
winrt::hstring
O editor do pacote. Esse parâmetro não pode ser nulo.
Retornos
Se o método for bem-sucedido, uma coleção enumerável de objetos de pacote com o mesmo nome de pacote e nome do editor será retornada. Cada objeto Package nesta coleção contém informações sobre o pacote, incluindo, mas não se limitando ao seu nome, editor, versão e local de instalação. Se nenhum pacote com o nome e o editor especificados for encontrado, esse método retornará uma lista vazia.
- Atributos
Requisitos do Windows
Funcionalidades do aplicativo |
packageQuery
|
Comentários
Esse método requer privilégios administrativos.
Confira também
- FindPackages()
- FindPackages(String)
- Pacote
- Enumerar pacotes de aplicativos por nome e exemplo de editor
Aplica-se a
FindPackages(String)
Recupera informações sobre uma família especificada de Pacotes instalados em todos os usuários.
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
O nome da família do pacote. Esse parâmetro não pode ser nulo.
Retornos
Se o método for bem-sucedido, uma coleção enumerável de objetos de pacote com o mesmo nome de família de pacotes será retornada. Cada objeto Package nesta coleção contém informações sobre o pacote, incluindo, mas não se limitando ao seu nome, editor, versão e local de instalação. Se nenhum pacote com o nome da família de pacotes especificado for encontrado, esse método retornará uma lista vazia.
- Atributos
Requisitos do Windows
Funcionalidades do aplicativo |
packageQuery
|
Comentários
Esse método requer privilégios administrativos. Cada pacote na coleção IIterable(Package) pode ser instalado para o usuário atual ou para outro usuário. Esse método difere do método FindPackages(String packageName, String pulisherName). Aqui, o parâmetro packageFamilyName é uma única cadeia de caracteres, composta pelo nome do pacote e pelo hash do editor de pacotes.
Confira também
Aplica-se a
FindPackages()
Recupera informações sobre uma família especificada de Pacotes instalados em todos os usuários.
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)
Retornos
Se o método for bem-sucedido, uma coleção enumerável de objetos de pacote será retornada. Cada objeto Package nesta coleção contém informações sobre o pacote, incluindo, mas não se limitando ao seu nome, editor, versão e local de instalação.
- Atributos
Requisitos do Windows
Funcionalidades do aplicativo |
packageQuery
|
Exemplos
Este exemplo usa FindPackages() para enumerar os pacotes instalados para todos os usuários.
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);
}
Confira também Suporte do 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;
}
Comentários
Esse método requer privilégios administrativos. Caso contrário, um AccessDeniedException será gerado.
Confira também
- FindPackages(String)
- FindPackages(String, String)
- Pacote
- Exemplo de pacotes de aplicativos enumerados