Eu tenho um Javascript antigo ..er..script que executamos em instalações aqui (com cscript) que parou de funcionar corretamente em algum lugar após o início do ano passado. Estou tentando descobrir o porquê.
Parece que o método CopyFolder do FileSystemObject não está copiando todos os arquivos necessários. Mesmo se o diretório de destino não existir , a cópia falhará depois de copiar a maioria dos arquivos com "Permission Denied".
O código é mais ou menos o seguinte:
try {
stat.CopyFolder("C:\myinstalldir\SimulationModule",
"C:\Program Files\Microsoft Visual Studio 8\VC\\VCWizards\CodeWiz\Generic\", true);
} catch (e) {
WScript.Echo ("CodeWiz Folder copy failed: " + e.message);
}
O que estou vendo (novamente, mesmo que o diretório de destino não exista), é que todas as 12 pastas são copiadas, mas apenas 25 dos 31 arquivos (faltando todos os 5 de um diretório e um do diretório raiz). A mensagem que vejo se eu executar o script manualmente é: "Falha na cópia da pasta CodeWiz: permissão negada"
Nenhum dos arquivos de origem parece ser somente leitura ou oculto, e a mesma cópia de pasta funciona bem se eu fizer isso manualmente via explorer. Estou executando como usuário no grupo Administrador. Estou vendo esse comportamento no Windows 7 32 e 64 bits.
Alguma ideia do que está acontecendo aqui?