Funzione MsiSourceListGetInfoA (msi.h)
La funzione MsiSourceListGetInfo recupera informazioni sull'elenco di origine per un prodotto o una patch in un contesto specifico.
Sintassi
UINT MsiSourceListGetInfoA(
[in] LPCSTR szProductCodeOrPatchCode,
[in, optional] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] DWORD dwOptions,
[in] LPCSTR szProperty,
[out, optional] LPSTR szValue,
[in, out, optional] LPDWORD pcchValue
);
Parametri
[in] szProductCodeOrPatchCode
GUID ProductCode o patch del prodotto o della patch. Usare una stringa con terminazione null. Se la stringa è più lunga di 39 caratteri, la funzione ha esito negativo e restituisce ERROR_INVALID_PARAMETER. Questo parametro non può essere NULL.
[in, optional] szUserSid
Questo parametro può essere un identificatore di sicurezza stringa (SID) che specifica l'account utente che contiene il prodotto o la patch. Il SID non viene convalidato o risolto. Un SID non corretto può restituire ERROR_UNKNOWN_PRODUCT o ERROR_UNKNOWN_PATCH. Quando si fa riferimento a un contesto di computer, szUserSID deve essere NULL e dwContext deve essere MSIINSTALLCONTEXT_MACHINE.
[in] dwContext
Questo parametro specifica il contesto dell'istanza di prodotto o patch. Questo parametro può contenere uno dei valori seguenti.
[in] dwOptions
Il valore dwOptions specifica il significato di szProductCodeOrPatchCode.
Flag | Significato |
---|---|
|
szProductCodeOrPatchCode è un GUID del codice prodotto. |
|
szProductCodeOrPatchCode è un GUID del codice patch. |
[in] szProperty
Stringa con terminazione null che specifica il valore della proprietà da recuperare. Il parametro szProperty può essere uno dei valori seguenti.
[out, optional] szValue
Buffer di output che riceve le informazioni. Questo buffer deve essere abbastanza grande per contenere le informazioni. Se il buffer è troppo piccolo, la funzione restituisce ERROR_MORE_DATA e imposta *pcchValue sul numero di TCHAR nel valore, non incluso il carattere NULL terminante.
Se szValue è 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 terminante. La funzione può quindi essere chiamata di nuovo per recuperare il valore, con buffer szValue abbastanza grande per contenere *pcchValue + 1 caratteri.
Se szValue 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 TCHAR nel buffer szValue . Quando la funzione restituisce, questo parametro viene impostato sulla dimensione del valore richiesto se la funzione copia il valore nel buffer specificato. La dimensione viene restituita come numero di TCHAR nel valore richiesto, non incluso il carattere Null terminante.
Questo parametro può essere impostato su NULL solo se szValue è null, altrimenti la funzione restituisce ERROR_INVALID_PARAMETER.
Valore restituito
La funzione MsiSourceListGetInfo restituisce i valori seguenti.
Valore | Significato |
---|---|
|
L'utente non ha la possibilità di leggere l'elenco di origine specificato. Questo non indica se viene trovato un prodotto o una patch. |
|
I dati di configurazione sono danneggiati. |
|
Un parametro non valido viene passato alla funzione. |
|
Il buffer fornito non è sufficiente per contenere i dati richiesti. |
|
La proprietà viene recuperata correttamente. |
|
La patch non viene trovata. |
|
Il prodotto non viene trovato. |
|
La proprietà di origine non viene trovata. |
|
Errore interno imprevisto. |
Commenti
Gli amministratori possono modificare l'installazione di un prodotto o di un'istanza di patch presente nel contesto del computer o nel proprio contesto per utente (gestito o non gestito). Possono modificare l'installazione di un prodotto o di un'istanza di patch presente nel contesto gestito dall'utente. Gli amministratori non possono modificare l'installazione di un altro utente di un prodotto o di un'istanza di patch presente nel contesto non gestito di un altro utente.
Gli amministratori non possono modificare l'installazione di un prodotto o di un'istanza di patch presente nel contesto per utente di un altro utente (gestito o non gestito). Possono modificare l'installazione di un prodotto o di un'istanza di patch presente nel proprio contesto per utente non gestito. Possono modificare l'installazione di un prodotto o di un'istanza di patch nel contesto del computer o nel proprio contesto gestito per utente solo se sono abilitati per cercare un prodotto o un'origine patch. Gli utenti possono essere abilitati per cercare le origini impostando i criteri. Per altre informazioni, vedere DisableBrowse, AllowLockdownBrowse e Criteri AlwaysInstallElevated .
Nota
L'intestazione msi.h definisce MsiSourceListGetInfo 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
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 3.0 o versione successiva 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
Non supportato in Windows Installer 2.0 e versioni precedenti