|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Автоматическое определение sid текущего пользователя, и добавление записи в реестр |
|
CMD/BAT - Автоматическое определение sid текущего пользователя, и добавление записи в реестр
|
Старожил Сообщения: 169 |
Привет народ,
Есть bat файл для определение sid текущего пользователя, и добавление записи в реестр: @echo off SetLocal For /F "Tokens=*" %%A In ('Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /s^|Find /i "ProfileList\S-"') Do ( For /F "Tokens=2*" %%B In ('Reg Query "%%A" /s^|Find /i "ProfileImagePath"') Do If "%USERNAME%"=="%%~nC" REG ADD HKEY_USERS\%%~nA\software\tightvnc\server /v UseVncAuthentication /t REG_Dword /d "0x00000000" /f ) С какого перепуга данный скрипт запускает рядом лежащие bat файлы , reg файлы ? - У меня по крайней мере такое впечатление складывается. Помогите исправить проблему. Данный bat должен определить sid текущего пользователя и добавить данные в реестр - как раз этому пользователю, и не запускать рядом лежащие bat файлы или др. файлы. Кстати есть еще вопрос зачем иногда добавляют после значение ? |
|
Отправлено: 13:10, 09-09-2016 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать dark-------13, каковы названия этих «других бат файлов»? Покажите Вашу ситуацию на реальном примере — упакуйте содержимое каталога с данным пакетным файлом, совместно с «др. bat файлы или reg файлы» и приложите архив к сообщению.
Цитата dark-------13:
Цитата dark-------13:
|
||
Отправлено: 15:41, 09-09-2016 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Забанен Сообщения: 795
|
Цитата Iska:
|
|
Отправлено: 16:16, 09-09-2016 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата x0r:
|
|
Отправлено: 00:43, 10-09-2016 | #4 |
Старожил Сообщения: 169
|
Профиль | Отправить PM | Цитировать Названия файлов add.bat содержимое:
@echo off for /f %%i in ('wmic path win32_useraccount where localaccount^=true get sid ^| find "-"') do ( REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v UseVncAuthentication /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v ExtraPorts /t REG_SZ /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v QueryTimeout /t REG_Dword /d "0x0000001e" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v QueryAcceptOnTimeout /t REG_Dword /d "0x00000003" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v LocalInputPriorityTimeout /t REG_Dword /d "0x00000003" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v LocalInputPriority /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v BlockRemoteInput /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v BlockLocalInput /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v IpAccessControl /t REG_SZ /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v RfbPort /t REG_Dword /d "0x0000007c" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v HttpPort /t REG_Dword /d "0x000016a8" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v DisconnectAction /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v AcceptRfbConnections /t REG_Dword /d "0x00000001" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v UseControlAuthentication /t REG_Dword /d "0x000000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v RepeatControlAuthentication /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v LoopbackOnly /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v AcceptHttpConnections /t REG_Dword /d "0x000000001" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v LogLevel /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v EnableFileTransfers /t REG_Dword /d "0x00000001" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v RemoveWallpaper /t REG_Dword /d "0x00000001" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v UseMirrorDriver /t REG_Dword /d "0x00000001" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v EnableUrlParams /t REG_Dword /d "0x00000001" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v AlwaysShared /t REG_Dword /d "0x000000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v NeverShared /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v DisconnectClients /t REG_Dword /d "0x00000001" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v PollingInterval /t REG_Dword /d "0x000003e8" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v AllowLoopback /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v VideoRecognitionInterval /t REG_Dword /d "0x00000bb8" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v SaveLogToAllUsersPath /t REG_Dword /d "0x00000000" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v GrabTransparentWindows /t REG_Dword /d "0x00000001" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v RunControlInterface /t REG_Dword /d "0x00000001" /f REG ADD HKEY_Current_User\%%i\software\tightvnc\server /v VideoClasses /t REG_SZ /d "0x00000000" /f ) @echo off SetLocal For /F "Tokens=*" %%A In ('Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /s^|Find /i "ProfileList\S-"') Do ( For /F "Tokens=2*" %%B In ('Reg Query "%%A" /s^|Find /i "ProfileImagePath"') Do If "%USERNAME%"=="%%~nC" REG ADD HKEY_USERS\%%~nA\software\tightvnc\server /v UseVncAuthentication /t REG_Dword /d "0x00000000" /f ) Код не использую потому, как в разделе HKCU - для программ доступна только ветка указанная в bat файле. |
|
Последний раз редактировалось dark-------13, 12-09-2016 в 20:36. Отправлено: 11:16, 12-09-2016 | #5 |
Старожил Сообщения: 169
|
Профиль | Отправить PM | Цитировать Еще вопрос:
Как правильно добавить несколько значений в реестр с помощью скрипта ? Так пойдет ? : @echo off SetLocal For /F "Tokens=*" %%A In ('Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /s^|Find /i "ProfileList\S-"') Do ( For /F "Tokens=2*" %%B In ('Reg Query "%%A" /s^|Find /i "ProfileImagePath"') Do If "%USERNAME%"=="%%~nC" REG ADD HKEY_USERS\%%~nA\software\tightvnc\server /v UseVncAuthentication /t REG_Dword /d "0x00000000" /f 1>nul 2>&1 REG ADD HKEY_USERS\%%~nA\software\tightvnc\server /v RemoveWallpaper /t REG_Dword /d "0x00000000" /f 1>nul 2>&1 ) Если после выражения не дай бог перенести reg add сразу на др строку то скрипт не выполняется. Если после оператора Do перенести ( на др строку то скрипт тоже не выполняется. Есть ли какая-нибудь программа, которая автоматически проверяет корректность написания команд bat файлов , или может быть есть подробная справка по расположению операторов и знаков препинания ? |
Отправлено: 11:59, 12-09-2016 | #6 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Определение учетной записи пользователя | DarckSol | Скриптовые языки администрирования Windows | 6 | 27-07-2016 22:23 | |
[решено] Определение наличия прав в Windows 7 у текущего пользователя | TERMINAL | AutoIt | 7 | 15-05-2014 19:56 | |
Загрузка - Добавление в реестр до загрузки пользователя. | Shpil83 | Microsoft Windows 7 | 3 | 18-03-2014 12:06 | |
CMD/BAT - [решено] автоматическое определение Id пользователя реестр | O L E G | Скриптовые языки администрирования Windows | 26 | 14-12-2012 13:18 | |
[решено] автоматическое добавление записи А в DNS в windows 2003 | fate29 | Microsoft Windows NT/2000/2003 | 11 | 01-07-2009 07:08 |
|