PackageManager.FindPackages Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
FindPackages(String, String) |
Trova tutti i pacchetti installati con il nome e il server di pubblicazione specificati. |
FindPackages(String) |
Recupera informazioni su una famiglia specificata di pacchetti installati in tutti gli utenti. |
FindPackages() |
Recupera informazioni su una famiglia specificata di pacchetti installati in tutti gli utenti. |
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)
Parametri
- packageName
-
String
Platform::String
winrt::hstring
Nome del pacchetto. Questo parametro non può essere Null.
- packagePublisher
-
String
Platform::String
winrt::hstring
Autore del pacchetto. Questo parametro non può essere Null.
Restituisce
Se il metodo ha esito positivo, viene restituita una raccolta enumerabile di oggetti pacchetto con lo stesso nome del pacchetto e il nome dell'editore. Ogni oggetto Package in questa raccolta contiene informazioni sul pacchetto, inclusi, a titolo esemplificativo, il nome, l'editore, la versione e il percorso di installazione. Se non vengono trovati pacchetti con il nome e il server di pubblicazione specificati, questo metodo restituisce un elenco vuoto.
- Attributi
Requisiti Windows
Funzionalità dell'app |
packageQuery
|
Commenti
Questo metodo richiede privilegi amministrativi.
Vedi anche
- FindPackages()
- FindPackages(String)
- Pacchetto
- Enumerare i pacchetti dell'app in base al nome e all'esempio di autore
Si applica 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)
Parametri
- packageFamilyName
-
String
Platform::String
winrt::hstring
Nome della famiglia di pacchetti. Questo parametro non può essere Null.
Restituisce
Se il metodo ha esito positivo, verrà restituita una raccolta enumerabile di oggetti pacchetto con lo stesso nome della famiglia di pacchetti. Ogni oggetto Package in questa raccolta contiene informazioni sul pacchetto, inclusi, a titolo esemplificativo, il nome, l'editore, la versione e il percorso di installazione. Se non viene trovato alcun pacchetto con il nome della famiglia di pacchetti specificato, questo metodo restituisce un elenco vuoto.
- Attributi
Requisiti Windows
Funzionalità dell'app |
packageQuery
|
Commenti
Questo metodo richiede privilegi amministrativi. Ogni pacchetto nella raccolta IIterable(Package) può essere installato per l'utente corrente o per un altro utente. Questo metodo differisce dal metodo FindPackages(String packageName, String pulisherName). In questo caso il parametro packageFamilyName è una singola stringa, costituita dal nome del pacchetto e dall'hash dell'autore del pacchetto.
Vedi anche
Si applica 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)
Restituisce
Se il metodo ha esito positivo, viene restituita una raccolta enumerabile di oggetti pacchetto. Ogni oggetto Package in questa raccolta contiene informazioni sul pacchetto, inclusi, a titolo esemplificativo, il nome, l'editore, la versione e il percorso di installazione.
- Attributi
Requisiti Windows
Funzionalità dell'app |
packageQuery
|
Esempio
Questo esempio usa FindPackages() per enumerare i pacchetti installati per tutti gli utenti.
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);
}
Vedere anche Supporto di Visual Studio per 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;
}
Commenti
Questo metodo richiede privilegi amministrativi. In caso contrario, viene generata un'eccezione AccessDeniedException .
Vedi anche
- FindPackages(String)
- FindPackages(String, String)
- Pacchetto
- Esempio di enumerazione dei pacchetti dell'app