Definir o valor no Registro não atualiza as informações na memória do Gerenciador de Controle de Serviço. O método suportado é usar a API do SCM ou um programa de linha de comando para você:
sc config bthserv start= demand
Observe que o nome do serviço, bthserv
, é o ID do serviço, em oposição ao nome de exibição. Você pode ver o ID de um determinado serviço em sua janela de propriedades no snap-in Serviços do MMC ( services.msc
).
Você poderá então iniciar o serviço normalmente.
Bizarramente, embora a execução manual do Registro faça os Serviços mostrarem o novo estado alterado, o serviço ainda é efetivamente desativado. Eu testei isso e descobri que ele só será realmente ativado usando o método suportado ou possivelmente após uma reinicialização. Como o seu script já está usando um utilitário do Windows ( net
), o uso de sc
também não reduzirá a portabilidade.