Ir ao conteúdo
  • Cadastre-se

Criar serviço


Felipe R

Posts recomendados

Postado Originalmente por milktank@30 dez 2004, 13:13

serviço que você se refere é um programa q você quer q inicie com o windows? se for isso você vai na na chave Run e adiciona com valor do endereço do programa uma valor da sequencia com o nome do programa. :bye:

Agradeço a dica mas eu quero que o programa fique como serviço justamente para não colocar uma chave na "run".

Link para o comentário
Compartilhar em outros sites

Cara, você sabe o que é um serviço? Se não sabe, vou explicar:

1 - Um serviço, é um programa que é carregado antes mesmo do usuário se logar... ( Na chave run, o programa só é executado quando um usuário se loga ).

2 - Um serviço, fica rodando na máquina mesmo quando o usuário der um LogOff...

3 - Um serviço não é um executável comum, para um programa poder rodar como um serviço, o mesmo deve ter o código próprio para isso...

4 - Não adianta tentar rodar um programa como serviço se o mesmo não foi feito para ser serviço...

5 - Se um programa for feito para ser serviço e nele ter um código que dispara um thread, no qual esse thread cria um processo de um programa qualquer, logo esse programa qualquer herdará as características de um serviço... logo se o serviço tiver o privilégio de "System Account", o programa chamado pelo serviço, terá o privilégio de "System Account" também...

Na prática:

Nenhum usuário(sem privilégios) poderá matar o .exe que foi chamado pelo serviço... Se esse .exe for a calculadora do Windows por exemplo, a calculadora sempre estará em execução... sakou o poder?

Lembrando que um serviço tem várias chaves e valores setados no registro... mas como eu disse antes, para um programa ser executado como serviço, o mesmo deve ser escrito para tal finalidade... e você nem precisa se preocupar em ficar mexendo no registro, pois o próprio SCM(Service Control Manager) já faz isso para você...

Dica:

Se você tiver privilégios de "Domain Account", você pode inclusive inicializar, parar, pausar e continuar serviços remotamente...

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois...

O que você quer fazer é possível com o uso de duas ferramentas da própria Microsoft: Applications as Services Utility (srvany.exe) e Service Installer (instsrv.exe). Essa ferramentas fazem parte do Windows Server 2003 Resource Kit Tools.

Esses dois utilitários são bem pequenos, menos de 40 KB em conjunto. Por outro lado, o Resource Kit Tools tem cerca de 12 MB. Então, se você quiser, possa enviar os dois programas para você por email.

Como exemplo de uso dos programas, mostrarei um passo-a-passo de como se executar a Calculadora do Windows como serviço. Para executar outro programa, siga o modelo e faça as devidas alterações. Se souber inglês, leia a ajuda do Resource Kit Tools referente a esses dois utilitários para ver mais opções.

1. Baixe e instale o Resource Kit Tools.

2. Abra a pasta onde o Resource Kit Tools foi instalado e copie os arquivos srvany.exe e instsrv.exe para uma pasta qualquer. Neste exemplo, os arquivo serão copiados para C:\Windows. Se quiser, pode desinstalar o Resource Kit Tools.

3. Abra uma janela do Prompt de comando e digite o comando abaixo:

C:\Windows\instsrv.exe Calculadora C:\Windows\srvany.exe

Calculadora é o nome que dei ao serviço. Pode usar o nome que quiser, com exceção (suponho) dos nomes dos serviços já existentes.

4. No Editor do registro (regedit.exe), abra a chave seguinte:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Calculadora

5. Crie uma nova chave de nome Parameters:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Calculadora\Parameters

6. Crie na chave acima um novo Valor de seqüência de nome Application. Dê um duplo clique em Application e digite o seguinte no campo em branco:

C:\Windows\System32\Calc.exe

Pode fechar o Editor do registro.

7. Clique em Iniciar, selecione Painel de controle => Ferramentas administrativas e clique em Serviços ou, alternativamente, clique em Iniciar => Executar e digite services.msc.

8. Na janela dos Serviços, dê um duplo clique em Calculadora. Em Propriedades Calculadora, clique em Logon, marque a opção Permitir que o serviço interaja com a área de trabalho e clique em OK.

9. Reinicie o computador.

Se quiser remover o serviço criado, primeiro abra no Painel de controle a janela dos Serviços, localize o serviço criado e pare-o. Depois, digite o seguinte na linha de comando:

C:\Windows\instsrv.exe Calculadora remove

Não sei que programa você pretende rodar como serviço. Por isso, não sei se esse procedimento funcionará para você. O que AzaZell disse deve ser levado em consideração.

Apesar de na ajuda do Resource Kit Tools constar que o Applications as Services Utility funciona apenas no Windows Server 2003, ele funcionou também no Windows XP Home Edition, que é o sistema que eu uso.

Boa sorte!

Link para o comentário
Compartilhar em outros sites

  • 2 meses depois...
  • 4 anos depois...
O que você quer fazer é possível com o uso de duas ferramentas da própria Microsoft: Applications as Services Utility (srvany.exe) e Service Installer (instsrv.exe). Essa ferramentas fazem parte do Windows Server 2003 Resource Kit Tools.

Esses dois utilitários são bem pequenos, menos de 40 KB em conjunto. Por outro lado, o Resource Kit Tools tem cerca de 12 MB. Então, se você quiser, possa enviar os dois programas para você por email.

Como exemplo de uso dos programas, mostrarei um passo-a-passo de como se executar a Calculadora do Windows como serviço. Para executar outro programa, siga o modelo e faça as devidas alterações. Se souber inglês, leia a ajuda do Resource Kit Tools referente a esses dois utilitários para ver mais opções.

1. Baixe e instale o Resource Kit Tools.

2. Abra a pasta onde o Resource Kit Tools foi instalado e copie os arquivos srvany.exe e instsrv.exe para uma pasta qualquer. Neste exemplo, os arquivo serão copiados para C:\Windows. Se quiser, pode desinstalar o Resource Kit Tools.

3. Abra uma janela do Prompt de comando e digite o comando abaixo:

C:\Windows\instsrv.exe Calculadora C:\Windows\srvany.exe

Calculadora é o nome que dei ao serviço. Pode usar o nome que quiser, com exceção (suponho) dos nomes dos serviços já existentes.

4. No Editor do registro (regedit.exe), abra a chave seguinte:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Calculadora

5. Crie uma nova chave de nome Parameters:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Calculadora\Parameters

6. Crie na chave acima um novo Valor de seqüência de nome Application. Dê um duplo clique em Application e digite o seguinte no campo em branco:

C:\Windows\System32\Calc.exe

Pode fechar o Editor do registro.

7. Clique em Iniciar, selecione Painel de controle => Ferramentas administrativas e clique em Serviços ou, alternativamente, clique em Iniciar => Executar e digite services.msc.

8. Na janela dos Serviços, dê um duplo clique em Calculadora. Em Propriedades Calculadora, clique em Logon, marque a opção Permitir que o serviço interaja com a área de trabalho e clique em OK.

9. Reinicie o computador.

Se quiser remover o serviço criado, primeiro abra no Painel de controle a janela dos Serviços, localize o serviço criado e pare-o. Depois, digite o seguinte na linha de comando:

C:\Windows\instsrv.exe Calculadora remove

Não sei que programa você pretende rodar como serviço. Por isso, não sei se esse procedimento funcionará para você. O que AzaZell disse deve ser levado em consideração.

Apesar de na ajuda do Resource Kit Tools constar que o Applications as Services Utility funciona apenas no Windows Server 2003, ele funcionou também no Windows XP Home Edition, que é o sistema que eu uso.

Boa sorte!

Amigo, no xp professional sp3 não é nescessário utilizar o srvany, e o comando a ser utilizado e seguindo tua dica, largando o instsrv.exe dentro da pasta windows, apenas digitar, "cmd" para abrir o prompt, e dpz

instsrv "nome do serviço" "caminho do .exe(arquivo executavel)", pelo menos baixando os arquivos do site da microsoft e dando o "instsrv /?" pois tentei ativar o serviço do ATK hotkey do meu asus, para poder trancar o touch e usar só o mouse usb antis d logar.... valeu ae galera... c n fosse pelo tuto n teria conseguido... e no prof é só fz uns ajustes... mas da de boa mesmo, ah e obs, tmb não é nescessario criar as chaves com o caminho dentro da pasta no registro, HLM\SYSTEM\CurrentControlSet\Services pois ele já pega durante o comando o caminho... gracias...

Link para o comentário
Compartilhar em outros sites

  • 2 meses depois...
Amigo, no xp professional sp3 não é nescessário utilizar o srvany, e o comando a ser utilizado e seguindo tua dica, largando o instsrv.exe dentro da pasta windows, apenas digitar, "cmd" para abrir o prompt, e dpz

instsrv "nome do serviço" "caminho do .exe(arquivo executavel)", pelo menos baixando os arquivos do site da microsoft e dando o "instsrv /?" pois tentei ativar o serviço do ATK hotkey do meu asus, para poder trancar o touch e usar o mouse usb antis d logar.... valeu ae galera... c n fosse pelo tuto n teria conseguido... e no prof é fz uns ajustes... mas da de boa mesmo, ah e obs, tmb não é nescessario criar as chaves com o caminho dentro da pasta no registro, HLM\SYSTEM\CurrentControlSet\Services pois ele já pega durante o comando o caminho... gracias...

Eu não sou usuária avançada, sou intermediária, tentei fazer o procedimento de adicionar os dois arquivos, conforme a dica de "Macsei", só que no lugar da palavra "Calculadora", coloquei SKYPE.

Em Application eu coloquei a seguinte linha: C:\Windows\System32\skype.exe.

Reiniciei a máquina criei um segundo ícone e não deu certo.

Li suas citação, que menciona, que no windows XP com pack 3 não era preciso usar os dois arquivos e tentei endenter como fez, mas como não explicou no passo-a-passo não me aventurei a mudar nada.

Se você conseguiu abrir dois skypes, então peço a gentileza de postar um passo-a-passo de como fazê-lo, já li tantos tutoriais e nenhum ainda me levou a uma solução efetiva. Tenho muita necessidade de poder abrir duas janelas do skype, com duas contas diferentes, mas as duas rodando ao mesmo tempo, com informação de quem entra, sai ou chama por fone.

Por favor ajude-nos a solucionar este problema.

Link para o comentário
Compartilhar em outros sites

Amigo, no xp professional sp3 não é nescessário utilizar o srvany, e o comando a ser utilizado e seguindo tua dica, largando o instsrv.exe dentro da pasta windows, apenas digitar, "cmd" para abrir o prompt, e dpz

instsrv "nome do serviço" "caminho do .exe(arquivo executavel)"

Apenas uns poucos executáveis, feitos realmente pra ser usados como serviço, funcionam desse jeito, tentei aqui fazer isso para o CMD.EXE e não vai, "O serviço não está respondendo à função de controle".

Eu não sou usuária avançada, sou intermediária, tentei fazer o procedimento de adicionar os dois arquivos, conforme a dica de "Macsei", só que no lugar da palavra "Calculadora", coloquei SKYPE.

Em Application eu coloquei a seguinte linha: C:\Windows\System32\skype.exe.

Isso é pra ser o nome da pasta em que o arquivo executável se encontra mais o nome do arquivo. O arquivo do skype não fica na pasta System32. Procure-o em Arquivos de Programas. Ou veja as propriedades do atalho para o skype e copie o caminho que tiver lá.

Se você conseguiu abrir dois skypes, então peço a gentileza de postar um passo-a-passo de como fazê-lo, já li tantos tutoriais e nenhum ainda me levou a uma solução efetiva. Tenho muita necessidade de poder abrir duas janelas do skype, com duas contas diferentes, mas as duas rodando ao mesmo tempo, com informação de quem entra, sai ou chama por fone.

Por favor ajude-nos a solucionar este problema.

Se tiver duas contas de usuário no Windows basta clicar com o direito no atalho do skype e Executar como, e escolhe outro usuário. Aí abre uma janela separada.

Se a conta de usuário do windows não tiver senha não funciona.

Tambem achei isto: http://forum.skype.com/index.php?showtopic=32381

Link para o comentário
Compartilhar em outros sites

  • 1 ano depois...

Olá Pessoal,

Um bom exemplode como cadastrar um serviço no Windows XP em diante é a seguinte:

  1. Conectado como administrador;
  2. Abra a janela de execução de comandos (CMD.EXE) clicando com o botão direito do mouse sobre o ícone, e escolhendo executar como adiministrador;
  3. Execute na linha de comandos por exemplo:
    c:\> sc create Postgres8_1_13 type= own start= auto binpath= c:\bin\pgsql\bin\postgres.exe -D D:\Postgres\Data displayname= "Postgres 8.1.13 para Testes" obj= NOSREDNA\postgres password= post123

Onde:

  1. Postgres8_1_13 = nome sem espaços ou carcteres especiais, usado como um apelido para o seviço;
  2. NOSREDNA\postgres = Usuário criado no sistema operacional para ser o dono dos processo do SGBD
  3. post123 = Senha do usuário no sistema operacional. Não é a do SGBD que pode ser diferente.
  4. c:\bin\pgsql\bin\postgres.exe... = comando mais parametros de incialização do serviço
  5. Os parâmetros, como no exemplo o type=, devem ser separados por um espaço em branco dos seus respectivos valores;
  6. Quando os valores dos parametros contiverem espaços em branco, como no caso do parâmetro displayname= "Postgres 8.1.13 para Testes", colocar todos os valores do parâmetro entre aspas;

Isso é só

Mais informações de como usar o utilitário SC, de linha de comando, que manipula serviços no Windows acesse:

Abraços

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...