.net core 가 windows 서비스 에 배 치 된 전체 절차

머리말
Net core 프로젝트 부 서 는 Windows 에서 여러 가지 방식 이 있 는데 대체적으로 다음 과 같은 몇 가지 가 있 습 니 다.
dotnet 명령
  • iis(windowshosts),
  • 일부 오픈 소스 의 응용 용기(docker)
  • 일부 exe 프로그램 을 바탕 으로 마이크로소프트 홈 페이지 의 사례Nssm 윈도 우즈 서비스 구축
    그 중에서 우열 대 비 는 여기 서 누술 하지 않 는 다.나 는 오늘 그것 을 windows 서비스 에 구축 했다.이런 방식 은 우리 기 존의 dotnet 에 있어 상대 적 으로 아름 답 고(하나의 검 은 틀,하 나 는 볼 수 없다)컴퓨터 재 부팅 은 자동 으로 재 부팅 할 수 있다.
    1.실현
    1.1.nssm 다운로드
    홈 페이지
    1.2.윈도 우즈 서비스 구축 
    폴 더 에 만들어 진 Install.bat 를 찾 으 려 면 팝 업 창 을 실행 하려 면 누 르 십시오.
    Install.bat 내용:
    
    %~d0
    cd %~dp0
    nssm install NPSWebCoreService
    PAUSE

    Path:시스템 실행 bat-C:\Nps\CoreWeb\\1run.bat 선택
    ps:우리 시스템 에서 특수 처리 해 야 하기 때문에 bat 를 직접 실 행 했 습 니 다.이 내용 은 정상적으로 C:\Program Files\\dotnet\\dotnet.exe 를 작성 합 니 다.dotnet 명령 을 실행 해 야 하기 때문에 이 작업 은 실제 bat 에서 실 행 됩 니 다.
    Startup directory:bat 가 있 는 디 렉 터 리 는 변경 하지 않 아 도 됩 니 다.
    ps:프로젝트 폴 더 의 주 소 를 발표 합 니 다.
    Arguments:비어 있 음;
    ps:프로젝트 실행 dll:
    Service name:install.bat 일괄 처리 에 적 었 습 니 다.변경 하지 마 세 요.코드 에서 서 비 스 를 다시 시작 하기 때문에 죽 었 습 니 다.
    ps:파이프 이름 을 만 들 면 됩 니 다.즉,windows 서비스 이름 입 니 다.
    그리고 Install service 단 추 를 누 르 면 배치 가 완 료 됩 니 다.
    주:빨간색 글꼴 은 일반 처리 방식 이 고 빨간색 이 아 닌 우리 시스템 에서 처리 하 는 방식 입 니 다.
    1.2.3 서비스 시작
    사 이 트 를 입력 하면 방문 할 수 있 습 니 다.


    3. Nssm
    3.1 nssm 을 입력 하여 명령 행 을 알 아 보기
    홈 페이지
    4.우리 시스템 과 의 문제 에 대한 처리 방안 
    4.1.로그 문제,nssm 에서 path 파일 이 bat 를 실행 합 니 다.dotnet.exe.Log4net 설정 문 제 를 실행 하지 마 십시오.
    4.2.Office 변환 pdf 문제,windows server 2008 서버 에 come 구성 요소 가 부족 하고 창 이 부족 합 니 다.프로그램 에 관련 코드 를 추 가 했 습 니 다.권한 이 없 으 면 수 동 으로 만 드 십시오(서버 2008 r2,2016 모두 만 들 수 있 습 니 다)
    System.Runtime.InteropServices.COM Exception(0x800A03EC):Microsoft Office Excel 은 파일"D:\Benz\\Daimler\Benz.Win\LSHBizPlanFigure.xls"에 접근 할 수 없습니다.가능 한 원인 은:
    ? 파일 이름 이나 경로 가 존재 하지 않 습 니 다.
    ? 파일 이 다른 프로그램 에서 사용 되 고 있 습 니 다.
    ? 저장 하려 는 워 크 북 은 현재 열 린 워 크 북 과 이름 이 같 습 니 다.
    이 문제 의 출현 을 나 는 매우 이해 하지 못 하 겠 다.
    해결 방안 도 매우 의심스럽다
    This solution is ...
    ?Windows 2008 Server x64
    Please make this folder.
    C:\Windows\SysWOW64\config\systemprofile\Desktop
    ?Windows 2008 Server x86
    Please make this folder.
    C:\Windows\System32\config\systemprofile\Desktop
    ...instead of dcomcnfg.exe.
    This operation took away office automation problems in my system.
    A Desktop folder seems to be necessary in the systemprofile folder to open file by Excel.
    It disappears from Windows2008, Windows2003 had the folder,
    and I think it cause this error.
    C:\\Windows\\System 32\config\systemprofile 과 C:\\Windows\\SysWOW 64\\config\systemprofile 디 렉 터 리 에 Desktop 디 렉 터 리 라 는 이름 을 만 들 면 문 제 를 해결 할 수 있 습 니 다.
    이 방법 은 확실히 나의 문 제 를 해결 했다.
    4.3.데이터베이스 백업 재 부팅 서비스 문 제 는 windows 서 비 스 를 재 부팅 하 는 것 으로 바 뀌 었 습 니 다.따라서 위의 install.bat 로 실행 하지 말고 Service name 을 바 꾸 십시오.
    서비스 코드 다시 시작:
    
    try
     {
     ServiceController service = new ServiceController("NPSWebCoreService");
     if (service.Status == ServiceControllerStatus.Running)
     {
     service.Stop();
     service.WaitForStatus(ServiceControllerStatus.Stopped);
     }
     service.Start();
     service.WaitForStatus(ServiceControllerStatus.Running);
     }
     catch (Exception){}
    4.4.netcoreweb 는 my sql 서비스 문 제 를 바탕 으로 서버 를 다시 시작 할 때 my sql 과 windows 서비스 시작 순서 에 대한 문 제 를 걱정 합 니 다.저 는 bat 를 시작 할 때 my sql 서비스 가 시작 되 었 는 지 판단 하 는 방법 을 어떻게 판단 합 니까?
    bat 내용:
    
    @echo off
    
    SETLOCAL enabledelayedexpansion
    rem       
    :begin
    
    for /f "skip=3 tokens=4" %%i in ('sc query MySQL') do set "zt=%%i" &goto :next
    :next
    if /i "%zt%"=="RUNNING" (
     echo           。
    ) else (
     net start MySQL80
     echo           1。
    )
    
    rem     
    rem          
    echo   NPSWebCore
    
    dotnet ./NPSWebCore.dll
    
    @echo     
    exit
    총결산
    이상 은 이 글 의 모든 내용 입 니 다.본 고의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 참고 학습 가 치 를 가지 기 를 바 랍 니 다.여러분 의 저희 에 대한 지지 에 감 사 드 립 니 다.

    좋은 웹페이지 즐겨찾기