none
Windows Update 작동 원리 질문 (wuauserv 서비스 꺼짐) RRS feed

  • 질문

  • 안녕하세요.
    Windows Update 에 대해 궁금한 점이 있어 질문드립니다.
    다른 OS는 모르겠는데... Windows 10에서는 Windows Update 서비스 (wuauserv) 가 작동옵션이
    "수동시작" 으로 되어있습니다. 그리고 서비스 자체도 꺼져 있구요.
    그런데 Windows Update는 잘 작동합니다..
    wuauserv가 Windows Update을 담당하는 서비스인걸로 알고 있는데 이거 외에 다른 방법으로
    Windows Update가 작동되는 듯 한데..

    저는 Windows Update가 작동중인지(켜져있는지)를 C++에서 알고싶습니다.
    단순 wuauserv 서비스 시작여부로는 알 수 없는듯 한데 이에 대해 알고 계시는 분 계시면 알려주셔요..^^
    2018년 3월 31일 토요일 오전 11:44

모든 응답

  • 안녕하세요.

    문제를 올바르게 이해 했다면, 특정 시점에 Windows Update 서비스가 작동중인지/멈춰 있는지를 프로그램 내에서 확인하기를 원하는 것으로 이해가 됩니다.
    말씀하신 것처럼 Windows Update 을 담당하는 서비스는 wuauserv 로 알고 있고, 이 서비스의 작동 여부를 확인하면 될 듯 합니다.
    만약 그렇다면 아래와 같은 sc.exe 을 사용하여 프로그램 내에서 확인하여 보실 수 있습니다.

    D:\>sc query wuauserv

    SERVICE_NAME: wuauserv
            TYPE               : 20  WIN32_SHARE_PROCESS
            STATE              : 1  STOPPED
            WIN32_EXIT_CODE    : 0  (0x0)
            SERVICE_EXIT_CODE  : 0  (0x0)
            CHECKPOINT         : 0x0
            WAIT_HINT          : 0x0

    D:\>sc query wuauserv

    SERVICE_NAME: wuauserv
            TYPE               : 20  WIN32_SHARE_PROCESS
            STATE              : 4  RUNNING
                                    (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
            WIN32_EXIT_CODE    : 0  (0x0)
            SERVICE_EXIT_CODE  : 0  (0x0)
            CHECKPOINT         : 0x0
            WAIT_HINT          : 0x0

    또는 프로그램적으로 서비스의 상태를 얻기 위해서는 QueryServiceStatusEx 을 이용하여 보시기 바랍니다.
    https://msdn.microsoft.com/en-us/library/windows/desktop/ms684941(v=vs.85).aspx
    QueryServiceStatusEx function

    추가로 다음과 같은 샘플을 참조하여 보세요.
    Starting a Service
    https://msdn.microsoft.com/en-us/library/windows/desktop/ms686315(v=vs.85).aspx

    https://support.microsoft.com/en-ae/help/245230/how-to-programmatically-stop-a-service-and-its-dependencies
    How To Programmatically Stop a Service and Its Dependencies


    도움이 되었기를 바랍니다.
    감사합니다.

    2018년 4월 3일 화요일 오전 12:32