Compartir a través de


Función SetupGetSourceFileLocationA (setupapi.h)

[Esta función está disponible para su uso en los sistemas operativos indicados en la sección Requisitos. Puede modificarse o no estar disponible en versiones posteriores. SetupAPI ya no debe usarse para instalar aplicaciones. En su lugar, use Windows Installer para desarrollar instaladores de aplicaciones. SetupAPI sigue usándose para instalar controladores de dispositivo.]

La función SetupGetSourceFileLocation recupera la ubicación de un archivo de origen enumerado en un archivo INF.

Sintaxis

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
);

Parámetros

[in] InfHandle

Identificador del archivo INF que contiene las secciones sourceDisksNames y SourceDisksFiles. Si existen secciones específicas de la plataforma para el sistema del usuario (por ejemplo, sourceDisksNames.x86 y SourceDisksFiles.x86), se usará la sección específica de la plataforma.

[in] InfContext

Puntero opcional al contexto de una línea en una sección Copiar archivos para la que se va a recuperar la ruta de acceso de origen completa. Si este parámetro es NULL , fileName se busca en la sección SourceDisksFiles del archivo INF especificado por InfHandle.

[in] FileName

Puntero opcional a un cadena nulaterminada que contiene el nombre de archivo (sin ruta de acceso) para el que se va a devolver la ubicación de origen completa. Este parámetro puede ser NULL, pero debe especificarse FileName o InfContext.

[in, out] SourceId

Puntero a una variable que recibe el identificador de origen del medio donde se encuentra el archivo desde la sección SourceDisksNamesNames del archivo INF.

[in, out] ReturnBuffer

Puntero opcional a un búfer para recibir la ruta de acceso de origen relativa. La ruta de acceso de origen no incluye el propio nombre de archivo ni incluye una letra de unidad o un nombre de recurso compartido de red. La ruta de acceso no se inicia ni termina con una barra diagonal inversa (), por lo que la cadena vacía especifica el directorio raíz. Debe usar un búfer de cadena terminadonull. El cadena terminada en nullno debe superar el tamaño del búfer de destino. Puede llamar a la función una vez para obtener el tamaño de búfer necesario, asignar la memoria necesaria y, a continuación, llamar a la función una segunda vez para recuperar los datos. Con esta técnica, puede evitar errores debido a un tamaño de búfer insuficiente. Consulte la sección Comentarios. Este parámetro puede ser null.

[out] ReturnBufferSize

Tamaño del búfer al que apunta ReturnBuffer, en caracteres. Este número incluye el terminador de null .

[in, out] RequiredSize

Puntero opcional a una variable que recibe el tamaño necesario para el búfer al que apunta el parámetro ReturnBuffer, en caracteres. Este número incluye el terminador de null . Si el tamaño necesario es mayor que el valor especificado por ReturnBufferSize, se produce un error en la función y GetLastError devuelve ERROR_INSUFFICIENT_BUFFER.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es un valor distinto de cero.

Si se produce un error en la función, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Observaciones

Si se llama a esta función con un returnBuffer de null y un ReturnBufferSize de cero, la función coloca el tamaño del búfer necesario para contener los datos especificados en la variable a la que apunta RequiredSize. Si la función se ejecuta correctamente, el valor devuelto es un valor distinto de cero. De lo contrario, el valor devuelto es cero y se puede obtener información de error extendida llamando a GetLastError.

Nota

El encabezado setupapi.h define SetupGetSourceFileLocation como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows XP [solo aplicaciones de escritorio]
servidor mínimo admitido Windows Server 2003 [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de setupapi.h
biblioteca de Setupapi.lib
DLL de Setupapi.dll

Consulte también

funciones de

información general

SetupGetSourceFileSize

setupGetSourceInfo