Condividi tramite


Funzione SetupGetSourceFileLocationA (setupapi.h)

[Questa funzione è disponibile per l'uso nei sistemi operativi indicati nella sezione Requisiti. Potrebbe essere modificato o non disponibile nelle versioni successive. SetupAPI non deve più essere usata 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 SetupGetSourceFileLocation recupera il percorso di un file di origine elencato in un file INF.

Sintassi

WINSETUPAPI BOOL SetupGetSourceFileLocationA(
  [in]      HINF        InfHandle,
  [in]      PINFCONTEXT InfContext,
  [in]      PCSTR       FileName,
  [in, out] PUINT       SourceId,
  [in, out] PSTR        ReturnBuffer,
  [out]     DWORD       ReturnBufferSize,
  [in, out] PDWORD      RequiredSize
);

Parametri

[in] InfHandle

Handle per il file INF che contiene le sezioni SourceDisksNames e SourceDisksFiles. Se esistono sezioni specifiche della piattaforma per il sistema dell'utente, ad esempio SourceDisksNames.x86 e SourceDisksFiles.x86), verrà usata la sezione specifica della piattaforma.

[in] InfContext

Puntatore facoltativo al contesto di una riga in una sezione Copia file per cui recuperare il percorso di origine completo. Se questo parametro è NULL, FileName viene eseguita la ricerca nella sezione sourceDisksFiles del file INF specificato da InfHandle.

[in] FileName

Puntatore facoltativo a un nullstringa con terminazione contenente il nome file (nessun percorso) per cui restituire il percorso di origine completo. Questo parametro può essere NULL, ma è necessario specificare FileName o InfContext.

[in, out] SourceId

Puntatore a una variabile che riceve l'identificatore di origine del supporto in cui si trova il file dalla sezione SourceDisksNames del file INF.

[in, out] ReturnBuffer

Puntatore facoltativo a un buffer per ricevere il percorso di origine relativo. Il percorso di origine non include il nome file stesso, né include una lettera di unità o un nome di condivisione di rete. Il percorso non inizia o termina con una barra rovesciata (), quindi la stringa vuota specifica la directory radice. È consigliabile usare un nullbuffer di stringhe con terminazione. Il nullstringa con terminazione 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 Osservazioni. Questo parametro può essere NULL.

[out] ReturnBufferSize

Dimensioni del buffer a cui punta ReturnBuffer, in caratteri . Questo numero include il carattere di terminazione null .

[in, out] RequiredSize

Puntatore facoltativo a una variabile che riceve le dimensioni necessarie per il buffer a cui punta il parametro ReturnBuffer, in caratteri. Questo numero include il carattere di terminazione null . Se la dimensione richiesta è maggiore del valore specificato da ReturnBufferSize, la funzione ha esito negativo e 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 ottenere informazioni estese sull'errore, chiamare GetLastError.

Osservazioni

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 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 è possibile ottenere informazioni estese sull'errore chiamando GetLastError.

Nota

L'intestazione setupapi.h definisce SetupGetSourceFileLocation 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 XP [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione setupapi.h
libreria Setupapi.lib
dll Setupapi.dll

Vedere anche

Funzioni

panoramica

SetupGetSourceFileSize

SetupGetSourceInfo