Condividi tramite


Funzione SetupGetMultiSzFieldW (setupapi.h)

[Questa funzione è disponibile per l'uso nei sistemi operativi indicati nella sezione Requisiti. È possibile che in versioni successive sia stata modificata o non sia più disponibile. SetupAPI non deve più essere usato per l'installazione di applicazioni. Usare invece Windows Installer per lo sviluppo di programmi di installazione di applicazioni. SetupAPI continua a essere usato per l'installazione dei driver di dispositivo.

La funzione SetupGetMultiSzField recupera più stringhe archiviate in una riga di un file INF, dal campo specificato alla fine della riga.

Sintassi

WINSETUPAPI BOOL SetupGetMultiSzFieldW(
  [in]      PINFCONTEXT Context,
  [in]      DWORD       FieldIndex,
  [in, out] PWSTR       ReturnBuffer,
  [in]      DWORD       ReturnBufferSize,
  [in]      LPDWORD     RequiredSize
);

Parametri

[in] Context

Puntatore al contesto per una riga in un file INF.

[in] FieldIndex

Indice basato su 1 del campo iniziale all'interno della riga specificata da cui recuperare le stringhe. L'elenco di stringhe viene compilato da ogni campo a partire da questo punto alla fine della riga. FieldIndex di zero non è valido con questa funzione.

[in, out] ReturnBuffer

Puntatore facoltativo a un buffer di caratteri che riceve le stringhe. Ogni stringa viene terminata con valore Null, con un valore Null aggiuntivo alla fine dell'elenco di stringhe. La stringa con terminazione null non deve superare le dimensioni del buffer di destinazione. È possibile chiamare la funzione una volta per ottenere le dimensioni del buffer necessarie, allocare la memoria necessaria e quindi chiamare la funzione una seconda volta per recuperare i dati. Usando questa tecnica, è possibile evitare errori a causa di dimensioni del buffer insufficienti. Vedere la sezione relativa alle osservazioni. Questo parametro può essere NULL.

[in] ReturnBufferSize

Dimensioni del buffer a cui punta returnBuffer, in caratteri. Include il terminatore Null .

[in] RequiredSize

Puntatore facoltativo a una variabile che riceve le dimensioni necessarie per il buffer a cui punta ReturnBuffer, in caratteri. Include il terminatore Null . Se le dimensioni necessarie sono maggiori del valore specificato da ReturnBufferSize, la funzione ha esito negativo e una chiamata a GetLastError restituisce ERROR_INSUFFICIENT_BUFFER.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un valore diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

Se questa funzione viene chiamata con un ReturnBuffer di NULL e un ReturnBufferSize pari a zero, la funzione inserisce le dimensioni del buffer necessarie per contenere i dati specificati nella variabile puntata a RequiredSize. Se la funzione ha esito positivo in questo caso, il valore restituito è un valore diverso da zero. In caso contrario, il valore restituito è zero e le informazioni di errore estese possono essere ottenute chiamando GetLastError.

SetupGetMultiSzField non deve essere usato per scorrere i valori di stringa in una riga INF. È invece consigliabile usare SetupGetStringField. SetupGetMultiSzField restituisce un valore nel formato di REG_MULTI_SZ. Si tratta di una matrice di stringhe con terminazione null terminate da un carattere Null aggiuntivo. Questo formato non consente stringhe di lunghezza zero. Se l'elenco di stringhe contiene stringhe di lunghezza zero, SetupGetMultiSzField restituirà prematuramente quando rileva il primo valore stringa vuoto.

Nota

L'intestazione setupapi.h definisce SetupGetMultiSzField come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione setupapi.h
Libreria Setupapi.lib
DLL Setupapi.dll
Set di API ext-ms-win-setupapi-inf-l1-1-1 (introdotta in Windows 10, versione 10.0.14393)

Vedi anche

Funzioni

Panoramica

SetupGetBinaryField

SetupGetIntField

SetupGetStringField