다음을 통해 공유


MMCFreeNotifyHandle 함수(mmc.h)

MMCFreeNotifyHandle 함수는 속성 시트에서 만든 MMCPropertyChangeNotify 호출에 대한 응답으로 MMC가 스냅인으로 보낸 MMCN_PROPERTY_CHANGE 알림 메시지에 대한 핸들을 해제하기 위해 스냅인에 의해 호출됩니다.

구문

HRESULT MMCFreeNotifyHandle(
  [in] LONG_PTR lNotifyHandle
);

매개 변수

[in] lNotifyHandle

IExtendPropertySheet2::CreatePropertyPages 호출 중에 콘솔에서 제공하는 핸들을 지정하는 값입니다.

반환 값

이 콜백 함수는 이러한 값 중 하나를 반환할 수 있습니다.

설명

알림에 대한 핸들은 IExtendPropertySheet2::CreatePropertyPages 메서드에 대한 호출을 통해 스냅인에 전달됩니다. 스냅인이 이 메서드에서 성공 코드(S_OK, S_FALSE)를 반환하는 경우 스냅인은 MMCFreeNotifyHandle을 호출해야 합니다. 스냅인에서 오류 코드를 반환하는 경우 MMC는 핸들을 즉시 해제합니다.

스냅인은 MMC가 스냅인에 지정된 후 핸들을 사용하지 않으므로 언제든지 핸들을 해제할 수 있습니다. 스냅인은 MMCFreeNotifyHandle 을 한 번만 호출해야 하며 해제된 후 MMCPropertyChangeNotify 호출에서 핸들을 사용하지 않아야 합니다.

스냅인은 IExtendPropertySheet2::CreatePropertyPages 메서드가 호출된 경우에만 MMCFreeNotifyHandle을 호출해야 합니다. 스냅인에서 IPropertySheetCallback을 사용하여 속성 페이지를 추가한 다음 NULL 첫 번째 매개 변수를 사용하여 IPropertySheetProvider::AddPrimaryPages를 호출하는 경우 MMC는 IExtendPropertySheet2::CreatePropertyPages를 호출하지 않습니다. 이 방법으로 AddPrimaryPages를 호출하면 페이지가 이미 추가되었음을 MMC에 알릴 수 있으므로 스냅인의 IExtendPropertySheet2::CreatePropertyPages 메서드를 호출할 필요가 없습니다. 자세한 내용은 마법사 페이지 추가: 구현 세부 정보를 참조하세요.

다음 목록에는 스냅인에서 MMCFreeNotifyHandle을 호출할 수 있는 상황을 보여 주는 시나리오가 포함되어 있습니다.

  • IExtendPropertySheet2::CreatePropertyPages에서 스냅인은 속성 페이지를 추가하지 않습니다. CreatePropertyPages가 오류 결과를 반환하지 않으면 스냅인은 반환하기 전에 MMCFreeNotifyHandle을 호출할 수 있습니다. 그렇지 않으면 MMC가 핸들을 해제합니다.
  • IExtendPropertySheet2::CreatePropertyPages에서 스냅인은 속성 페이지를 추가하지만 핸들을 페이지에 전달하지는 않습니다. 마찬가지로 CreatePropertyPages가 오류 결과를 반환하지 않으면 스냅인은 반환하기 전에 MMCFreeNotifyHandle을 호출할 수 있습니다.
  • IExtendPropertySheet2::CreatePropertyPages에서 스냅인은 속성 페이지를 추가하고 핸들을 페이지에 전달합니다. 그러나 속성 페이지는 MMCPropertyChangeNotify를 호출하지 않습니다. 이 경우 스냅인은 속성 페이지의 소멸자에서 또는 CreatePropertyPages에서 (오류 결과 없이) 반환하기 전에 MMCFreeNotifyHandle 을 호출할 수 있습니다.
  • IExtendPropertySheet2::CreatePropertyPages에서 스냅인은 속성 페이지를 추가하고 핸들을 페이지에 전달합니다. 속성 페이지는 MMCPropertyChangeNotify를 호출합니다. 이 경우 스냅인은 속성 페이지의 소멸자에서 MMCFreeNotifyHandle 을 호출해야 합니다. 스냅인의 MMCN_PROPERTY_CHANGE 알림 처리기에서 MMCFreeNotifyHandle을 호출하는 것은 권장되지 않습니다. 여러 페이지가 알림을 보내거나 동일한 페이지에서 여러 알림을 보낼 수 있기 때문입니다(사용자가 적용 단추를 클릭할 때마다 하나씩).

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 mmc.h

추가 정보

IComponent

IExtendPropertySheet2::CreatePropertyPages

MMCPropertyChangeNotify