Funzione SetupGetStringFieldA (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 delle applicazioni. SetupAPI continua a essere usato per l'installazione dei driver di dispositivo.

La funzione SetupGetStringField recupera una stringa dal campo specificato di una riga in un file INF.

Sintassi

WINSETUPAPI BOOL SetupGetStringFieldA(
  [in]      PINFCONTEXT Context,
  [in]      DWORD       FieldIndex,
  [in, out] PSTR        ReturnBuffer,
  [in]      DWORD       ReturnBufferSize,
  [out]     PDWORD      RequiredSize
);

Parametri

[in] Context

Puntatore al contesto per una riga in un file INF.

[in] FieldIndex

Indice in base 1 del campo all'interno della riga specificata da cui recuperare la stringa. Utilizzare fieldIndex pari a 0 per recuperare una chiave stringa, se presente.

[in, out] ReturnBuffer

Puntatore facoltativo a un buffer che riceve la stringa con terminazione Null. È necessario assicurarsi che il buffer di destinazione sia uguale o maggiore del buffer di origine. Questo parametro può essere NULL. Vedere la sezione relativa alle osservazioni.

[in] ReturnBufferSize

Dimensioni del buffer a cui punta ReturnBuffer, in caratteri. Ciò include il carattere di terminazione Null .

[out] RequiredSize

Puntatore facoltativo a una variabile che riceve le dimensioni necessarie per il buffer a cui punta il parametro ReturnBuffer , in caratteri. Se viene specificato ReturnBuffer e le dimensioni effettive necessarie sono maggiori del valore specificato da ReturnBufferSize, la funzione ha esito negativo e non archivia la stringa nel buffer. In questo caso, una chiamata a GetLastError restituisce ERROR_INSUFFICIENT_BUFFER. Per la versione Unicode di questa funzione, le dimensioni necessarie sono in caratteri. Ciò include il carattere di terminazione Null .

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 returnBuffer di NULL e ReturnBufferSize pari a zero, la funzione inserisce le dimensioni del buffer necessarie per contenere i dati specificati nella variabile a cui punta RequiredSize. Se la funzione ha esito positivo, il valore restituito è un valore diverso da zero. In caso contrario, il valore restituito è zero e le informazioni sull'errore estese possono essere ottenute chiamando GetLastError.

È possibile chiamare la funzione una sola 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 dovuti a dimensioni del buffer insufficienti.

Si noti che la lunghezza massima di qualsiasi singola stringa specificata in una sezione Stringhe INF è di 512 caratteri, incluso il valore NULL di terminazione. Se la lunghezza della stringa è maggiore di 512, verrà troncata e non verrà restituito alcun errore. La lunghezza massima di qualsiasi stringa concatenata creata da uno o più token %strkey% è di 4096 caratteri.

Nota

L'intestazione setupapi.h definisce SetupGetStringField 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 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 (introdotto in Windows 10, versione 10.0.14393)

Vedi anche

Funzioni

Panoramica

SetupGetBinaryField

SetupGetIntField

SetupGetMultiSzField