none
C++을 이용한 CreateService API 문의 RRS feed

  • 질문

  • C++을 사용하여 프로그램 개발 중 문의가 있습니다.

    현재 A라는 서비스를 CreateService API를 사용하여 제 PC에 설치를 진행 후

    이후 CreateService API를 사용 시 간헐적으로 삭제가 되는 부분을 확인하였습니다.

    해당 API를 사용하여 서비스 등록이 진행될 경우 SC 커맨드 스탭별 동작처럼 단계적 동작 방식이 궁금하여 문의 드립니다.

    예를들어 CreateService API 사용하여 서비스를 등록하게 되면 

    1) 서비스 삭제

    2) 서비스 등록 

    3) 서비스 옵션 설정 

    순서로 동작하는건지 아니면 어떠한 방식으로 서비스가 등록되는건지 확인하고 싶습니다.

    내부적 동작에 대해 알 수 있을까요?

     
    2019년 5월 2일 목요일 오전 5:43

모든 응답

  • 딱히 관련해서 문서에 나온 것이 없습니다. 단지 유추해 볼 수 있는 것은 CreateService가 해주는 것은 물론 서비스 핸들을 반환하는 것이 있겠지만 결국 시스템에 변경을 하는 것은 레지스트리(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services)입니다. 실제로 핸들이 필요없다면 단순히 레지스트리를 조정하는 것으로 서비스를 등록/해제할 수 있습니다.

    CreateService의 경우 해당 레지스트리에 우선 기존 서비스가 있다면 키를 삭제하고 새로 만드는 것으로 보입니다.

    2019년 5월 3일 금요일 오전 12:40