Funzione MsiGetProductInfoA (msi.h)

La funzione MsiGetProductInfo restituisce informazioni sul prodotto per i prodotti pubblicati e installati.

Sintassi

UINT MsiGetProductInfoA(
  [in]      LPCSTR  szProduct,
  [in]      LPCSTR  szAttribute,
  [out]     LPSTR   lpValueBuf,
  [in, out] LPDWORD pcchValueBuf
);

Parametri

[in] szProduct

Specifica il codice prodotto per il prodotto.

[in] szAttribute

Specifica la proprietà da recuperare.

Le proprietà obbligatorie sono sicuramente disponibili, ma altre proprietà sono disponibili solo se tale proprietà è impostata. Per ulteriori informazioni, vedi Proprietà. Le proprietà nell'elenco seguente possono essere recuperate solo dalle applicazioni installate.

Proprietà Significato
INSTALLPROPERTY_HELPLINK
Collegamento di supporto. Per altre informazioni, vedere la proprietà ARPHELPLINK .
INSTALLPROPERTY_HELPTELEPHONE
Telefono di supporto. Per altre informazioni, vedere la proprietà ARPHELPTELEPHONE .
INSTALLPROPERTY_INSTALLDATE
L'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 l'opzione della riga di comando /v viene usata per ripristinare il prodotto. Se il prodotto non ha ricevuto riparazioni o patch, questa proprietà contiene l'ora in cui il prodotto è stato installato nel computer.
INSTALLPROPERTY_INSTALLEDLANGUAGE
Lingua installata.

Windows Installer 4.5 e versioni precedenti: Non supportato.

INSTALLPROPERTY_INSTALLEDPRODUCTNAME
Nome del prodotto installato. Per altre informazioni, vedere la proprietà ProductName .
INSTALLPROPERTY_INSTALLLOCATION
Percorso di installazione. Per altre informazioni, vedere la proprietà ARPINSTALLLOCATION .
INSTALLPROPERTY_INSTALLSOURCE
Origine dell'installazione. Per altre informazioni, vedere la proprietà SourceDir .
INSTALLPROPERTY_LOCALPACKAGE
Pacchetto memorizzato nella cache locale.
INSTALLPROPERTY_PUBLISHER
Server di pubblicazione. Per altre informazioni, vedere la proprietà Manufacturer .
INSTALLPROPERTY_URLINFOABOUT
Informazioni sull'URL. Per altre informazioni, vedere la proprietà ARPURLINFOABOUT .
INSTALLPROPERTY_URLUPDATEINFO
Informazioni sull'aggiornamento degli URL. Per altre informazioni, vedere la proprietà ARPURLUPDATEINFO .
INSTALLPROPERTY_VERSIONMINOR
Versione secondaria del prodotto derivata dalla proprietà ProductVersion .
INSTALLPROPERTY_VERSIONMAJOR
Versione principale del prodotto derivata dalla proprietà ProductVersion .
INSTALLPROPERTY_VERSIONSTRING
Versione del prodotto. Per altre informazioni, vedere la proprietà ProductVersion .
 

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à ProductID .
RegCompany La società registrata per utilizzare questo prodotto.
RegOwner Il proprietario registrato per utilizzare questo 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. Il valore 1 (uno) indica un prodotto installato usando una trasformazione a più istanze e la proprietà MSINEWINSTANCE. Disponibile con il programma di installazione che esegue Windows Server 2003 o Windows XP con SP1. Per altre informazioni, vedere Installazione di più istanze di prodotti e patch.
 

Le proprietà annunciate nell'elenco seguente possono essere recuperate dalle applicazioni annunciate o installate.

Proprietà Descrizione
INSTALLPROPERTY_TRANSFORMS Trasformazioni.
INSTALLPROPERTY_LANGUAGE Lingua del prodotto.
INSTALLPROPERTY_PRODUCTNAME Nome prodotto leggibile. Per altre informazioni, vedere la proprietà ProductName .
INSTALLPROPERTY_ASSIGNMENTTYPE Uguale a 0 (zero) se il prodotto viene annunciato o installato per utente.

Uguale a 1 (uno) se il prodotto viene annunciato o installato per computer per tutti gli utenti.

INSTALLPROPERTY_PACKAGECODE Identificatore del pacchetto da cui è stato installato il prodotto. Per altre informazioni, vedere Codici di pacchetto.
INSTALLPROPERTY_VERSION Versione del prodotto derivata dalla proprietà ProductVersion .
INSTALLPROPERTY_PRODUCTICON Icona primaria per il pacchetto. Per altre informazioni, vedere la proprietà ARPPRODUCTICON .
INSTALLPROPERTY_PACKAGENAME Nome del pacchetto di installazione originale.
INSTALLPROPERTY_AUTHORIZED_LUA_APP Un valore (1) indica un prodotto che può essere utilizzato da utenti non amministratori tramite l'applicazione di patch al controllo dell'account utente. 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] lpValueBuf

Puntatore a un buffer che riceve il valore della proprietà. Questo parametro può essere null.

[in, out] pcchValueBuf

Puntatore a una variabile che specifica le dimensioni, in caratteri, del buffer a cui punta il parametro lpValueBuf . Nell'input si tratta della dimensione completa del buffer, incluso uno spazio per un carattere Null di terminazione. Se il buffer passato è troppo piccolo, il conteggio restituito non include il carattere Null di terminazione.

Se lpValueBuf è null, pcchValueBuf può essere null. In questo caso, la funzione verifica che la proprietà sia registrata correttamente con il prodotto.

Valore restituito

Valore Significato
ERROR_BAD_CONFIGURATION
I dati di configurazione sono danneggiati.
ERROR_INVALID_PARAMETER
Alla funzione è stato passato un parametro non valido.
ERROR_MORE_DATA
Un buffer è troppo piccolo per contenere i dati richiesti.
ERROR_SUCCESS
La funzione è stata completata correttamente.
ERROR_UNKNOWN_PRODUCT
Il prodotto non è stato modificato o disinstallato.
ERROR_UNKNOWN_PROPERTY
La proprietà non è riconosciuta.
Nota La funzione MsiGetProductInfo restituisce ERROR_UNKNOWN_PROPERTY se l'applicazione sottoposta a query viene pubblicizzata e non installata.
 

Commenti

Quando viene restituita la funzione MsiGetProductInfo , il parametro pcchValueBuf contiene la lunghezza della stringa archiviata nel buffer. Il conteggio restituito non include il carattere Null di terminazione. Se il buffer non è sufficientemente grande, MsiGetProductInfo restituisce ERROR_MORE_DATA e pcchValueBuf contiene le dimensioni della stringa, in caratteri, senza contare il carattere Null.

MsiGetProductInfo(INSTALLPROPERTY_LOCALPACKAGE) non restituisce necessariamente un percorso al pacchetto memorizzato nella cache. Il pacchetto memorizzato nella cache è solo per uso interno. Le installazioni in modalità manutenzione devono essere richiamate tramite le funzioni MsiConfigureFeature, MsiConfigureProduct o MsiConfigureProductEx .

Se si tenta di usare MsiGetProductInfo per eseguire una query su un prodotto annunciato per una proprietà disponibile solo per i prodotti installati, la funzione restituisce ERROR_UNKNOWN_PROPERTY. Ad esempio, se l'applicazione viene annunciata e non installata, una query per la proprietà INSTALLPROPERTY_INSTALLLOCATION restituisce un errore di ERROR_UNKNOWN_PROPERTY.

Nota

L'intestazione msi.h definisce MsiGetProductInfo 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

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 Windows Installer Run-Time Requirements .See the Windows Installer requirements for information about the minimum Windows Service Pack that is required by a Windows Installer version.
Piattaforma di destinazione Windows
Intestazione msi.h
Libreria Msi.lib
DLL Msi.dll

Vedi anche

Determinazione del contesto di installazione

Non supportato in Windows Installer 2.0 e versioni precedenti

Funzioni di stato del sistema