Консультация № 144769
23.09.2008, 15:36
0.00 руб.
0 1 1
Доброе утро или день!
Такой вопрос. Пишу BAT-файл, суть которого копирование все компьютерам определенную папку с одной программой и назначение пользователям прав на эту папку как на чтение так и на запись.
Все идет успешно. Вопрос в следующем - что надо там еще прописать чтобы после копирования этой папки, файл chat.exe, находящийся в ней, запускался от лица пользователя в его текущем сеансе?
После я ставлю ярлык програмы в автозагрузке и соответственно она запускается при следущем сеансе пользователя, но мне нужно чтобы она сразу же запускалась как только завершиться процесс копирования и передачи прав на эту папку.
В конце концов, как завершить процесс chat.exe и удалить эту папку (или отобрать права) я знаю, так как же запустить-то?
Права администратора у меня есть.
Помогите. Не нашел в справке ничего похожего не нашел или просто напросто не увидел.

Приложение:
REM
REM COMPUTERNAME
REM

mkdir "\\COMPUTERNAME\c$\program files\1"
mkdir "\\COMPUTERNAME\c$\program files\1\SKIN1"
mkdir "\\COMPUTERNAME\c$\program files\1\SKIN2"
mkdir "\\COMPUTERNAME\c$\program files\1\Smileys"

mkdir "\\COMPUTERNAME\c$\program files\1\Smileys\ICQ"
mkdir "\\COMPUTERNAME\c$\program files\1\Smileys\другое"
mkdir "\\COMPUTERNAME\c$\program files\1\Smileys\Игрушки"
mkdir "\\COMPUTERNAME\c$\program files\1\Smileys\Любовь"


copy "C:\Program Files\1\*.*" "\\COMPUTERNAME\c$\program files\1"
copy "C:\Program Files\1\SKIN1\*.*" "\\COMPUTERNAME\c$\program files\1\SKIN1"
copy "C:\Program Files\1\SKIN2\*.*" "\\COMPUTERNAME\c$\program files\1\SKIN2"
copy "C:\Program Files\1\Smileys\*.*" "\\COMPUTERNAME\c$\program files\1\Smileys"

copy "C:\Program Files\1\Smileys\ICQ\*.*" "\\COMPUTERNAME\c$\program files\1\Smileys\ICQ"
copy "C:\Program Files\1\Smileys\Другое\*.*" "\\COMPUTERNAME\c$\program files\1\Smileys\Другое"
copy "C:\Program Files\1\Smileys\Игрушки\*.*" "\\COMPUTERNAME\c$\program files\1\Smileys\Игрушки"
copy "C:\Program Files\1\Smileys\Любовь\*.*" "\\COMPUTERNAME\c$\program files\1\Smileys\Любовь"

copy "C:\Documents and Settings\Администратор\Start Menu\Programs\Chat\*.*" "\\COMPUTERNAME\c$\Documents and Settings\User \Главное меню\Программы"
copy "C:\Documents and Settings\Администратор\Start Menu\Programs\Startup\*.*" "\\COMPUTERNAME\c$\Documents and Settings\User\Главное меню\Программы\Автозагрузка"

cacls "\\COMPUTERNAME\c$\program files\1" /e /g User:c

Обсуждение

Неизвестный
26.09.2008, 11:33
общий
это ответ
Здравствуйте, Дядя Михайло!
Для этого вам понадобится программа PsExec из пакета sysinternals .
Если вы не против, то я немного усовершенствовал ваш файлик(см. в приложении). Если что то не понятно, то пишите в мини-форум.

Приложение:
в файле computer.lst указать построчно имена целевых компьютеров в формате \\имя_компьютера

for /F %%i in (computer.lst) do xcopy "C:\Program Files\1" "%%i\c$\Program Files" /E /C /Q /H
for /F %%i in (computer.lst) do xcopy "C:\Documents and Settings\Администратор\Start Menu\Programs\Chat\*.*" "%%i\c$\Documents and Settings\User\Главное меню\Программы" /E /C /Q /H
for /F %%i in (computer.lst) do xcopy "C:\Documents and Settings\Администратор\Start Menu\Programs\Startup\*.*" "%%i\c$\Documents and Settings\User\Главное меню\Программы\Автозагрузка"\ /E /C /Q /H
for /F %%i in (computer.lst) do cacls "%%i\c$\program files\1" /e /g User:c
psexec @computer.lst -u Administrator -p Password -i -d "C:\Program Files\1\chat.exe"
Форма ответа