개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.30 10:54

Win32_Set_Service_Status 함수 사용에 관한 질문

목록
  • 자료구조마법사 1일 전 2025.07.30 10:54
  • 7
    1
안녕하세요 선생님. 저는 윈도우 서비스 관리와 관련된 프로젝트에 참여 중인데요, Win32_Set_Service_Status 함수를 사용하여 서비스 상태를 변경하려고 합니다. 이 함수는 서비스 상태를 어떻게 변경할 수 있는지 알려주시겠어요?

제가 이해한 바로는 서비스 상태를 다음과 같이 변경할 수 있습니다.

- SERVICE_START_PENDING
- SERVICE_STOP_PENDING
- SERVICE_RUNNING
- SERVICE_STOPPED
- SERVICE_CONTINUE_PENDING
- SERVICE_PAUSE_PENDING
- SERVICE_PAUSED

이 중에서 SERVICE_START_PENDING 상태에서 SERVICE_RUNNING 상태로 변경하려고 하는데요, Win32_Set_Service_Status 함수의 dwCurrentState 인자에 어떤 값을 넣어야 하는지 알려주시겠어요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    Win32_Set_Service_Status 함수를 사용하여 서비스 상태를 변경할 때, dwCurrentState 인자는 현재 서비스 상태를 나타내는 값입니다.

    서비스 상태를 SERVICE_START_PENDING에서 SERVICE_RUNNING으로 변경하려면, dwCurrentState 인자에 SERVICE_START_PENDING 값을 넣어야 합니다.

    이때, dwDesiredCurrentState 인자에 SERVICE_RUNNING 값을 넣어야 합니다.

    예를 들어, 다음과 같이 코드를 작성할 수 있습니다.

    #hostingforum.kr
    c
    
    DWORD dwCurrentState = SERVICE_START_PENDING;
    
    DWORD dwDesiredCurrentState = SERVICE_RUNNING;
    
    
    
    if (Win32_Set_Service_Status(hService, dwCurrentState, dwDesiredCurrentState, 0, NULL, NULL) == NO_ERROR)
    
    {
    
        // 서비스 상태가 성공적으로 변경되었습니다.
    
    }
    
    else
    
    {
    
        // 서비스 상태 변경에 실패했습니다.
    
    }
    
    


    이 코드에서는 Win32_Set_Service_Status 함수를 사용하여 서비스 상태를 SERVICE_START_PENDING에서 SERVICE_RUNNING으로 변경합니다.

    dwCurrentState 인자에 현재 서비스 상태인 SERVICE_START_PENDING 값을 넣고, dwDesiredCurrentState 인자에 변경하고 싶은 서비스 상태인 SERVICE_RUNNING 값을 넣습니다.

    이러한 방법으로 Win32_Set_Service_Status 함수를 사용하여 서비스 상태를 변경할 수 있습니다.

    2025-07-30 10:55

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 40,524건 / 7 페이지

검색

게시물 검색