WdRemoteCopy
Copia arquivos entre um PC local e um dispositivo remoto. Introduzida em: RIT 0.0.8-Preview. Suporte aCopyFrom a partir de: RIT 0.0.13-preview. Confira o Histórico de alterações.
Sintaxe
Parâmetros
_In_z_ remoteDeviceTipo: const char* O nome do host ou o endereço IP do dispositivo remoto (por exemplo,
"192.168.1.100" ou "MyDevKit").
_In_z_ sourcePathTipo: const char* O caminho de origem da cópia (por exemplo,
"C:\\builds\\MyGame" ao copiar para um dispositivo remoto). É um caminho local para CopyTo e um caminho remoto para CopyFrom.
_In_z_ destinationPathTipo: const char* O caminho de destino da cópia. Para
CopyTo, é um caminho remoto e pode ser absoluto (por exemplo, "D:\\Games\\MyGame") ou relativo à raiz comum (por exemplo, "MyGame"). Para CopyFrom, é um caminho local.
_In_opt_ copyOptionsTipo: const WdCopyOptions* Opcional. Especifica a direção da cópia e o alias da raiz comum. Passe
nullptr para usar as configurações padrão (CopyTo, local padrão da raiz comum se destinationPath for um caminho relativo).
_In_opt_ searchOptionsTipo: const WdCopySearchOptions* Opcional. Especifica padrões de inclusão/exclusão de arquivos e filtros de atributos (por exemplo,
"*.exe;*.dll" para copiar somente executáveis com CopyTo). Para CopyFrom, os padrões de nome não restringem a seleção de arquivos remotos. Passe nullptr para copiar todos os arquivos.
_In_opt_ statusCallbacksTipo: const WdCopyStatusCallbacks* Opcional. Especifica funções de retorno de chamada para receber atualizações de progresso e mensagens de diagnóstico durante a operação de cópia. Passe
nullptr para não receber retornos de chamada.
_In_opt_ cancellationHandleTipo: WdCancellationHandle Opcional. Um identificador de cancelamento criado por WdCreateCancellationHandle que pode ser passado para WdCancelRemoteCopy a partir de um thread separado para cancelar a operação de cópia. Passe
nullptr se o cancelamento não for necessário.
Valor retornado
Tipo: HRESULT RetornaS_OK se for bem-sucedido; caso contrário, retorna um código de erro.
Códigos de erro
Comentários
WdRemoteCopy é uma chamada síncrona e de bloqueio. Ela só retorna quando todos os arquivos tiverem sido copiados, a operação for cancelada por meio de WdCancelRemoteCopy ou ocorrer um erro.
Para habilitar o cancelamento, crie um WdCancellationHandle usando WdCreateCancellationHandle antes de chamar WdRemoteCopy e, em seguida, passe-o para WdCancelRemoteCopy a partir de um thread separado. Depois que WdRemoteCopy retornar, feche o identificador com WdCloseCancellationHandle.
Use WdCopyDirection::CopyTo para enviar arquivos do PC local para o dispositivo remoto ou CopyFrom para obter arquivos do dispositivo remoto para o PC local. A direção padrão é CopyTo.
O caminho remoto é destinationPath para CopyTo e sourcePath para CopyFrom. Se esse caminho for absoluto, o commonRootAlias em WdCopyOptions será ignorado. Se for relativo, o local padrão da raiz comum será usado, a menos que um commonRootAlias seja especificado.
Para receber atualizações de progresso durante a cópia, forneça uma estrutura WdCopyStatusCallbacks com ponteiros de função de retorno de chamada.
WdRemoteCopy não tenta novamente de forma automática em caso de falha. Se a operação falhar devido a uma interrupção de rede, o chamador deverá invocar WdRemoteCopy novamente. Os arquivos copiados com êxito antes da falha permanecem no destino; o comportamento de cópia delta garante que somente arquivos incompletos ou ausentes sejam transferidos novamente na nova tentativa. Não há tempo limite; a cópia continua até a conclusão, até ocorrer um erro ou até ser cancelada.
