Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Este artigo descreve como criar um projeto de instalação para um aplicativo Windows Service (anteriormente chamado de um "serviço NT"). Para fazer isso, você deve primeiro criar uma solução que contém um serviço do Windows simples projeto que grava uma entrada em seu log de aplicativo. Em seguida, você adicionar um projeto de instalação à solução para instalar o serviço Windows. Finalmente, inicie o serviço. Você pode iniciar o serviço usando o item Serviços na pasta Ferramentas administrativas no menu Iniciar.
A lista a seguir descreve o hardware recomendado, software, infra-estrutura de rede e service packs que você deve ter:
Microsoft Windows 2000, Windows XP, Windows Server 2003 ou um mais recente sistema operacional Microsoft com o .NET Framework instalado
Microsoft Visual Studio .NET Enterprise, Microsoft Visual Studio .NET Enterprise Architect, Microsoft Visual Studio 2005 ou Microsoft Visual Studio 2008.
Este artigo presume que você esteja familiarizado com o Windows Services. Se você não estiver familiarizado com os serviços do Windows, consulte a primeira referência na seção REFERENCES deste artigo.
Este artigo também pressupõe que a conta de usuário que você usa para instalar e executar esse serviço tem as permissões que você deve ter para instalar e iniciar serviços e também tem as permissões que você deve ter para acessar o log de eventos.
Criar um projeto de instalação para um serviço do Windows
Esta seção descreve como criar um serviço do Windows projeto e como usar um projeto de instalação compilado para instalar o serviço do Windows.
Criar um projeto de serviço do Windows
Inicie o Microsoft Visual Studio.
No menu arquivo , aponte para novo e, em seguida, clique em Project .
Clique em projetos do Visual translation from VPE for Csharp em Tipos de projeto e, em seguida, clique em Serviço do Windows em modelos .
Observação No Visual Studio 2005 ou Visual Studio 2008, expandir translation from VPE for Csharp Visual em Project Types , clique em Windows e, em seguida, clique em Serviço do Windows em modelos .
Tipo LogWriterService na caixa de texto nome e em seguida, digite C:\ na caixa de texto local . Clique em OK .
No Solution Explorer, clique com o botão direito do mouse Service1.cs e, em seguida, clique em View Code .
No manipulador de evento OnStart , substituir os comentários com o seguinte código:
EventLog.WriteEntry("My simple service started.");
No Solution Explorer, clique duas vezes em Service1.cs .
Na janela Code Editor, clique com o botão direito Modo Design e, em seguida, clique em Propriedades
No painel Propriedades, clique no link Add Installer .
No painel Properties para ServiceInstaller1 , alterar ServiceName propriedade para Service1 .
Na janela Code Editor no modo de design, clique em ServiceProcessInstaller1 .
No painel Propriedades, altere a propriedade conta como LocalSystem (os valores LocalService e NetworkService estão disponíveis somente no Microsoft Windows XP).
Usar um projeto compilado de instalação para instalar o serviço do Windows
Depois que você conclui as etapas na seção anterior para configurar o projeto Windows Service, execute estas etapas para adicionar um projeto de implantação que empacota o aplicativo de serviço so that o aplicativo de serviço pode ser instalado:
Adicione um novo projeto ao seu projeto LogWriterService. Para fazer isso, execute as seguintes etapas:
No Solution Explorer, clique com o botão direito do mouse 'LogWriterService' Solution (1 projeto) , aponte para Add e, em seguida, clique em New Project .
Clique em Setup and Deployment Projects em Project Types e clique em Projeto de instalação em modelos .
Na caixa de texto nome , digite ServiceSetup .
Tipo C:\ no texto local caixa e, em seguida, clique em OK .
Informe a implantação do projeto e ao pacote. Para fazer isso, execute as seguintes etapas:
No Solution Explorer, clique com o botão direito do mouse ServiceSetup , aponte para Add e, em seguida, clique em Project Output
Na caixa de diálogo Add Project Output Group , na caixa Project , clique em LogWriterService
Clique em Primary Output e, em seguida, clique em OK .
Para instalação correta, adicione somente saída primária. Para adicionar as ações personalizadas, execute estas etapas:
No Solution Explorer, clique com o botão direito do mouse ServiceSetup , aponte para modo de exibição e, em seguida, clique em Ações personalizadas
Clique Custom Actions com o botão direito do mouse e, em seguida, clique em Add Custom Action .
Clique em Pasta de aplicativo e, em seguida, clique em OK .
Clique em Primary output from LogWriterService (Active) e em seguida, clique em OK .
Observe que a saída primária é exibido em instalar , Confirmar , Rollback e Uninstall .
Por padrão, os projetos de instalação não são incluídos na configuração de compilação. Para criar a solução, use um dos seguintes métodos:
método 1
Clique com o botão direito do mouse LogWriterService e clique em criar .
Clique com o botão direito do mouse ServiceSetup e em seguida, clique em criar .
método 2
No menu Build , clique em Configuration Manager para criar a solução inteira.
Clique para selecionar a caixa de seleção criar para ServiceSetup.
Pressione F7 para compilar a solução inteira. Quando a solução é criada, você tem um pacote de instalação completa que está disponível para o serviço.
Para instalar o serviço recém-criado, clique com o botão direito do mouse ServiceSetup e, em seguida, clique em instalar .
Clique na caixa de diálogo ServiceSetup , em Avançar três vezes. Observe que uma barra de progresso aparece enquanto instala o serviço.
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.ServiceProcess;
namespace LogWriterService
{
public class Service1 : System.ServiceProcess.ServiceBase
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.Container components = null;
public Service1()
{
// The Windows.Forms Component Designer must have this call.
InitializeComponent();
// TODO: Add any initialization after the InitComponent call
}
// The main entry point for the process
static void Main()
{
System.ServiceProcess.ServiceBase[] ServicesToRun;
// More than one user service may run in the same process. To add
// another service to this process, change the following line to
// create a second service object. For example,
//
// ServicesToRun = New System.ServiceProcess.ServiceBase[] {new Service1(), new MySecondUserService()};
//
ServicesToRun = new System.ServiceProcess.ServiceBase[] { new Service1() };
System.ServiceProcess.ServiceBase.Run(ServicesToRun);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
components = new System.ComponentModel.Container();
this.ServiceName = "Service1";
}
/// <summary>
/// Clean up any resources that are being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
/// <summary>
/// Set things in motion so your service can do its work.
/// </summary>
protected override void OnStart(string[] args)
{
EventLog.WriteEntry("My simple service started.");
}
/// <summary>
/// Stop this service.
/// </summary>
protected override void OnStop()
{
// TODO: Add code here to perform any tear-down necessary to stop your service.
}
}
}
No painel de controle, clique duas vezes em Ferramentas administrativas e, em seguida, clique duas vezes em serviços
Clique com o botão direito do mouse Service1 e, em seguida, clique em Iniciar
Use um dos seguintes métodos para verificar que um evento é registrado no log de eventos:
método 1
No painel de controle, clique duas vezes em Ferramentas administrativas e, em seguida, clique duas vezes em Visualizar eventos .
Clique em Log do aplicativo no painel esquerdo e localize o log de eventos para o serviço no painel da direita.
método 2
No Server Explorer, expanda Servers , expanda ComputerName, expanda Logs de eventos , expanda o aplicativo e, em seguida, expanda Service1 . Lembre-se que Service1 é o nome da classe, não o serviço propriamente dito. Portanto, Service1 é usado como o nome do aplicativo. (É além do escopo deste artigo para explicar como personalizar os nomes de.)
Move o cursor sobre as entradas de log. A segunda entrada de cima para baixo leia "Meu serviço simples iniciado".
A documentação do SDK Framework afirmará o seguinte:
O arquivo executável compilado que cria um projeto de aplicativo de serviço deve ser instalado no servidor antes do projeto pode funcionar de maneira significativa. Não é possível depurar ou executar um aplicativo de serviço pressionando F5 ou F11; você não pode executar imediatamente um serviço ou etapa no seu código. Em vez disso, você deve instalar e iniciar o serviço e anexar um depurador ao processo do serviço.
Para obter mais informações, visite o seguinte site da Web Microsoft Developer Network (MSDN):
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 816169
(http://support.microsoft.com/kb/816169/en-us/
)
Quanto esforço foi necessário para seguir os procedimentos deste artigo?
Muito baixo
Baixo
Moderado
Alto
Muito alto
Diga-nos o porque e o que podemos fazer para melhorar esta informação
Obrigado! Seus comentários são usados para nos ajudar a aperfeiçoar o conteúdo de suporte. Para obter mais opções de ajuda, visite a Home Page de Ajuda e Suporte.