Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Батник на переименование от имени администратора. (http://forum.oszone.net/showthread.php?t=221725)

Kondei 29-11-2011 02:26 1805401

Батник на переименование от имени администратора.
 
Всем привет.
Суть задачи: необходимо разослать по почте 100+ пользователям некое обновление программы. Почтовые фильтры не пускают *.exe файлы (политика компании мать её).
Решил исходный файл сделать с разрешение *.dat и написать батник на переименование в *.exe c дальнейшем автозапуском.
Получилось что-то вроде:

runas /netonly /user:Admin "ren sys.dat sys.exe

runas /netonly /user:Admin "@start C:\sys\sys.exe"

Проблема в том, что под другим пользователем (без админских прав), файл по данному батнику не переименовывается (на введении пароля пишет, что он не правильный).
А вот запускается свободно...

So Sensually 29-11-2011 10:59 1805537

Может зарарить экзешник?

Или если все компы в одной сети то через групповые политики накатить обновление? Ну или либо на почтовом серваке разрешить exe на сутки.

Kondei 30-11-2011 01:52 1806124

Архивы тоже не пустит. Разрешить - ну поптыка, не пытка, только успех мал.

Loran_rus 30-11-2011 07:57 1806186

если ОС Windows XP то можно попробовать ваше новое расширение EXE файла ассоциировать на выполнение через C:\WINDOWS\system32\win.com тогда проблема переименования отпадет

под windows 7 не знаю как называется подобный файл, но тоже должен быть

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

Kondei 30-11-2011 09:41 1806253

нет все права закрыты полностью, даже время не поменять.

Loran_rus 30-11-2011 13:29 1806396

Цитата:

Цитата Kondei
нет все права закрыты полностью, даже время не поменять.

Ну это уже паранойя запретить пользователю переименовывать файлы владельцем которых он является, а менять время обычным пользователям по умолчанию не положено :)

Тогда 1й вариант:
Внести в реестр от имени пользователя с правами на редактирования реестра необходимые параметры
Код:

Пример для файла с расширением *.1@3

Windows Registry Editor Version 5.00

 [HKEY_CLASSES_ROOT\.1@3]
 @="MySpecialExpansion"

 [HKEY_CLASSES_ROOT\MySpecialExpansion]

 [HKEY_CLASSES_ROOT\MySpecialExpansion\DefaultIcon]
 @="C:\\Windows\\System32\\SHELL32.dll,1"

 [HKEY_CLASSES_ROOT\MySpecialExpansion\shell]

 [HKEY_CLASSES_ROOT\MySpecialExpansion\shell\open]

 [HKEY_CLASSES_ROOT\MySpecialExpansion\shell\open\command]
 @="\"C:\\Windows\\System32\\win.com\" \"%1\""

можно через CMD/BAT скрипт используя Reg Add, а потом уже выполнить файл с зарегистрированным расширением от имени пользователя с правами на установку обновления.
Ну и почистить реестр если снова подобные задачи выполнять не требуеться

Kondei 01-12-2011 03:39 1806972

спасибо помогло.

Loran_rus 01-12-2011 06:59 1806999

Жуть а не политика безопасности
Попробуйте так, вернемся с чего начинали, но идеи уже на исходе
Код:

runas /netonly /user:techsupport "cmd /c ren c:\sys\sys.dat sys.exe"
Команда РанАс требует наличия файла который можно выполнить и передать ему параметры если необходимо, а Ren это команда приложения cmd.exe


Время: 15:24.

Время: 15:24.
© OSzone.net 2001-