Funzione MsiGetProductInfoExW (msi.h)
La funzione msiGetProductInfoEx
informazioni su un'istanza di un prodotto installato con un account utente diverso dall'utente corrente.
Il processo chiamante deve disporre di privilegi amministrativi per un utente diverso dall'utente corrente. La funzione MsiGetProductInfoEx
Questa funzione è un'estensione della funzione msiGetProductInfo
Sintassi
UINT MsiGetProductInfoExW(
[in] LPCWSTR szProductCode,
[in] LPCWSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCWSTR szProperty,
[out, optional] LPWSTR szValue,
[in, out, optional] LPDWORD pcchValue
);
Parametri
[in] szProductCode
PRODUCTCode GUID dell'istanza del prodotto su cui viene eseguita una query.
[in] szUserSid
Identificatore di sicurezza (SID) dell'account in cui esiste l'istanza del prodotto su cui viene eseguita una query. Un NULL specifica il SID utente corrente.
SID | Significato |
---|---|
|
Utente attualmente connesso. |
|
Enumerazione per un utente specifico nel sistema. Un esempio di SID utente è "S-1-3-64-2415071341-1358098788-3127455600-2561". |
[in] dwContext
Contesto di installazione dell'istanza del prodotto su cui viene eseguita una query.
[in] szProperty
Proprietà su cui viene eseguito l'esecuzione di query.
Proprietà da recuperare. Le proprietà nella tabella seguente possono essere recuperate solo dalle applicazioni già installate. Tutte le proprietà obbligatorie sono sicuramente disponibili, ma altre proprietà sono disponibili solo se la proprietà è impostata. Per altre informazioni, vedere
proprietà obbligatorie e proprietà .
Proprietà | Significato |
---|---|
|
Stato del prodotto restituito in formato stringa come "1" per l'annuncio e "5" per l'installazione. |
|
Collegamento di supporto. Per altre informazioni, vedere la proprietà |
|
Telefono di supporto. Per altre informazioni, vedere la proprietà |
|
Ultima volta che il prodotto ha ricevuto il servizio. Il valore di questa proprietà viene sostituito ogni volta che viene applicata o rimossa una patch dal prodotto o viene usata l'opzione /v Command-Line Option per riparare il prodotto. Se il prodotto non ha ricevuto riparazioni o patch questa proprietà contiene l'ora in cui il prodotto è stato installato nel computer. |
|
Lingua installata.
Windows Installer 4.5 e versioni precedenti: Non supportato. |
|
Nome del prodotto installato. Per altre informazioni, vedere la proprietà |
|
Percorso di installazione. Per altre informazioni, vedere la proprietà ARPINSTALLLOCATION. |
|
Origine dell'installazione. Per altre informazioni, vedere la proprietà |
|
Pacchetto memorizzato nella cache locale. |
|
Autore. Per altre informazioni, vedere la proprietà manufacturer di |
|
Informazioni sull'URL. Per altre informazioni, vedere la proprietà ARPURLINFOABOUT. |
|
Informazioni sull'aggiornamento dell'URL. Per altre informazioni, vedere la proprietà |
|
Versione secondaria del prodotto derivata dalla proprietà |
|
Versione principale del prodotto derivata dalla proprietà ProductVersion. |
|
Versione del prodotto. Per altre informazioni, vedere la proprietà |
Per recuperare l'ID prodotto, il proprietario registrato o la società registrata dalle applicazioni installate, impostare szProperty su uno dei valori stringa di testo seguenti.
Valore | Descrizione |
---|---|
Productid | Identificatore del prodotto. Per altre informazioni, vedere la proprietà |
RegCompany | Società registrata per l'utilizzo del prodotto. |
RegOwner | Proprietario registrato per l'utilizzo del prodotto. |
Per recuperare il tipo di istanza del prodotto, impostare szProperty sul valore seguente. Questa proprietà è disponibile per i prodotti annunciati o installati.
Valore | Descrizione |
---|---|
InstanceType | Un valore mancante o un valore pari a 0 (zero) indica una normale installazione del prodotto. Un valore pari a uno (1) indica un prodotto installato usando una trasformazione a più istanze e la proprietà MSINEWINSTANCE. Per altre informazioni, vedere Installazione di più istanze di prodotti e patch. |
Le proprietà nella tabella seguente possono essere recuperate dalle applicazioni annunciate o installate. Queste proprietà non possono essere recuperate per le istanze del prodotto installate in un contesto non gestito per utente per account utente diversi dall'account utente corrente.
Proprietà | Descrizione |
---|---|
INSTALLPROPERTY_TRANSFORMS | Trasforma. |
INSTALLPROPERTY_LANGUAGE | Lingua del prodotto. |
INSTALLPROPERTY_PRODUCTNAME | Nome prodotto leggibile. Per altre informazioni, vedere la proprietà |
INSTALLPROPERTY_ASSIGNMENTTYPE | Uguale a 0 (zero) se il prodotto viene annunciato o installato per utente.
Uguale a uno (1) se il prodotto viene annunciato o installato per ogni computer per tutti gli utenti. |
INSTALLPROPERTY_PACKAGECODE | Identificatore del pacchetto da cui è installato un prodotto. Per altre informazioni, vedere la proprietà codici pacchetto |
INSTALLPROPERTY_VERSION | Versione del prodotto derivata dalla proprietà |
INSTALLPROPERTY_PRODUCTICON | Icona primaria per il pacchetto. Per altre informazioni, vedere la proprietà |
INSTALLPROPERTY_PACKAGENAME | Nome del pacchetto di installazione originale. |
INSTALLPROPERTY_AUTHORIZED_LUA_APP | Un valore pari a uno (1) indica un prodotto che può essere eseguito da utenti non amministratori usando controllo dell'account utente (UAC) applicazione di patch. Un valore mancante o un valore pari a 0 (zero) indica che l'applicazione di patch con privilegi minimi non è abilitata. Disponibile in Windows Installer 3.0 o versione successiva. |
[out, optional] szValue
Puntatore a un buffer che riceve il valore della proprietà. Questo buffer deve essere sufficientemente grande da contenere le informazioni. Se il buffer è troppo piccolo, la funzione restituisce ERROR_MORE_DATA e imposta *pcchValue sul numero di TCHAR nel valore, senza includere il carattere NULL di terminazione.
Se lpValue è impostato su NULL e pcchValue è impostato su un puntatore valido, la funzione restituisce ERROR_SUCCESS e imposta *pcchValue sul numero di TCHAR nel valore, non incluso il carattere NULL di terminazione. La funzione può quindi essere chiamata di nuovo per recuperare il valore, con lpValue buffer sufficientemente grande da contenere *pcchValue + 1 caratteri.
Se lpValue e pcchValue sono entrambi impostati su null, la funzione restituisce ERROR_SUCCESS se il valore esiste, senza recuperare il valore.
[in, out, optional] pcchValue
Puntatore a una variabile che specifica il numero di
Questo parametro può essere impostato su NULL solo se lpValue è null. In caso contrario, la funzione restituisce ERROR_INVALID_PARAMETER.
Valore restituito
La funzione msiGetProductInfoEx
Codice restituito | Descrizione |
---|---|
|
Il processo chiamante deve disporre di privilegi amministrativi per ottenere informazioni per un prodotto installato per un utente diverso dall'utente corrente. |
|
I dati di configurazione sono danneggiati. |
|
Alla funzione viene passato un parametro non valido. |
|
Un buffer è troppo piccolo per contenere i dati richiesti. |
|
La funzione è stata completata correttamente. |
|
Il prodotto non è stato modificato o disinstallato. |
|
La proprietà non è riconosciuta.
Nota La funzione MsiGetProductInfo restituisce ERROR_UNKNOWN_PROPERTY se l'applicazione su cui viene eseguita una query viene pubblicizzata e non installata.
|
|
Errore interno imprevisto. |
Osservazioni
Quando la funzione MsiGetProductInfoEx restituisce, il parametro pcchValue contiene la lunghezza della stringa archiviata nel buffer. Il conteggio restituito non include il carattere Null di terminazione. Se il buffer non è sufficientemente grande, MsiGetProductInfoEx restituisce ERROR_MORE_DATAe il parametro pcchValue contiene le dimensioni della stringa, in TCHAR, senza contare il carattere Null.
La funzione MsiGetProductInfoEx
La funzione msiGetProductInfo
Nota
L'intestazione msi.h definisce MsiGetProductInfoEx 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. 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
non supportato in Windows Installer 2.0 e versioni precedenti