Função SetupQueueCopySectionA (setupapi.h)
[Essa função está disponível para uso nos sistemas operacionais indicados na seção Requisitos. Ele pode estar alterado ou indisponível em versões subsequentes. SetupAPI não deve mais ser usado para instalar aplicativos. Em vez disso, use o Windows Installer para desenvolver instaladores de aplicativos. SetupAPI continua a ser usado para instalar drivers de dispositivo.]
A função SetupQueueCopySection coloca todos os arquivos em uma seção de um arquivo INF em uma fila de instalação para cópia. A seção deve estar no formato correto Copiar Arquivos e o arquivo INF deve conter SourceDisksFiles e seções sourceDisksNames (ou ter tido os arquivos INF que contêm essas seções acrescentadas).
Sintaxe
WINSETUPAPI BOOL SetupQueueCopySectionA(
[in] HSPFILEQ QueueHandle,
[in] PCSTR SourceRootPath,
[in] HINF InfHandle,
[in] HINF ListInfHandle,
[in] PCSTR Section,
[in] DWORD CopyStyle
);
Parâmetros
[in] QueueHandle
Manipular para uma fila de arquivos de instalação, conforme retornado por SetupOpenFileQueue.
[in] SourceRootPath
Ponteiro para uma cadeia de caracteres terminada em nulo que especifica a raiz da origem dessa cópia, como A:.
[in] InfHandle
Manipule para um arquivo INF aberto que contém as seções SourceDisksFiles e SourceDisksNames. Se ListInfHandle não for especificado, InfHandle conterá os nomes da seção. Se houver seções específicas da plataforma para o sistema do usuário (por exemplo, SourceDisksNames.x86 e SourceDisksFiles.x86), a seção específica da plataforma será usada.
[in] ListInfHandle
Identificador opcional para um arquivo INF aberto que contém a seção a ser enfileirada para cópia. Se ListInfHandle não for especificada, InfHandle deverá conter a seção.
[in] Section
Ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome da seção a ser enfileirada para cópia.
[in] CopyStyle
Sinalizadores que controlam o comportamento da operação de cópia de arquivo. Esses sinalizadores podem ser uma combinação dos valores a seguir.
SP_COPY_DELETESOURCE
Exclua o arquivo de origem após a cópia bem-sucedida. O chamador não será notificado se a exclusão falhar.
SP_COPY_REPLACEONLY
Copie o arquivo somente se isso substituir um arquivo no caminho de destino.
SP_COPY_NEWER_OR_SAME
Examine cada arquivo que está sendo copiado para ver se seus recursos de versão indicam que ele é igual na versão ou não mais recente do que uma cópia existente no destino.
As informações de versão do arquivo usadas durante as verificações de versão são especificadas no dwFileVersionMS e dwFileVersionLS membros de uma estrutura VS_FIXEDFILEINFO, conforme preenchido pelas funções de versão. Se um dos arquivos não tiver recursos de versão ou se tiverem informações de versão idênticas, o arquivo de origem será considerado mais recente.
Se o arquivo de origem não for igual na versão ou mais recente e CopyMsgHandler for especificado, o chamador será notificado e poderá cancelar a cópia. Se CopyMsgHandler não for especificado, o arquivo não será copiado.
SP_COPY_NEWER_ONLY
Examine cada arquivo que está sendo copiado para ver se seus recursos de versão indicam que ele não é mais recente do que uma cópia existente no destino. Se o arquivo de origem for mais recente, mas não for igual na versão para o destino existente, o arquivo será copiado.
SP_COPY_NOOVERWRITE
Verifique se o arquivo de destino existe e, nesse caso, notifique o chamador que pode vetar a cópia. Se CopyMsgHandler não for especificado, o arquivo não será substituído.
SP_COPY_NODECOMP
Não descompacte o arquivo. Quando esse sinalizador é definido, o arquivo de destino não recebe a forma descompactada do nome de origem (se apropriado). Por exemplo, copiar f:\x86s\cmd.ex_ para \install\temp resulta em um arquivo de destino de \install\temp\cmd.ex_. Se o sinalizador de SP_COPY_NODECOMP não tiver sido especificado, o arquivo será descompactado e o destino será chamado \install\temp\cmd.exe. A parte do nome do arquivo de DestinationName, se especificada, é removida e substituída pelo nome do arquivo de origem. Quando SP_COPY_NODECOMP é especificado, nenhuma informação de idioma ou versão pode ser verificada.
SP_COPY_LANGUAGEAWARE
Examine cada arquivo que está sendo copiado para ver se seu idioma difere do idioma de qualquer arquivo existente já no destino. Nesse caso, e CopyMsgHandler for especificado, o chamador será notificado e poderá cancelar a cópia. Se CopyMsgHandler não for especificado, o arquivo não será copiado.
SP_COPY_SOURCE_ABSOLUTE
sourceFile é um caminho de origem completo. Não pesquise na seção SourceDisksNames do arquivo INF.
SP_COPY_SOURCEPATH_ABSOLUTE
SourcePathRoot é a parte completa do caminho do arquivo de origem. Ignore a fonte relativa especificada na seção SourceDisksNames do arquivo INF para a mídia de origem em que o arquivo está localizado. Esse sinalizador será ignorado se SP_COPY_SOURCE_ABSOLUTE for especificado.
SP_COPY_FORCE_IN_USE
Se o destino existir, comporte-se como se estivesse em uso e enfileira o arquivo para copiar na próxima reinicialização do sistema.
SP_COPY_IN_USE_NEEDS_REBOOT
Se o arquivo estiver em uso durante a operação de cópia, alerte o usuário de que o sistema precisa ser reinicializado.
SP_COPY_NOSKIP
Não dê ao usuário a opção de ignorar um arquivo.
SP_COPY_FORCE_NOOVERWRITE
Verifique se o arquivo de destino existe e, nesse caso, o arquivo não será substituído. O chamador não foi notificado.
SP_COPY_FORCE_NEWER
Examine cada arquivo que está sendo copiado para ver se seus recursos de versão (ou carimbos de data/hora para arquivos que não são de imagem) indicam que ele não é mais recente do que uma cópia existente no destino. Se o arquivo que está sendo copiado não for mais recente, o arquivo não será copiado. O chamador não foi notificado.
SP_COPY_WARNIFSKIP
Se o usuário tentar ignorar um arquivo, avise-o de que ignorar um arquivo pode afetar a instalação. (Usado para arquivos críticos do sistema.)
Valor de retorno
Se a função for bem-sucedida, o valor retornado será um valor diferente de zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Observações
Se um diretório UNC for especificado como o diretório de destino de uma operação de cópia de arquivo, você deverá garantir que ele exista antes que a fila seja confirmada. As funções de instalação não verificam a existência e não criam diretórios UNC. Se o diretório UNC de destino não existir, a cópia do arquivo falhará.
Essa função requer um arquivo INF do Windows. Talvez não haja suporte para alguns formatos de arquivo INF mais antigos.
Nota
O cabeçalho setupapi.h define SetupQueueCopySection como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows XP [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows Server 2003 [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | setupapi.h |
biblioteca | Setupapi.lib |
de DLL |
Setupapi.dll |