Изменение "пути к исполняемому файлу" службы windows
Я хотел бы изменить путь к моему приложению, но это нарушает его, потому что Служба все еще указывает на старое местоположение.
собирается Administrative Tools > Services
вы можете открыть диалоговое окно "Свойства" и посмотреть Path to executable
, но изменить его невозможно.
есть ли способ, которым пользователь может изменить путь службы без переустановки приложения ?
7 ответов
есть еще этот подход видели на суперпользователя использует sc
командная строка вместо изменения реестре:
sc config <service name> binPath= <binary path>
Примечание: пробел после binPath=
важно. Вы также можете запросить текущую конфигурацию через:
sc qc <service name>
появится нечто похожее на:
[SC] QueryServiceConfig успех
ИМЯ_СЛУЖБЫ: Имя_службы
TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : C:\Services\ServiceName LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : <Display name> DEPENDENCIES : SERVICE_START_NAME : user-name@domain-name
Она включает в себя редактирование реестра, но информацию можно найти в HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services
. Найдите сервис, который вы хотите перенаправить, найдите ImagePath
подраздел и измените это значение.
вы также можете сделать это с помощью PowerShell:
Get-WmiObject win32_service -filter "Name='My Service'" `
| Invoke-WmiMethod -Name Change `
-ArgumentList @($null,$null,$null,$null,$null, `
"C:\Program Files (x86)\My Service\NewName.EXE")
или:
Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\My Service" `
-Name ImagePath -Value "C:\Program Files (x86)\My Service\NewName.EXE"
Open Run (win+R) , введите "Regedit.exe", чтобы открыть "редактор реестра", перейдите в
раздел HKEY_LOCAL_MACHINE\система\CurrentControlSet на\услуги
найти "apache2 не.4" открыть папку найдите "ImagePath "в правой части откройте" ImagePath" под "значение " положите следующий путь:
"C:\xampp\apache\bin\httpd.exe " - k runservice враг XAMPP для других укажите место, где установлен Apache, и внутри найдите папку bin " C: (установленное местоположение Apache)\bin\httpd.exe " - k runservice
вы не можете напрямую редактировать свой путь, чтобы выполнить услуги. Для этого вы можете использовать команду sc,
SC CONFIG ServiceName binPath= "Path of your file"
например:
sc config MongoDB binPath="I:\Programming\MongoDB\MongoDB\bin\mongod.exe --config I:\Programming\MongoDB\MongoDB\bin\mongod.cfg --service"
немного глубже с помощью команды " SC "мы можем извлечь все" имя служб "и получить все "QueryServiceConfig":)
>SC QUERY > "%computername%-services.txt" [enter]
>FIND "SERVICE_NAME: " "%computername%-services.txt" /i > "%computername%-services-name.txt" [enter]
>NOTEPAD2 "%computername%-services-name.txt" [enter]
сделать "маленький" NOTEPAD2 редактирования..
затем продолжите "CMD"..
>FOR /F "DELIMS= SKIP=2" %S IN ('TYPE "%computername%-services-name.txt"') DO @SC QC "%S" >> "%computername%-services-list-config.txt" [enter]
>NOTEPAD2 "%computername%-services-list-config.txt" [enter]
Необработанные данные готовы для подачи "будущего пакетного файла", поэтому результат выглядит следующим образом!!!
+ -------------+-------------------------+---------------------------+---------------+--------------------------------------------------+------------------+-----+----------------+--------------+--------------------+
| SERVICE_NAME | TYPE | START_TYPE | ERROR_CONTROL | BINARY_PATH_NAME | LOAD_ORDER_GROUP | TAG | DISPLAY_NAME | DEPENDENCIES | SERVICE_START_NAME |
+ -------------+-------------------------+---------------------------+---------------+--------------------------------------------------+------------------+-----+----------------+--------------+--------------------+
+ WSearch | 10 WIN32_OWN_PROCESS | 2 AUTO_START (DELAYED) | 1 NORMAL | C:\Windows\system32\SearchIndexer.exe /Embedding | none | 0 | Windows Search | RPCSS | LocalSystem |
+ wuauserv | 20 WIN32_SHARE_PROCESS | 2 AUTO_START (DELAYED) | 1 NORMAL | C:\Windows\system32\svchost.exe -k netsvcs | none | 0 | Windows Update | rpcss | LocalSystem |
но, HTML будет довольно проще : D
любые яркие идеи для улучшения приветствуются V^_^