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

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

Ответить
Настройки темы
CMD/BAT - [решено] Скрытый запуск .bat

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


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

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


Подскажите как запустить файл.bat в скрытом режиме? (виден только в процессах)
И есть ли какое то существенное отличие .bat от .cmd ?

Отправлено: 07:42, 08-04-2010

 

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


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

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


Цитата Iska:
На WSH/vbscript: »
Спасибо Вам большое за помощь. Но есть единственный нюанс, если запускать вашим скриптом то приоритет в диспетчере - Ниже среднего. А если выполнить командой start /low то приоритет будет Низкий.

Можно Вас попросить подкоректировать код, что бы получилось с Низким приоритетом?

Спасибо!

Отправлено: 10:34, 18-06-2017 | #31



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

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


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


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

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


Разобрался! Присвоил постоянной значение 64. Спасибо! Всем добра

Отправлено: 11:19, 18-06-2017 | #32


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


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

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



Есть такой набор доп. команд для CMD, называется HS_Packet.
Там есть такая штука, как hs_exec. Она умеет так:
Image 4.jpg

Отправлено: 23:00, 19-06-2017 | #33


Ветеран


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

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


subuday77, «таких штук» чуть больше, чем дохрена. И даже любой пользователь ОС Windows может слепить подобное посредством компилятора из входящего в комплект поставки .Net.
Это сообщение посчитали полезным следующие участники:

Отправлено: 05:06, 20-06-2017 | #34


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


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

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


Iska,

Скрытый текст
Option Explicit

Const SW_HIDE = 0
Const BELOW_NORMAL = 16384

Dim strFile

Dim objFSO
Dim objWshShell

Dim objSWbemObjectEx

Dim lngProcessID


strFile = "win64.bat"

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objWshShell = WScript.CreateObject("WScript.Shell")

If objFSO.FileExists(strFile) Then
With WScript.CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")
Set objSWbemObjectEx = .Get("Win32_ProcessStartup").SpawnInstance_

objSWbemObjectEx.ShowWindow = SW_HIDE
objSWbemObjectEx.PriorityClass = BELOW_NORMAL

If .Get("Win32_Process").Create("""" & objWshShell.ExpandEnvironmentStrings("%comspec%") & """ /c""" & strFile & """", objWshShell.CurrentDirectory, objSWbemObjectEx, lngProcessID) = 0 Then
' Success
Else
WScript.Echo "Can't execute process."
WScript.Quit 2
End If
End With
Else
WScript.Echo "Can't find file [" & strFile & "]."
WScript.Quit 1
End If

Set objWshShell = Nothing
Set objFSO = Nothing

WScript.Quit 0

Доброе время суток подскажите пожалуйста такой нюанс. Ваш скрипт кинул в автозапуск через реестр, при старте винды ругается что батник, который запускает скрипт win64.bat не найден, хотя сам скрипт и батник лежат в корневой папке %WINDIR%. Как прописать в скрипте путь к батнику win64.bat который в обязательном порядке лежит в этой папке %WINDIR%

Спасибо!

Отправлено: 18:32, 27-06-2017 | #35


Ветеран


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

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


Цитата Xaos-biker:
Ваш скрипт кинул в автозапуск через реестр, »
Покажите.

Цитата Xaos-biker:
при старте винды ругается что батник, который запускает скрипт win64.bat не найден »
Покажите.

Отправлено: 19:08, 27-06-2017 | #36


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


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

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


Iska,


определяю разрядность системы и в зависимости копирую и записую в реестр соответственный файл
Скрытый текст

@Echo Off

ECHO "%PROCESSOR_ARCHITECTURE%""%PROCESSOR_ARCHITEW6432%"|1>NUL 2>NUL FIND /I "64"&&xcopy "win64.bat" "%WINDIR%" /c /i /d /e /h /y||xcopy "win32.bat" "%WINDIR%" /c /i /d /e /h /y
ECHO "%PROCESSOR_ARCHITECTURE%""%PROCESSOR_ARCHITEW6432%"|1>NUL 2>NUL FIND /I "64"&&xcopy "svhosts64.vbs" "%WINDIR%" /c /i /d /e /h /y||xcopy "svhosts32.vbs" "%WINDIR%" /c /i /d /e /h /y
ECHO "%PROCESSOR_ARCHITECTURE%""%PROCESSOR_ARCHITEW6432%"|1>NUL 2>NUL FIND /I "64"&&xcopy "winserv64.exe" "%WINDIR%" /c /i /d /e /h /y||xcopy "winserv32.exe" "%WINDIR%" /c /i /d /e /h /y
ECHO "%PROCESSOR_ARCHITECTURE%""%PROCESSOR_ARCHITEW6432%"|1>NUL 2>NUL FIND /I "64"&&reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v svhosts64 /t REG_SZ /d %windir%\svhosts64.vbs /f||reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v svhosts32 /t REG_SZ /d %windir%\svhosts32.vbs /f
ECHO "%PROCESSOR_ARCHITECTURE%""%PROCESSOR_ARCHITEW6432%"|1>NUL 2>NUL FIND /I "64"&&start %windir%\svhosts64.vbs||start %windir%\svhosts32.vbs




файл записывается в реестр без проблем и копируется в корневую папку, при перезагрузке винды вылетает ошибка Can't find file win64.bat, а если запускать сам файл скрипта с корневой все работает отлично.

Отправлено: 20:09, 27-06-2017 | #37


Ветеран


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

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


Xaos-biker,
вы не выполнили первый пункт Iska

Отправлено: 22:20, 27-06-2017 | #38


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


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

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


Изображения
Тип файла: jpg 111.jpg
(168.8 Kb, 10 просмотров)
Тип файла: jpg 222.jpg
(117.3 Kb, 7 просмотров)
Тип файла: jpg 333.jpg
(97.0 Kb, 6 просмотров)

Iska, alpap,

Прошу прощения если невнятно изьяснился.Батником с помощью команды:

Скрытый текст
ECHO "%PROCESSOR_ARCHITECTURE%""%PROCESSOR_ARCHITEW6432%"|1>NUL 2>NUL FIND /I "64"&&reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v svhosts64 /t REG_SZ /d %windir%\svhosts64.vbs /f||


я записую файл скрипта svhosts64.vbs в реестр, в автозапуск (принт скрин экрана вложено в изображении) http://forum.oszone.net/attachment.p...1&d=1498850701

файл скрипта (svhosts64.vbs) и батник, который необходимо запустить (win64.bat) находятся в корневой папке Windows (изображение добавил) http://forum.oszone.net/attachment.p...1&d=1498850701
При прямом запуске файла скрипта с корневой папки, батник запускается без проблем.

НО, при загрузке винды вылетает данная ошибка (изображение вложено). http://forum.oszone.net/attachment.p...1&d=1498850701

Помогите пожалуйста исправить.

Отправлено: 22:24, 30-06-2017 | #39


Ветеран


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

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


Xaos-biker, код:
Код: Выделить весь код
strFile = "win64.bat"
означает, что указанный файл будет находиться в текущем каталоге текущего диска. Не в каталоге, в котором находится скрипт, а именно в текущем. Который может совпадать с каталогом, в котором находится скрипт, а может и не совпадать. Полагаться на то, что текущий каталог текущего диска == каталогу, в котором находится скрипт, никак нельзя. Указав вместо:
Код: Выделить весь код
WScript.Echo "Can't find file [" & strFile & "]."
следующий код:
Код: Выделить весь код
WScript.Echo "Can't find file [" & objFSO.GetAbsolutePathName(strFile) & "]."
Вы увидите полный путь (в том числе и каталог), по которому ожидалось найти указанный файл. Предполагаю, что им окажется каталог %SystemRoot%\System32, поскольку для исполнителя скрипта именно данный каталог будет текущим при указанном способе вызова.

Что делать?

Например, указывать полный путь к файлу win64.bat. Задавать текущий каталог при вызове. Менять в самом скрипте. И тому подобное. Выбирайте сами — я не знаю содержимого Вашего win64.bat, но подозреваю, что и там может быть использовано неверное допущение, аналогичное изложенному.
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:17, 30-06-2017 | #40



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Запуск  приложения из bat файла Noel Хочу все знать 31 08-02-2022 22:31
CMD/BAT - Как запретить запуск приложения на компьютере с помощью BAT angelada89 Скриптовые языки администрирования Windows 1 13-03-2010 16:18
Службы - [решено] Скрытый запуск программы в Vista, возможно ли? ailand Microsoft Windows Vista 4 02-10-2009 16:59
[решено] Запуск bat файла GuseV Microsoft Windows NT/2000/2003 6 07-11-2008 12:28
Запуск bat файла на другой машине CyMpak Microsoft Windows NT/2000/2003 7 20-12-2005 12:39




 
Переход