Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - +VBS: копирование файлов с сервера в папку установки проги

Ответить
Настройки темы
CMD/BAT - +VBS: копирование файлов с сервера в папку установки проги

Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


Такая ситуация: в автокад были добавлены некоторые шаблоны (то есть файлы .dwg), которые содержали официальное короткое название нашей организации, сейчас пришло указание сменить официальное короткое название организации и во всех шаблонах в автокаде соответственно поменять это название. Все автокады (2004, 2007, 2008) ставятся с серверов, там есть их развертки. В развертках я все поменяла, теперь получается, что у всех пользователей, у кого автокады были поставлены раньше (это окоо 150 пользователей), старые шаблоны, то есть необходимо их подменить на новые с новым названием, можно конечно ручками ходить по кабинетам и копировать новые файлы с шаблонами, но это долго и нехорошо. Поэтому надо написать такой скрипт, который будет копировать эти файлы с сервера туда, где лежат такие же (только старые) у пользователя на компе. Проблема еще в том, что системные пути разные, то есть у кого-то это Programs, у кого-то Program Files, так же у кого-то Documents, у кого-то Documents and Settings. У меня опыт написания скриптов почти нулевой, но на сколько я знаю, cmd файлы не работают с unc путями, а как задавать системные папки в vbs я никак не могу найти, и как вообще получить путь, где стоит автокад и соответственно лежат шаблоны?

Отправлено: 07:56, 04-04-2008

 

Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


Только что где-то прочитала, что cmd работают с unc путями, подскажите, как это реализовать.

Отправлено: 08:20, 04-04-2008 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


Set fileFSO = CreateObject("Scripting.FileSystemObject")
source_file = "\\Apu18s\Shell\civil3D_2007_net\acad2000.lsp"
dest_file = "%ProgramFiles%\\Autodesk Civil 3D 2007\\Graph\\acad.lsp"
fileFSO.CopyFile source_file, dest_file , true



Примерно таким должен быть файл, но не работает dest_file, как исправить?

Отправлено: 09:00, 04-04-2008 | #3



Moderator


Сообщения: 53170
Благодарности: 15429

Профиль | Отправить PM | Цитировать


Цитата la_vanille_ciel:
Только что где-то прочитала, что cmd работают с unc путями, подскажите, как это реализовать.
Код: Выделить весь код
Copy /Y "\\Apu18s\Shell\civil3D_2007_net\acad2000.lsp" "%ProgramFiles%\Autodesk Civil 3D 2007\Graph\acad.lsp"
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:40, 04-04-2008 | #4


Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо за ответ, но не получилось....вобщем так: у меня автокад 2007 стоит в Program Files, а сист перем %Program Files% = Programs.... то есть надо узнать в этом скрипте, где стоит автокад.....сорри, я наверно, не очень правильно объяснила первый раз..

и даже если явно задать Program Files, то все равно не копируется (((((

Отправлено: 10:47, 04-04-2008 | #5



Moderator


Сообщения: 53170
Благодарности: 15429

Профиль | Отправить PM | Цитировать


la_vanille_ciel, тогда придется брать из реестра.
Выясните, в каком параметре и разделе прописан путь.

Например у 2006-го (русского) это AcadLocation в ветке HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R16.2\ACAD-4001:419

А у 2007-го?
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:56, 04-04-2008 | #6


Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


у 2007 это будет так же, только R 17.0 ...

я нашла скрипт чтения этого пути в реестре, но есть две проблемы с ним:
1) он не совсем рабочий:
Const HKEY_LOCAL_MACHINE = &H80000002
strComputer = "."
Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _
strComputer & "\root\default:StdRegProv")
strKeyPath = "Software\Autodesk"
objReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys
For Each subkey In arrSubKeys
If subkey = "AutoCAD" Then
find = True
Path_reg = strKeyPath & "\" & subkey
Exit For
End If
Next
If Not find Then
For Each subkey In arrSubKeys
If subkey = "Adobe Acrobat" Then
find = True
Path_reg = strKeyPath & "\" & subkey
Exit For
End If
Next
End If
If Not find Then
execute_programm_path = ""
Exit Function
Else
objReg.EnumKey HKEY_LOCAL_MACHINE, Path_reg, arrSubKeys
For Each subkey In arrSubKeys
Version_Acr = subkey
Next
End If
objReg.GetStringValue HKEY_LOCAL_MACHINE, Path_reg & "\" & Version_Acr & "\InstallPath\", "", dwValue
execute_programm_path = dwValue
(ругается на exit и еще что-то...)
2) как потом его положить в скрипт, в котором написано копирование:
Set fileFSO = CreateObject("Scripting.FileSystemObject")
source_file = "\\Apu18s\Shell\civil3D_2007_net\acad2004.lsp"
dest_file = "C:\Program Files\Autodesk Civil 3D 2007\Graph\acad.lsp"
fileFSO.CopyFile source_file, dest_file , true
(примерный скрипт копирования vbs, только dest_file не работает).

аа...наврала,
будет: HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R 17.0\ACAD-5000:419

Отправлено: 11:00, 04-04-2008 | #7



Moderator


Сообщения: 53170
Благодарности: 15429

Профиль | Отправить PM | Цитировать


Цитата la_vanille_ciel:
HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R 17.0\ACAD-5000:419
Какое значение AcadLocation?
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:11, 04-04-2008 | #8


Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R 17.0\ACAD-5000:419 - такое у 2007

Отправлено: 07:14, 07-04-2008 | #9


Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


AcadLocation = C\ProgramFiles\Autodesk Civil 3D 2007

Отправлено: 08:05, 07-04-2008 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - +VBS: копирование файлов с сервера в папку установки проги

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Как сделать через ГП автоматическое копирование библиотек в папку system32 ? zegerman Автоматическая установка приложений 7 01-12-2009 16:15
[решено] SVN, как добавить папку в svn-репозиторий без вложенных в папку файлов? pingUIN Хочу все знать 1 03-11-2009 17:16
Как организовать избирательное копирование в расшаренную папку? MikeGl Microsoft Windows NT/2000/2003 3 19-11-2008 00:31
Копирование исходящей почты в Общую папку Loki3D Microsoft Exchange Server 0 01-10-2007 18:11
Копирование файлов с сервера Alexeus Microsoft Windows NT/2000/2003 7 19-05-2004 15:31




 
Переход