Inspired by some Services errors on my Windows Server 2016 machine, I noticed a service called OneSyncSvc_x.
The service has the following description:
This service synchronizes mail, contacts, calendar and various other user data. Mail and other applications dependent on this functionality will not work properly when this service is not running.
Well, no, I don’t care about these applications to sync, so let’s disable this OneSyncSvc. When I tried set the Service Startup Type to Disabled, I got the following error:
Services – The parameter is incorrect
When I tried to use ‘sc config OneSyncSvc_2deeb start=disabled’, it returned:
[SC] ChangeServiceConfig2 (delayed autostart flag) FAILED 87:
The parameter is incorrect.
Grrr, annoying, and since I’m pretty stubborn in these situations, I used my last escape: Registry Editor:
Go to the following key:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesOneSyncSvc
Then find the name “Start” and change the value to 4. (where 4 stands for Disabled)
Since I got 3 OneSyncSvc’s, I changed it for all three keys.
I don’t think this will cause any problems, but as always: all actions are on your own responsibility
I’m trying to disable a service in Windows 10 from the Control Panel > Administrative Tools > Services snap in.
- Service Name: OneSyncSvc_1e21e
- Display Name: Sync Host_1e21e
- Description: This service synchronizes mail, contacts, calendar and various other user data. Mail and other applications dependent on this functionality will not work properly when this service is not running.
- Path to executable: C:WINDOWSsystem32svchost.exe -k UnistackSvcGroup
- Startup type: Automatic (Delayed Start)
When I try to change the Startup type to Manual or Disabled and press OK, I get this message:
The parameter is incorrect.
When I try to change the Startup type to Automatic and press OK, I get this message:
The delayed auto-start flag could not be reset.
Error 87: The parameter is incorrect.
When I try to change the ‘Log on as’ user to a user without any privileges, I get this message:
The parameter is incorrect.
I’ve done some searches online and within the stack exchange network, but the error message is a pretty common one and the articles I’ve found seem to apply to trying to install services and/or dependencies through code. I’m just using the basic windows GUI.
Is there any way I can correct this error, disable this service, or delete it entirely?
asked Apr 3, 2018 at 16:03
JonathanJonathan
2731 gold badge2 silver badges7 bronze badges
I stumbled upon the same issue when trying to disable MessagingService_48ab2.
The solution for it was to look for the service in the registry.
Press start button on your keyboard, type regedit, right-click it and open as administrator.
Then navigate to:
ComputerHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesOneSyncSvc_48ab2
Double-click the «Start» 32-bit DWORD and change it’s value to 4 (disabled).
answered Apr 26, 2018 at 5:17
askepottaskepott
3162 silver badges3 bronze badges
Answer by askepott is the only right one.
The other answers don’t take into account the crucial «The parameter is incorrect» part of the original question: PowerShell is just a dumb shell that relays the command to the same service component that fails the OP in the first place:
> Get-Service -Name "ServiceName"" | Set-Service -StartupType Disabled -Confirm:$false
Set-Service : Service 'ServiceName (ServiceName)' cannot be configured due to the following error: The parameter
is incorrect
At line:1 char:35
+ ... ame ServiceName | Set-Service -StartupType Disabled -Confirm:$false
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : PermissionDenied: (System.ServiceProcess.ServiceController:ServiceController) [Set-Servi
ce], ServiceCommandException
+ FullyQualifiedErrorId : CouldNotSetService,Microsoft.PowerShell.Commands.SetServiceCommand
Editing the registry seems to be the only solution for botched services like this. I don’t know the cause of this issue, but in my case the service seemed to be configured to run with ‘Log on as’, with the user password provided but an empty username. Changing it to Local System wouldn’t work either due to the «The parameter is incorrect» persisting with any modification.
answered Mar 1, 2019 at 8:28
You can also use powershell to disable the service (or any other PITA service)
Start powershell as Administration (Run as Administration)
and then
Get-Service -Name OneSyncSvc | Set-Service -StartupType Disabled -Confirm:$false
answered Nov 12, 2018 at 16:53
3
This type of service is apparently what’s called a «per-user service», which is generated from a «template» service visible in this registry under HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices per https://docs.microsoft.com/en-us/windows/application-management/per-user-services-in-windows.
To change both the per-user and template services simultaneously, the easiest method appears to be the PowerShell command Set-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesOneSyncSvc*" -Name "Start" -Value 4
(tested in PowerShell 5.1/7.1) where 4
corresponds to the «Disabled» value in the Services app (services.msc). (2
corresponds to the «Automatic (Delayed Start)» value.)
The template service can also be changed with the PowerShell command Get-Service -Name OneSyncSvc | Set-Service -StartupType "Disabled"
and undone in PowerShell 7+ with the command Get-Service -Name OneSyncSvc | Set-Service -StartupType "AutomaticDelayedStart"
.
You may want to take note of the default values first so that any changes made can be undone afterward by using a command like Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesOneSyncSvc*" | Select-Object "Start"
.
This can also be done with the PowerShell commands Get-Service -Name OneSyncSvc | Select-Object "Name", "StartupType"; Get-Service -Name OneSyncSvc* | Select-Object "Name", "StartupType"
.
answered Dec 15, 2020 at 8:05
Помимо удаления из автозагрузки лишних приложений, одним из способов ускорить загрузку Windows является изменение приоритета системных служб. В Виндовс имеется четыре режима запуска служб: «Автоматически», «Вручную», «Отключена» и «Автоматически (отложенный запуск)». С первым всё понятно — служба запускается вместе с Windows, обладая наивысшим приоритетом; службы с режимом «Вручную» запускаются непосредственно пользователем либо через Планировщик заданий.
Если служба имеет статус «Отключена», она не работает и не запускается.
Режим «Автоматически (отложенный запуск)» работает так же, как и режим «Автоматически», но при этом службы, для которых он выставлен, имеют более низкий приоритет, стартуют они уже после того, как в память будут загружены другие службы и компоненты. Если вы не удовлетворены скоростью загрузки компьютера, можете поэкспериментировать со службами, переведя их в режим отложенного запуска. Это не критично, но осторожность в таких делах всё же не помешает. Иногда необходимо, чтобы служба запустилась раньше компонента, иногда — чтобы компонент запустился раньше службы.
Поэтому нужно записывать, какие службы вы перевели в режим отложенного запуска и создавать точки восстановления на тот случай, если что-то пойдет не так. Но скорее всего, система не позволит вам изменить автоматический режим служб, для которых он задан в Windows по умолчанию. Попробуйте для примера изменить режим службы «Windows Audio» на «Отложенный запуск» и вы получите ошибку с кодом 87 и комментарием «Параметр задан неверно». Другие службы, например, «push-уведомлений Windows» без проблем могут быть переведены в режим отложенного запуска из оснастки управления службами.
Если служба «упирается», можно попробовать обойти это ограничение, отредактировать соответствующий службе ключ в реестре.
Для этого в редакторе реестра разверните ветку HKLMSYSTEMCurrentControlSetServices и найдите подраздел с именем службы, указанной в ее свойствах. Открыв подраздел, справа создайте новый DWORD параметр,
дайте ему имя DelayedAutoStart и установите в качестве его значения 1.
По идее, это должно отложить запуск службы на 30 секунд.
Не все, однако, службы можно перевести в режим отложенного запуска. Твик никак не повлияет на поведение той же Windows Audio, поскольку Windows считает эту службу достаточно важной, а иначе как-бы загрузка сопровождалась знакомой мелодией? Тем более это касается системных служб, изменение режимов которых недоступно, их трогать вообще не следует.
Что касается системных служб, для которых доступны другие режимы кроме отложенного запуска, их запуск можно отсрочить, действуя в обход.
Сейчас мы всё покажем на примере уже не раз упомянутой Windows Audio.
Переведем ее в режим запуска «Вручную», а запускать ее будем с помощью добавленного через Планировщик заданий VBS-скрипта, скачать который можно по ссылке yadi.sk/d/Wf3aD_TjFuuFVQ.
Вот так выглядит его содержимое в текстовом редакторе.
- 10*1000 — это значение в миллисекундах, задержка запуска исполнения команды скрипта, прописанной в третьей строке. В данном примере задержка выставлена на 10 секунд, хотите увеличить ее до 30 секунд, укажите вместо 1000 3000.
- «sc start Audiosrv» — эта команда запускает работу службы.
Теперь к делу.
1. Откройте командой taskschd.msc Планировщик заданий и нажмите слева «Создать задачу».
Даем заданию имя, параметры выставляем так, как показано на скриншоте (запуск с наивысшими правами обязателен);
2. На вкладке «Триггеры» жмем «Создать…»,
в выпадающем списке выбираем опцию «При запуске» или «При входе в систему» и нажимаем «ОК»;
3. Переключаемся на вкладку «Действия»,
нажимаем «Создать» и указываем в диалоговом окне путь ко скрипту VBS;
4. На вкладке «Условия» снимаем галку с чекбокса «Запускать только при питании от электросети» (актуально для ноутбуков);
5. Сохраняем настройки, если Планировщик заданий запросит пароль администратора (если выберите во втором пункте при «При запуске»), вводим и подтверждаем действие.
Перезагружаем компьютер и видим, что служба аудио запустилась не сразу (значок звука будет отмечен красным крестиком), а через указанный интервал.
Аналогичным образом вы можете отсрочить запуск других некритичных служб, создав для них отдельные задания или добавив в скрипт дополнительные строки — команду с задержкой и команду запуска службы.
Загрузка…
Редактор реестра Windows версии 5.00 [HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services wuauserv] "PreshutdownTimeout" = dword: 036ee800 "DisplayName" = "@% systemroot% system32 wuaueng.dll, -105 "" ErrorControl "= dword: 00000001" ImagePath "= hex (2): 25,00,73,00,79,00,73,00,74,00,65,00,6d, 00,72,00 , 6f, 00,6f, 00, 74,00,25,00,5c, 00,73,00,79,00,73,00,74,00,65,00,6d, 00,33,00, 32,00,5c, 00,73, 00,76,00,63,00,68,00,6f, 00,73,00,74,00,2e, 00,65,00,78,00,65 , 00,20,00,2d, 00, 6b, 00,20,00,6e, 00,65,00,74,00,73,00,76,00,63,00,73,00,00, 00 "Start" = dword: 00000003 "Type" = dword: 00000020 "Description" = "@% systemroot% system32 wuaueng. dll, -106 "" DependOnService "= hex (7): 72,00,70,00,63,00,73,00,73,00,00,00,00,00« ObjectName »=« LocalSystem »« ServiceSidType "= dword: 00000001" RequiredPrivileges "= hex (7): 53,00,65,00,41,00,75,00,64,00,69,00,74,00,50,00,72, 00 , 69,00,76,00,69,00,6c, 00,65,00,67,00,65,00,00,00,53,00,65,00,43,00,72,00, 65,00,61,00,74,00,65,00,47,00,6c, 00,6f, 00,62,00,61,00,6c, 00,50,00,72,00,69, 00,76,00,69,00,6c, 00,65,00,67,00,65,00,00,00,53,00,65,00,43,00,72,00,65,00 , 61,00,74,00,65,00,50,00,61,00,67,00,65,00,46,00,69,00,6c, 00,65,00,50,00, 72, 00,69,00,76,00,69,00,6c, 00,65,00,67,00,65,00,00,00,53,00,65,00,54,00,63 , 00, 62,00,50,00,72,00,69,00,76,00,69,00,6c, 00,65,00,67,00,65,00,00,00,53, 00,65, 00,41,00,73,00,73,00,69,00,67,00,6e, 00,50,00,72,00,69,00,6d, 00,61,00 , 72,00, 79,00,54,00,6f, 00,6b, 00,65,00,6e, 00,50,00,72,00,69,00,76,00,69,00, 6c, 00,65, 00,67,00,65,00,00,00,53,00,65,00,49,00,6d, 00,70,00,65,00,72,00,73 , 00,6f, 00, 6e, 00,61,00,74,00,65,00,50,00,72,00,69,00,76,00,69,00,6c, 00,65, 00,67,00,65, 00,00,00,53,00,65,00,49,00,6 e, 00,63,00,72,00,65,00,61,00,73,00,65,00,51,00, 75,00,6f, 00,74,00,61,00,50 , 00,72,00,69,00,76,00,69,00,6c, 00,65,00,67,00,65, 00,00,00,53,00,65,00,53, 00,68,00,75,00,74,00,64,00,6f, 00,77,00,6e, 00,50,00, 72,00,69,00,76,00,69,00 , 6c, 00,65,00,67,00,65,00,00,00,00,00 «FailureActions» = шестнадцатеричный: 80,51,01,00,00,00,00,00,00,00, 00,00,03,00,00,00,14,00,00, 00,01,00,00,00,60, шт., 00,00,00,00,00,00,00,00,00 , 00,00,00,00,00,00,00,00,00 [HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services wuauserv Parameters] «ServiceDll» = шестнадцатеричный (2): 25,00,73,00,79, 00,73,00,74,00,65,00,6d, 00,72,00,6f, 00,6f, 00,74,00,25,00,5c, 00,73,00,79,00 , 73,00,74,00,65,00,6d, 00,33,00,32,00,5c, 00, 77,00,75,00,61,00,75,00,65,00, 6e, 00,67,00,2e, 00,64,00,6c, 00,6c, 00,00,00 "ServiceDllUnloadOnStop" = dword: 00000001 "ServiceMain" = "WUServiceMain" [HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services wuauserv Security] "Безопасность" = шестнадцатеричное: 01,00,14,80,78,00,00,00,84,00,00,00,14,00,00,00,30,00,00,00, 02, 00,1c, 00,01,00,00,00,02,80,14,00, ff, 00,0f, 00,01,01,00,00,00,00,00,01,0 0,00, 00,00,02,00,48,00,03,00,00,00,00,00,14,00,9д, 00,02,00,01,01,00,00,00 , 00,00, 05,0b, 00,00,00,00,00,18,00, ff, 01,0f, 00,01,02,00,00,00,00,00,05,20, 00,00,00, 20,02,00,00,00,00,14,00, ff, 01,0f, 00,01,01,00,00,00,00,00,05,12,00 , 00,00,01, 01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00, 00,00 [HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services wuauserv TriggerInfo] [HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services wuauserv TriggerInfo 0] "Тип" = dword: 00000005 "Action" = dwordid: 00000001 "Guid : e6, ca, 9f, 65, db, 5b, a9,4d, b1, ff, ca, 2a, 17,8d, 46, e0 [HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services wuauserv TriggerInfo 1] "Тип" = dword: 00000005 "Action" = dword: 00000001 "Guid" = hex: c8,46, fb, 54,89, f0,4c, 46, b1, fd, 59, d1, b6,2c, 3b, 50
Если вы получаете сообщение Не удалось установить флаг отложенного автозапуска, Ошибка 87, параметр неверен или Ошибка 5, Доступ запрещен при попытке установить автоматический (отложенный запуск) запуск службы Windows в Windows 10, тогда этот пост сможет помочь вам решить проблему.
По мере того, как компьютеры становятся умнее, растут и ожидания производительности. Пользователи хотят, чтобы их ПК работали как можно быстрее и эффективнее, и способ гарантировать это — ускорить время загрузки. Один из способов ускорить загрузку компьютера — уменьшить количество программ и служб, которые запускаются, когда вы включаете компьютер и входите в Windows.
Вы не хотите полностью блокировать запуск служб при запуске системы; иногда нужно только отложить их запуск. Здесь вы можете столкнуться с проблемами.
Пользователи жаловались на невозможность отложить запуск службы при загрузке. Когда они пытаются это сделать, появляется следующее сообщение об ошибке:
Не удалось установить флаг отложенного автозапуска, ошибка 87, параметр неверен
Не удалось установить флаг отложенного автозапуска, ошибка 5, доступ запрещен.
Большинство пользователей сталкивались с этими ошибками при работе со службой OneSyncSvc. В этой статье рассказывается, что означает ошибка, а также как ее устранить и отложить автоматический запуск этих служб.
Ошибка 87 WINDOWS
Когда вы пытаетесь установить автоматический запуск службы Windows (отложенный запуск), но не можете этого сделать, не волнуйтесь, потому что другие сталкивались с аналогичными проблемами и вышли из ситуации. Вот рекомендуемые способы установки флага отложенного автозапуска и устранения ошибки на вашем компьютере.
- Установите отложенный автозапуск из редактора реестра Windows.
- Используйте PowerShell.
- Удалите Службу из ее группы обслуживания.
Прежде чем начать, не забудьте сначала создать точку восстановления системы.
1] Установите тип отложенного запуска из редактора реестра Windows.
Нажмите комбинацию Windows + R, чтобы вызвать диалоговое окно «Выполнить». В диалоговом окне «Выполнить» введите Regedit и нажмите клавишу ENTER.
Перейдите в следующее место в реестре Windows:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices
Здесь найдите конкретную службу, автозапуск которой вы пытаетесь отложить. Откройте эту службу и найдите название Start. Дважды щелкните Пуск.
Измените значение на 4 и сохраните его. Поскольку некоторые процессы могут быть связаны с несколькими ключами реестра Windows, вам может потребоваться повторить шаги для отдельных ключей.
2] Используйте PowerShell
Нажмите клавишу Windows и найдите PowerShell. Щелкните правой кнопкой мыши Windows Power Shell в результатах, чтобы открыть ее с правами администратора.
В окне PowerShell введите следующую команду и нажмите ENTER, чтобы запустить ее:
Get-Service -Name ServiceName | Set-Service -StartupType AutomaticDelayedStart
ПРИМЕЧАНИЕ. В приведенной выше команде замените часть ServiceName на имя службы, над которой вы хотите работать.
3] Удалите службу из группы служб.
Многие службы входят в группы обслуживания. Многие из этих групп имеют записи в ServiceGroupList в реестре, которые управляют порядком запуска служб. Многие службы необходимо запускать в определенном порядке. Службы, входящие в такую группу, не могут быть настроены на отложенный запуск.
Если вы видите ошибку «Доступ запрещен», то не следует пытаться изменить тип запуска, поскольку такие службы принадлежат какой-либо группе служб, для которой требуется загрузка служб в определенном порядке. Эти службы зависят от других служб и контролируются ServiceGroupList в реестре.
Но если вы все же хотите продолжить, в этом случае вы можете удалить значение группы из следующего места в реестре Windows:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesServiceName
ПРИМЕЧАНИЕ. Замените ServiceName именем рассматриваемой службы.