문제

Windows 서비스를 구축하고 다음과 같습니다 이 MSDN 기사, 그러나 나는 "설치 자 생성"아래 3 단계에 붙어 있습니다. 언급하는 "Add Installer"링크를 찾을 수 없습니다. 정확히 제공하는 지침을 포함하여 어디서나 클릭했지만 찾을 수없는 것 같습니다. Google의 몇몇 사람들은 같은 문제를 겪었지만 솔루션을 찾지 못했습니다 (ServiceStaller 객체를 추가하고 수동으로 구성하는 것 외에).

다른 사람 이이 문제를 겪고 이유를 찾았습니까? VS2008을 사용하고 있으며 .NET 2.0이 중요하다면 타겟팅하고 있습니다.

도움이 되었습니까?

해결책

그들이 말하는 "회색 영역"은 속성 패널의 특성 (오타가 아님)의 명령 패널입니다. 그다지 유용하지 않으므로 아마도 꺼져 있었을 것입니다.

속성 패널을 마우스 오른쪽 버튼으로 클릭하고 "명령"을 선택하여 다시 활성화하거나 서비스 설계보기를 마우스 오른쪽 버튼으로 클릭하여 직접 설치자 프로젝트를 추가 할 수 있습니다 (클래스에 구성 요소를 추가하려면 Big Tan Window” ") 및"설치자 추가 "를 선택합니다.

다른 팁

Visual Studio 2012의 경우 "Services1.cs"를 마우스 오른쪽 버튼으로 클릭하고 "디자이너보기"(또는 Shift-F7을 누르십시오)을 선택하십시오. 그런 다음 디자이너의 회색 배경을 마우스 오른쪽 버튼으로 클릭하십시오.

그러면 마이크로 소프트가 이번에 숨어있는 부활절 달걀을 볼 수 있습니까? Add Installer 링크.

enter link description here

새로운 Visual Studio Express (2015) 버전으로 최신 정보를 얻으려면 :

Express Edition 에서이 "Add Installer"를 가질 수없는 것 같습니다. 하지만 정말 간단합니다. 클래스를 만들고 아래 코드를 추가하면됩니다.

또한 참조 System.configuration.install.dll을 추가해야합니다.

using System.Configuration.Install;
using System.ServiceProcess;
using System.ComponentModel;


namespace SAS
{
    [RunInstaller(true)]
    public class MyProjectInstaller : Installer
    {
        private ServiceInstaller serviceInstaller1;
        private ServiceProcessInstaller processInstaller;

        public MyProjectInstaller()
        {
            // Instantiate installer for process and service.
            processInstaller = new ServiceProcessInstaller();
            serviceInstaller1 = new ServiceInstaller();

            // The service runs under the system account.
            processInstaller.Account = ServiceAccount.LocalSystem;

            // The service is started manually.
            serviceInstaller1.StartType = ServiceStartMode.Manual;

            // ServiceName must equal those on ServiceBase derived classes.
            serviceInstaller1.ServiceName = "SAS Service";

            // Add installer to collection. Order is not important if more than one service.
            Installers.Add(serviceInstaller1);
            Installers.Add(processInstaller);
        }
    }
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top