Condividi tramite


Funzione MsiIsProductElevatedA (msi.h)

La funzione msiIsProductElevated restituisce se il prodotto è gestito o meno. Solo le applicazioni che richiedono privilegi elevati per l'installazione e l'installazione tramite annunci pubblicitari vengono considerate gestite, il che significa che un'applicazione installata per computer viene sempre considerata gestita.

Un'applicazione installata per utente viene considerata gestita solo se viene pubblicizzata da un processo di sistema locale che rappresenta l'utente. Per altre informazioni, vedere Annuncio di un'applicazione Per-User da installare con privilegi elevati.

MsiIsProductElevated verifica che il sistema locale sia proprietario dei dati del Registro di sistema del prodotto. La funzione non fa riferimento ai criteri dell'account, ad esempio AlwaysInstallElevated.

Sintassi

UINT MsiIsProductElevatedA(
  [in]  LPCSTR szProduct,
  [out] BOOL   *pfElevated
);

Parametri

[in] szProduct

GUID del codice prodotto completo del prodotto.

Questo parametro è obbligatorio e non può essere null o vuoto.

[out] pfElevated

Puntatore a un valore BOOL per il risultato.

Questo parametro non può essere NULL.

Valore restituito

Se la funzione ha esito positivo, il valore restituito viene ERROR_SUCCESS e pfElevated viene impostato su TRUE se il prodotto è un'applicazione gestita.

Se la funzione ha esito negativo, il valore restituito è uno dei codici di errore identificati nella tabella seguente.

Codice restituito Descrizione
ERROR_UNKNOWN_PRODUCT
Il prodotto non è attualmente noto.
ERROR_INVALID_PARAMETER
Alla funzione viene passato un argomento non valido.
ERROR_BAD_CONFIGURATION
Le informazioni di configurazione per il prodotto non sono valide.
ERROR_FUNCTION_FAILED
La funzione non è riuscita.
ERROR_CALL_NOT_IMPLEMENTED
La funzione non è disponibile per una piattaforma specifica.

Osservazioni

Nota

L'intestazione msi.h definisce MsiIsProductElevated come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows Installer 5.0 in Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 in Windows Server 2008 o Windows Vista. Windows Installer in Windows Server 2003 o Windows XP. Per informazioni sul Service Pack minimo di Windows richiesto da una versione di Windows Installer, vedere Requisiti di windows Run-Time.
piattaforma di destinazione Finestre
intestazione msi.h
libreria Msi.lib
dll Msi.dll

Vedere anche

determinare il contesto di installazione

Installazione di un pacchetto con privilegi elevati per un non amministratore