Condividi tramite


Funzione TryCreatePackageDependency (appmodel.h)

Crea un riferimento all'ora di installazione per una dipendenza del pacchetto framework per l'app corrente, usando il nome della famiglia di pacchetti, la versione minima e i criteri aggiuntivi specificati.

Sintassi

HRESULT TryCreatePackageDependency(
  PSID                                    user,
  PCWSTR                                  packageFamilyName,
  PACKAGE_VERSION                         minVersion,
  PackageDependencyProcessorArchitectures packageDependencyProcessorArchitectures,
  PackageDependencyLifetimeKind           lifetimeKind,
  PCWSTR                                  lifetimeArtifact,
  CreatePackageDependencyOptions          options,
  PWSTR                                   *packageDependencyId
);

Parametri

user

Tipo: PSID

Ambito utente della dipendenza del pacchetto. Se NULL, viene usato il contesto utente del chiamante. Deve essere NULL se è specificato CreatePackageDependencyOptions_ScopeIsSystem .

packageFamilyName

Tipo: PCWSTR

Nome della famiglia di pacchetti del pacchetto framework in cui eseguire la dipendenza.

minVersion

Tipo: PACKAGE_VERSION

Versione minima del pacchetto framework in cui eseguire la dipendenza.

packageDependencyProcessorArchitectures

Tipo: PackageDependencyProcessorArchitectures

Architetture del processore della dipendenza del pacchetto.

lifetimeKind

Tipo: PackageDependencyLifetimeKind

Tipo di artefatto da usare per definire la durata della dipendenza del pacchetto. Per altre informazioni, vedere le osservazioni.

lifetimeArtifact

Tipo: PCWSTR

Nome dell'artefatto usato per definire la durata della dipendenza del pacchetto. Deve essere NULL se il parametro lifetimeKind è PackageDependencyLifetimeKind_Process. Per altre informazioni, vedere le osservazioni.

options

Tipo: CreatePackageDependencyOptions

Opzioni da applicare durante la creazione della dipendenza del pacchetto.

packageDependencyId

Tipo: PWSTR*

Quando questo metodo restituisce, contiene l'indirizzo di un puntatore a una stringa Unicode con terminazione null che specifica l'ID della nuova dipendenza del pacchetto. Il chiamante è responsabile della liberazione di questa risorsa una volta che non è più necessario chiamando HeapFree.

Valore restituito

Tipo: HRESULT

Se la funzione ha esito positivo, restituisce ERROR_SUCCESS. In caso contrario, la funzione restituisce un codice di errore. I codici di errore possibili includono quanto segue.

Codice restituito Descrizione
E_INVALIDARG Il parametro packageDependencyId è NULL in input.

Commenti

Nel programma di installazione dell'app o durante la prima esecuzione dell'app chiamare questo metodo per specificare un set di criteri per un pacchetto framework che si vuole usare nell'app. In questo modo il sistema operativo informa che l'app ha una dipendenza da un pacchetto framework che soddisfa i criteri specificati. Se vengono installati uno o più pacchetti di framework che soddisfano i criteri, Windows garantisce che almeno uno di questi pacchetti di framework rimanga installato fino a quando non viene eliminato il riferimento in fase di installazione. Per altre informazioni, vedere Usare l'API di dipendenza dinamica per fare riferimento ai pacchetti MSIX in fase di esecuzione.

Questa funzione non riesce se i criteri di dipendenza specificati non possono essere risolti in un pacchetto specifico. Questo controllo della risoluzione del pacchetto viene ignorato se viene specificato CreatePackageDependencyOptions_DoNotVerifyDependencyResolution per il parametro opzioni . Ciò è utile per i programmi di installazione in esecuzione come contesti utente diversi dall'utente di destinazione, ad esempio i programmi di installazione in esecuzione come LocalSystem.

Requisiti

Requisito Valore
Client minimo supportato Windows 11 (introdotta nella versione 10.0.22000.0)
Intestazione appmodel.h

Vedi anche

Usare l'API di dipendenza dinamica per fare riferimento ai pacchetti MSIX in fase di esecuzione