Funzione MsiGetProductInfoA (msi.h)
La funzione msiGetProductInfo
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.
La Proprietà obbligatorie è garantita la disponibilità, ma sono disponibili altre proprietà solo se tale proprietà è impostata. Per altre informazioni, vedere Proprietà. Le proprietà nell'elenco seguente possono essere recuperate solo dalle applicazioni installate.
Proprietà | Significato |
---|---|
|
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 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. |
|
Editore. Per altre informazioni, vedere la proprietà manufacturer di |
|
Informazioni sull'URL. Per altre informazioni, vedere la proprietà ARPURLINFOABOUT. |
|
Informazioni sull'aggiornamento url. Per altre informazioni, vedere la proprietà |
|
Versione secondaria del prodotto derivata dalla proprietà |
|
Versione principale del prodotto derivata dalla proprietà |
|
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 | La società registrata per utilizzare questo prodotto. |
RegOwner | 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 | 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 1 (uno) se il prodotto viene annunciato o installato per ogni 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à |
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] 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 delle dimensioni complete 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 |
---|---|
|
I dati di configurazione sono danneggiati. |
|
Alla funzione è stato 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.
|
Osservazioni
Quando viene restituita la funzione
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, MsiConfigureProducto MsiConfigureProductEx.
Se si tenta di usare MsiGetProductInfo per eseguire una query su un prodotto pubblicizzato per una proprietà disponibile solo per i prodotti installati, la funzione restituisce ERROR_UNKNOWN_PROPERTY. Ad esempio, se l'applicazione viene pubblicizzata 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 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
non supportato in Windows Installer 2.0 e versioni precedenti