Share via


Función SetupQueueCopyA (setupapi.h)

[Esta función está disponible para su uso en los sistemas operativos indicados en la sección Requisitos. En versiones posteriores podría modificarse o no estar disponible. 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 dispositivos.

La función SetupQueueCopy agrega una única operación de copia de archivos a una cola de archivos de instalación.

Sintaxis

WINSETUPAPI BOOL SetupQueueCopyA(
  [in] HSPFILEQ QueueHandle,
  [in] PCSTR    SourceRootPath,
  [in] PCSTR    SourcePath,
  [in] PCSTR    SourceFilename,
  [in] PCSTR    SourceDescription,
  [in] PCSTR    SourceTagfile,
  [in] PCSTR    TargetDirectory,
  [in] PCSTR    TargetFilename,
  [in] DWORD    CopyStyle
);

Parámetros

[in] QueueHandle

Identificador de una cola de archivos de instalación, tal y como lo devuelve SetupOpenFileQueue.

[in] SourceRootPath

Puntero a una cadena terminada en null que especifica la raíz del origen de esta copia, como A:.

[in] SourcePath

Puntero a una cadena terminada en null que especifica la ruta de acceso relativa a SourceRootPath donde se puede encontrar el archivo. Este parámetro puede ser NULL.

[in] SourceFilename

Puntero a una cadena terminada en null que especifica la parte del nombre de archivo del archivo que se va a copiar.

[in] SourceDescription

Puntero a una cadena terminada en null que especifica una descripción del medio de origen que se va a usar durante los mensajes de disco. Este parámetro puede ser NULL.

[in] SourceTagfile

Puntero a una cadena terminada en null que especifica un archivo de etiqueta cuya presencia en SourceRootPath indica la presencia del medio de origen. Este parámetro puede ser NULL. Si no se especifica, el propio archivo se usará como archivo de etiqueta si es necesario.

[in] TargetDirectory

Puntero a una cadena terminada en null que especifica el directorio donde se va a copiar el archivo.

[in] TargetFilename

Puntero a una cadena terminada en null que especifica el nombre del archivo de destino. Este parámetro puede ser NULL. Si no se especifica, el archivo de destino tendrá el mismo nombre que el archivo de origen.

[in] CopyStyle

Especifica el comportamiento de la operación de copia de archivos. Este parámetro puede ser una combinación de los valores siguientes.

SP_COPY_DELETESOURCE

Elimine el archivo de origen tras una copia correcta. El autor de la llamada no recibe una notificación si se produce un error en la eliminación.

SP_COPY_REPLACEONLY

Copie el archivo solo si hacerlo sobrescribiría un archivo en la ruta de acceso de destino. No se notifica al autor de la llamada.

SP_COPY_NEWER_OR SAME

Examine cada archivo que se va a copiar para ver si sus recursos de versión indican que es la misma versión o no es más reciente que una copia existente en el destino.

La información de versión de archivo utilizada durante las comprobaciones de versión es que se especifica en los miembros dwFileVersionMS y dwFileVersionLS de una estructura de VS_FIXEDFILEINFO , tal y como se rellenan en las funciones de versión. Si uno de los archivos no tiene recursos de versión o si tienen información de versión idéntica, el archivo de origen se considera más reciente.

Si el archivo de origen no es igual en la versión o posterior, y se especifica CopyMsgHandler , se notifica al autor de la llamada y se puede cancelar la copia. Si no se especifica CopyMsgHandler , el archivo no se copia.

SP_COPY_NEWER_ONLY

Examine cada archivo que se va a copiar para ver si sus recursos de versión indican que no es más reciente que una copia existente en el destino. Si el archivo de origen es más reciente pero no es igual a en la versión del destino existente, se copia el archivo.

SP_COPY_NOOVERWRITE

Compruebe si el archivo de destino existe y, si es así, notifique al autor de la llamada que puede vetar la copia. Si no se especifica CopyMsgHandler , el archivo no se sobrescribe.

SP_COPY_NODECOMP

No descomprima el archivo. Cuando se establece esta marca, el archivo de destino no recibe la forma sin comprimir del nombre de origen (si procede). Por ejemplo, copiar f:\x86\cmd.ex_ en \install\temp da como resultado un archivo de destino de \install\temp\cmd.ex_. Si no se especificó la marca SP_COPY_NODECOMP, el archivo se descomprimiría y el destino se llamaría \install\temp\cmd.exe. La parte de nombre de archivo de DestinationName, si se especifica, se quita y reemplaza por el nombre de archivo de origen. Cuando se especifica SP_COPY_NODECOMP, no se puede comprobar ninguna información de idioma o versión.

SP_COPY_LANGUAGEAWARE

Examine cada archivo que se va a copiar para ver si su idioma difiere del idioma de cualquier archivo existente que ya esté en el destino. Si es así, y se especifica CopyMsgHandler , se notifica al autor de la llamada y se puede cancelar la copia. Si no se especifica CopyMsgHandler , el archivo no se copia.

SP_COPY_SOURCE_ABSOLUTE

SourceFile es una ruta de acceso de origen completa. No lo busque en la sección SourceDisksNames del archivo INF.

SP_COPY_SOURCEPATH_ABSOLUTE

SourcePathRoot es la parte de ruta de acceso completa del archivo de origen. Omita el origen relativo especificado en la sección SourceDisksNames del archivo INF del medio de origen donde se encuentra el archivo. Esta marca se omite si se especifica SP_COPY_SOURCE_ABSOLUTE.

SP_COPY_FORCE_IN_USE

Si el destino existe, comporte como si estuviera en uso y poner en cola el archivo para copiarlo en el siguiente reinicio del sistema.

SP_COPY_IN_USE_NEEDS_REBOOT

Si el archivo estaba en uso durante la operación de copia, avise al usuario de que el sistema debe reiniciarse.

SP_COPY_NOSKIP

No proporcione al usuario la opción de omitir un archivo.

SP_COPY_FORCE_NOOVERWRITE

Compruebe si el archivo de destino existe y, si es así, el archivo no se sobrescribe. No se notifica al autor de la llamada.

SP_COPY_FORCE_NEWER

Examine cada archivo que se va a copiar para ver si sus recursos de versión (o marcas de tiempo para archivos que no son de imagen) indican que no es más reciente que una copia existente en el destino. Si el archivo que se va a copiar no es más reciente, el archivo no se copia. No se notifica al autor de la llamada.

SP_COPY_WARNIFSKIP

Si el usuario intenta omitir un archivo, avisa de que omitir un archivo puede afectar a la instalación. (Se usa para archivos críticos del sistema).

Valor devuelto

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

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Si se especifica un directorio UNC como directorio de destino de una operación de copia de archivos, debe asegurarse de que existe antes de confirmar la cola. Las funciones de instalación no comprueban la existencia de y no crean directorios UNC. Si el directorio UNC de destino no existe, se producirá un error en la copia del archivo.

Nota

El encabezado setupapi.h define SetupQueueCopy 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 Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado setupapi.h
Library Setupapi.lib
Archivo DLL Setupapi.dll

Vea también

Funciones

Información general

SetupQueueCopySection

SetupQueueDefaultCopy

SetupQueueDelete

SetupQueueRename