Windows Service용 WebAPI
6869 단어 windows
1. WindowsService 프로젝트를 만듭니다.
2、Manage NuGet Packages를 클릭하여 Microsoft Asp.NET 웹 API Self Host Install 을 클릭합니다.
3. 서비스 편집.cs 파일은 다음과 같습니다.
1 public partial class Service1 : ServiceBase
2 {
3 private HttpSelfHostServer _server;
4 private readonly HttpSelfHostConfiguration _config;
5 public const string ServiceAddress = "http://localhost:1345";
6 public Service1()
7 {
8 InitializeComponent();
9
10 _config = new HttpSelfHostConfiguration(ServiceAddress);
11 _config.Routes.MapHttpRoute("DefaultApi",
12 "api/{controller}/{id}",
13 new { id = RouteParameter.Optional });
14 }
15
16 protected override void OnStart(string[] args)
17 {
18 _server = new HttpSelfHostServer(_config);
19 _server.OpenAsync();
20 }
21
22 protected override void OnStop()
23 {
24 _server.CloseAsync().Wait();
25 _server.Dispose();
26 }
27 }
28 public class ApiServiceController : ApiController
29 {
30 [HttpGet]
31 public string Get()
32 {
33 return "Hello from windows service!";
34 }
35 }
4, 서비스 열기 1.cs의 보기 디자이너, 보기 디자이너에서 임의의 위치에서 오른쪽 키,'설치 프로그램 추가' 를 선택하면 프로젝트와 아래에 1온? 프로젝트 Installer.cs의 그룹이 나타납니다. (설치 프로그램의 온을 처음 추가한 경우 프로젝트 Installer.cs를 두 번 눌러서 프로젝트 Installer의 보기 디자이너를 열고 서비스 Installer 1조품을 찾습니다. 선택한 후 F4키를 누르면 구성 요소 속성 온을 설정하고, Description = "테스트 서버 온?"DisplayName=“Service1” ServiceName=“Service1”;//이 값은 Windows Service 1과 같아야 합니다.InitService() 메서드에서 설정된 base.ServiceName 속성이 온에 도착하면 StartType은 서비스 실행 유형입니다. 필요에 따라 설정하면 됩니다.(Manual: 수동으로 시작하고 AutoMatic은 자동으로 시작합니다.)ceProcessInstaller1 구성 요소를 찾으면 선택한 후 F4키를 누르면 구성 요소 속성을 설정합니다.Account="LocalSystem";//다른 속성으로 설정하면 서비스를 시작할 때 사용자 이름과 비밀번호를 입력하라고 알려 한 서비스의 모든 준비가 완료됩니다. 다음은 설치와 테스트 작업입니다.
5. 생성 디렉터리를 열고 생성에 성공하면 윈도 서비스가 있습니다.exe 파일, 생성 디렉터리 루트 디렉터리에 2bat (일괄 처리 파일) 를 추가합니다. 서버를 설치하고 마운트 해제하는 데 사용되며, 텍스트 파일을 새로 만듭니다. 파일을 열고 다음 두 줄의 명령을 추가합니다. C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe WindowsService1.exe pause 저장 후 텍스트 파일을 닫은 다음 '설치복.bat' 파일로 이름을 바꿉니다. 접미사 이름은 변경해야 합니다.bat!,텍스트 파일을 새로 만들고 파일을 열고 다음 두 줄의 명령을 추가합니다. C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe/u WindowsService1.exe pause 저장 후 텍스트 파일을 닫은 다음 '마운트 해제 bat' 파일로 이름을 바꿉니다. 접미사 이름을 수정하십시오.bat! 6.4 "설치복.bat"파일, 윈도우즈 서비스 설치.설치에 성공하면 수동으로 서비스를 시작해야 합니다. 왜냐하면 저희는 서비스Installer1을 설치했기 때문입니다.StartType=Manual에서 윈도우즈 서비스 관리자를 열고 서비스 1이라는 서비스를 찾으며 속성을 오른쪽 단추로 누르십시오.시동을 걸다.
6. 컴파일 시 설치 제거:
build events:Pre-build enent command line
net stop xxx exit/b 0
post-build event command line:
%systemroot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe/u $(TargetPath)%systemroot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe $(TargetPath)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
제한된 크기의 디렉토리를 만드는 방법오늘 저는 장치에 공간이 없을 때 백업 중에 응용 프로그램이 어떻게 작동하는지 테스트(및 수정)하는 작업이 있습니다. 결과적으로 "남은 공간 없음"오류로 백업이 실패하면 새 파일이 없어야 합니다. 지금까지 문제를 재...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.