.NET 8을 활용해 간단하게 Windows 서비스를 만드는 방법을 단계별로 안내합니다.
Windows 서비스 프로젝트를 만들기 위해, 아래의 NuGet 패키지를 설치합니다.
Microsoft.Extensions.Hosting
Microsoft.Extensions.Hosting.WindowsServices
Program.cs 파일에서 IHost 구성을 아래와 같이 수정하세요. 서비스 이름과 로그 설정 등을 포함해 간단하게 구성할 수 있습니다.
IHost host = Host.CreateDefaultBuilder(args)
.UseWindowsService(options =>
{
options.ServiceName = "WorkerService";
})
.ConfigureServices(services =>
{
services.AddHostedService<Worker>();
})
.ConfigureLogging((context, logging) =>
{
logging.SetMinimumLevel(LogLevel.Trace);
logging.AddNLog();
})
.Build();
await host.RunAsync();
이제 서비스를 게시할 차례입니다. 게시를 위한 설정은 다음과 같습니다.
<PropertyGroup>
<RootNamespace>App.WindowsService</RootNamespace>
<OutputType>exe</OutputType>
<PublishSingleFile Condition="'$(Configuration)' == 'Release'">true</PublishSingleFile>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<PlatformTarget>x64</PlatformTarget>
<PropertyGroup>
Visual Studio에서 솔루션 탐색기에서 프로젝트를 오른쪽 클릭하고, 게시를 선택합니다. 게시 프로필을 추가한 후 폴더를 대상으로 설정하세요.
필수 설정 확인 사항:
sc <서버> create [서비스 이름] binPath= [파일 경로]
sc <서버> start [서비스 이름]
[C#] 캐스팅 잘림 및 변환 반올림/반내림 (0) | 2024.01.07 |
---|---|
[C#] as와 is 연산자를 활용한 안전한 형 변환 (0) | 2023.09.21 |
[C#] 제네릭 형식: 코드의 재사용성과 안정성 확보 (0) | 2023.09.20 |
[C#] ?? 연산자 - null 병합 연산자의 활용 (0) | 2023.09.19 |
[Git] Zip 파일 생성 및 편집하기 (0) | 2023.01.25 |
댓글 영역