|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Перемещение папки "Мои документы" |
|
VBS/WSH/JS - Перемещение папки "Мои документы"
|
Старожил Сообщения: 474 |
Профиль | Отправить PM | Цитировать
Применяю скрипт:
Set Create=CreateObject("Scripting.FileSystemObject") Set WSHShell=WScript.CreateObject("WScript.Shell") if Not Create.FolderExists("D:\Мои документы") Then Create.CreateFolder "D:\Мои документы" end if On Error Resume Next strPersonal = WshShell.SpecialFolders("MyDocuments") Create.CopyFolder strPersonal, "D:\Мои документы" if strPersonal <> "D:\Мои документы" Then Create.DeleteFolder strPersonal, True end if WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Personal","D:\Мои документы","REG_EXPAND_SZ" WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\My Pictures","D:\Мои документы\Мои рисунки","REG_EXPAND_SZ" WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\My Music","D:\Мои документы\Моя музыка","REG_EXPAND_SZ" WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\My Video","D:\Мои документы\Мои видеозаписи","REG_EXPAND_SZ" 1. Почему исчезают иконки с папок "Мои рисунки", "Моя музыка", "Мои видеозаписи" (значок становится как у обычной папки)? 2. Ткнувшись по значку "Мои документы" на рабочем столе получаю ошибку (в свойствах старый адрес папки), и всё работает только после перезагрузки. На CMD таких проблем НЕ ВОЗНИКАЕТ! |
|
Отправлено: 12:39, 03-02-2011 |
Старожил Сообщения: 426
|
Профиль | Отправить PM | Цитировать Не знаком с vbs и аналогами, но
1. Вы правите реестр, его изменения надо подгрузить в оперативку. Попробуйте gpupdate, может даже с ключиком "/force" - но команда запросто может потребовать ту самую перезагрузку... 2. Кроме создания новых папок нужно отслеживать и как минимум за файликом "Desktop.ini", а если используется режим с веб-расширениями, то там еще появляется html-ка с расширением кажется ".ht" (уже точно не помню, баловался с этим еще под 98й). |
------- Отправлено: 13:25, 04-02-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 474
|
Профиль | Отправить PM | Цитировать С 1-ым вопросом разобрался, но возник другой. Оказывается иконки исчезают, так как при копировании снимаются атрибуты с папок. А это не есть хорошо. Можно конечно заново установить их скриптом, но как быть, исли в "Моих документах" есть ещё папки со значками кроме "Мои рисунки", "Моя музыка", "Мои видеозаписи" . Получается, будет нужен скрипт, сканирующий имена папкок, их аттрибуты и высставляющий эти аттрибуты у папок созданных. Кстати интересно, что у скопированных файлов в папках аттрибуты сохраняются, в том числе у "Desktop.ini".
Можно ли с этими злосчастными аттрибутами разобраться как-то попроще, чем писать ещё один скрипт? По поводу 2-го вопроса: Цитата NiOl:
|
|
Отправлено: 18:17, 04-02-2011 | #3 |
Пользователь Сообщения: 78
|
Профиль | Отправить PM | Цитировать Прочитай в справке о VBS про Attributes
|
Отправлено: 02:32, 06-02-2011 | #4 |
Старожил Сообщения: 474
|
Профиль | Отправить PM | Цитировать Вот набросал такой скрипт по поводу атрибутов:
Set Create=CreateObject("Scripting.FileSystemObject") Set WSHShell=WScript.CreateObject("WScript.Shell") ToFolder = "D:\Мои документы" strPersonal = WshShell.SpecialFolders("MyDocuments") Set f=Create.GetFolder(strPersonal) Create.CreateFolder(ToFolder) For Each a in f.Subfolders a.Copy(ToFolder & "\" & a.name) Create.GetFolder(ToFolder & "\" & a.name).Attributes=Create.GetFolder(a).Attributes Next For Each a in f.Files a.Copy(ToFolder & "\" & a.name) Next |
|
Отправлено: 17:23, 06-02-2011 | #5 |
Старожил Сообщения: 474
|
Профиль | Отправить PM | Цитировать Вроде разобрался. Готовый скрипт
Теперь остался вопрос №2. |
Отправлено: 01:23, 07-02-2011 | #6 |
Старожил Сообщения: 474
|
Профиль | Отправить PM | Цитировать По поводу 2-го вопроса - помогает перезапуск Explorer. Но очень раздражает, что при этом происходит сброс положения иконок рабочего стола. Интересно, существует ли способ его перезапуска без сброса положений значков?
|
Отправлено: 02:12, 07-02-2011 | #7 |
Новый участник Сообщения: 15
|
Профиль | Отправить PM | Цитировать 2BigBoo, по поводу второго вопроса о переносе Personal.
Править надо в двух местах: ...\User Shell Folders (REG_EXPAND_SZ) и ...\Shell Folders (REG_SZ)... Я это делаю на T12 (T13) и перезагрузка, соответственно, вовсе не нужна... А если делать после логона, то достаточно перелогиниться или "правый клик" на рабочем столе и "обновить". |
Последний раз редактировалось nsky, 10-02-2011 в 19:05. Отправлено: 18:55, 10-02-2011 | #8 |
Старожил Сообщения: 474
|
Профиль | Отправить PM | Цитировать Цитата nsky:
Цитата nsky:
Цитата nsky:
|
|||
Отправлено: 20:49, 10-02-2011 | #9 |
Новый участник Сообщения: 15
|
Профиль | Отправить PM | Цитировать Очевидно Explorer при запуске:
- обновляет ветку User Folders на основе Shell User Folders. Кстати, не всю. - инициализирует рабочий стол. Если выполнить за него часть работы, т.е. самому обновить обе ветки, то можно пробовать обновить среду. Увы, пробовал в свое время nircmd sysrefresh Не срабатыватет. Остается "автоматический перезапуск Explorer в случае ошибки" HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\AutoRestartShell и kill explorer Либо просто logoff |
Последний раз редактировалось nsky, 11-02-2011 в 11:17. Отправлено: 10:36, 11-02-2011 | #10 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Переименование "Мой компьютер", "Мои документы", "Мои рисунки" | AV4 | Автоматическая установка Windows 2000/XP/2003 | 3 | 11-01-2010 11:32 | |
Интерфейс - [решено] Перемещение папки "Общие документы" | konstantinych | Microsoft Windows 2000/XP | 2 | 08-08-2009 09:19 | |
Переадресация папки "Мои документы" и "Рабочий стол". Проблема! | DeniTornado | Microsoft Windows NT/2000/2003 | 2 | 26-02-2009 10:05 | |
Разное - Нет папки "мои документы" в папке "мой компьютер". | avenir00 | Microsoft Windows 2000/XP | 0 | 10-12-2008 13:58 | |
Разное - Перемещение папки "Мои документы" в Vista Home Premium | Kirill NN | Microsoft Windows Vista | 1 | 16-01-2008 10:34 |
|