У меня есть старый Javascript ..er..script, который мы запускаем здесь при установке (с cscript), который перестал работать должным образом где-то после начала прошлого года. Я пытаюсь понять, почему.
Похоже, что метод CopyFolder объекта FileSystemObject не копирует все необходимые файлы. Даже если целевой каталог не существует, произойдет сбой копирования после копирования большинства файлов с "Отказано в доступе".
Код примерно следующий:
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);
}
Что я вижу (опять же, даже если каталог назначения не существует), так это то, что все 12 папок копируются, но только 25 из 31 файлов (отсутствуют все 5 из одного каталога и одна из корневого каталога), Сообщение, которое я вижу, если я запускаю сценарий вручную: «Ошибка копирования папки CodeWiz: отказано в разрешении»
Похоже, что ни один из исходных файлов не предназначен для чтения или скрыт, и копия одной и той же папки работает нормально, если я делаю это вручную через проводник. Я работаю как пользователь в группе администраторов. Я вижу это поведение как в Windows 7 32 и 64-разрядных.
Есть идеи, что здесь происходит?