Nem todas as operações são capazes de fornecer progresso dentro de uma única operação. Se você estivesse copiando mais de um arquivo, a barra de progresso funcionaria bem, avançando após cada transferência de arquivos. Mas como você só está transferindo um único arquivo, não há oportunidade de atualizar a barra de status até que a operação seja concluída.
Se a cópia for feita por um mecanismo remoto (por exemplo, se o seu computador pedir a outro computador para puxar o arquivo), o progresso durante a cópia do arquivo não será possível. Às vezes, o Windows opera dessa maneira porque permitir que o destinatário controle a transferência de arquivos permite que eles evitem a transferência de dados que já possuem. O Vista introduziu essa cópia inteligente acelerada e também existe nos grupos domésticos do Windows 7.
Essencialmente, é assim:
-
O Windows descobre qual arquivo copiar.
-
O Windows verifica se esse arquivo existe no destinatário e se o destinatário é capaz de fazer uma cópia acelerada. O Windows verifica se o arquivo é grande o suficiente para valer o esforço de usar a cópia inteligente.
-
Nesse caso, o Windows entra no modo de cópia acelerada e informa ao destinatário para puxar o arquivo.
-
O destinatário cria um índice de hash de sua versão do arquivo e solicita um índice de hash do computador de envio. O destinatário negocia as alterações com a máquina de envio até que os dois arquivos tenham o mesmo conteúdo.
-
O Windows obtém um relatório do outro lado que a sincronização de arquivos foi concluída e o destinatário tem os dados corretos.
Durante este processo, a máquina de envio não tem uma boa ideia de como a operação está progredindo. A Microsoft poderia ter incluído atualizações de progresso nas solicitações, mas não o fez.