Executando o software de desktop como um “serviço”

2

Temos um servidor Windows Server Standard 2008 que precisa executar o QuickBooks Sync Manager, que é um aplicativo que funciona corretamente somente a partir de uma conta de usuário (a conta que o configurou). O QuickBooks Sync Manager só será executado se o usuário estiver conectado no momento.

O problema é que só usamos esse servidor como um servidor de arquivos, e ninguém tem motivo para fazer login nele.

Existe alguma maneira de fazer com que esse aplicativo seja executado em um usuário específico sem que esse usuário tenha que fazer login?

Como alternativa, existe alguma maneira de agendar uma tarefa para fazer login automaticamente em um usuário específico?

    
por David Murdoch 22.04.2014 / 18:18

4 respostas

3

Vá buscar o Firedaemon (não postará o link, mas é uma ferramenta bem conhecida, basta pesquisar no Google).

Configure seu aplicativo para ser executado como um novo serviço da Firedaemon (que criará um serviço do Windows) e configure-o como interativo com a área de trabalho e para executá-lo como esse usuário em particular.

Quando você ou outro administrador fizer logon via RDP, poderá ver o que está acontecendo, mas abrindo o Firedaemon e clicando com o botão direito no serviço e escolhendo ver a Sessão 0. Isso mostrará o "desktop" e o aplicativo Quickbooks.

Espero que ajude.

    
por 22.04.2014 / 21:10
1

Se esta for uma aplicação interativa, o Autologon pode funcionar:

link

O Autologon permite que você configure facilmente o mecanismo de logon automático do Windows. Em vez de aguardar um usuário digitar seu nome e senha, o Windows usa as credenciais que você insere com o Autologon, que são criptografadas no Registro, para fazer logon no usuário especificado automaticamente.

O Autologon é fácil de usar. Apenas execute o autologon.exe, preencha o diálogo e pressione Ativar. Para desativar o logon automático, pressione Desativar. Além disso, se a tecla Shift estiver pressionada antes que o sistema execute um autologon, o logon automático será desativado para esse logon. Você também pode passar o nome de usuário, domínio e senha como argumentos de linha de comando: senha do domínio do usuário autologon.

    
por 22.04.2014 / 21:28
1

Eu sei que esta é uma pergunta antiga, mas eu vim aqui procurando uma resposta, então direi o que usei. SRVSTART funcionou muito bem, eu criei um arquivo ini dizendo o que iniciar e em qual diretório iniciar o programa, e depois usei o exe SRVSTART para criar o serviço. Em seguida, use SC para definir uma descrição. Em seguida, usei a interface do usuário de serviços para definir o ID de logon a ser usado para o serviço. O SRVStart pode ser configurado para assistir ao seu programa e reiniciá-lo se ele parar de funcionar. Até agora está funcionando muito bem. Aqui está um link para a página do autor, você pode baixá-lo. Se você obtiver o código-fonte, ele será antigo, escrito para o Visual C ++ 6.0. Ou você pode obter o exe e as dlls necessárias lá. link

Aqui está o meu arquivo INI de amostra (na pasta C: \ SpecialService para este exemplo) SpecialService.ini:

[SpecialService]
startup=C:\SpecialService\SpecialProgram.exe
startup_dir=C:\SpecialService
shutdown_method=kill
auto_restart=y
restart_interval=60

Então aqui está o comando para criar o serviço:

srvstart install SpecialService -c C:\SpecialService\SpecialService.ini

Finalmente, aqui está o comando para definir a descrição do serviço:

SC description eCitationService "Put your description here in quotes... "
    
por 28.06.2017 / 03:19
0

Tenha uma leitura aqui

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
  • DefaultUserName
  • DefaultDomainName
  • DefaultPassword
por 22.04.2014 / 18:28