Share via


SERVICE_NOTIFY_2W 구조체(winsvc.h)

서비스 상태 알림 정보를 나타냅니다. NotifyServiceStatusChange 함수에서 사용됩니다.

구문

typedef struct _SERVICE_NOTIFY_2W {
  DWORD                  dwVersion;
  PFN_SC_NOTIFY_CALLBACK pfnNotifyCallback;
  PVOID                  pContext;
  DWORD                  dwNotificationStatus;
  SERVICE_STATUS_PROCESS ServiceStatus;
  DWORD                  dwNotificationTriggered;
  LPWSTR                 pszServiceNames;
} SERVICE_NOTIFY_2W, *PSERVICE_NOTIFY_2W;

멤버

dwVersion

구조체 버전입니다. 이 멤버는 SERVICE_NOTIFY_STATUS_CHANGE (2)여야 합니다.

pfnNotifyCallback

콜백 함수에 대한 포인터입니다. 자세한 내용은 설명 부분을 참조하세요.

pContext

콜백 함수에 전달할 사용자 정의 데이터입니다.

dwNotificationStatus

알림 상태 나타내는 값입니다. 이 멤버가 ERROR_SUCCESS 경우 알림이 성공하고 ServiceStatus 멤버에 유효한 정보가 포함됩니다. 이 멤버가 ERROR_SERVICE_MARKED_FOR_DELETE 경우 서비스가 삭제하도록 표시되었으며 NotifyServiceStatusChange 에서 사용하는 서비스 핸들을 닫아야 합니다.

ServiceStatus

서비스 상태 정보를 포함하는 SERVICE_STATUS_PROCESS 구조체입니다. 이 멤버는 dwNotificationStatusERROR_SUCCESS 경우에만 유효합니다.

dwNotificationTriggered

dwNotificationStatusERROR_SUCCESS 경우 이 멤버는 콜백 함수에 대한 이 호출을 트리거한 알림의 비트 마스크를 포함합니다.

pszServiceNames

dwNotificationStatusERROR_SUCCESS 알림이 SERVICE_NOTIFY_CREATED 또는 SERVICE_NOTIFY_DELETED 경우 이 멤버는 유효하며 하나 이상의 서비스 이름을 포함하는 MULTI_SZ 문자열입니다. 생성된 서비스의 이름에는 삭제된 서비스의 이름과 구분할 수 있도록 '/' 접두사 가 있습니다.

이 멤버가 유효한 경우 알림 콜백 함수는 LocalFree 함수를 사용하여 문자열을 해제해야 합니다.

설명

콜백 함수는 다음과 같이 선언됩니다.

typedef VOID( CALLBACK * PFN_SC_NOTIFY_CALLBACK ) (
    IN PVOID pParameter 
);

콜백 함수는 호출자가 제공하는 SERVICE_NOTIFY 구조체에 대한 포인터를 받습니다.

참고

winsvc.h 헤더는 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 SERVICE_NOTIFY_2 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
머리글 winsvc.h(Windows.h 포함)

추가 정보

NotifyServiceStatusChange

SERVICE_STATUS_PROCESS