29 lines
826 B
C#
29 lines
826 B
C#
using DeviceAgent;
|
|
using DeviceAgent.Services;
|
|
using Microsoft.Extensions.Hosting.WindowsServices;
|
|
|
|
var builder = Host.CreateApplicationBuilder(args);
|
|
|
|
// 只在作为 Windows 服务运行时配置
|
|
if (WindowsServiceHelpers.IsWindowsService())
|
|
{
|
|
builder.Services.AddWindowsService(options =>
|
|
{
|
|
options.ServiceName = "DeviceReportAgent";
|
|
});
|
|
}
|
|
|
|
// 注册服务
|
|
builder.Services.AddSingleton<DeviceInfoService>();
|
|
builder.Services.AddSingleton<ScreenCaptureService>();
|
|
builder.Services.AddSingleton<ScreenStreamService>();
|
|
builder.Services.AddSingleton<RemoteDesktopService>();
|
|
builder.Services.AddHttpClient<ReportService>();
|
|
builder.Services.AddHostedService<Worker>();
|
|
|
|
// 配置
|
|
builder.Services.Configure<AgentConfig>(builder.Configuration.GetSection("Agent"));
|
|
|
|
var host = builder.Build();
|
|
host.Run();
|