Compartilhar via


Função MMCFreeNotifyHandle (mmc.h)

A função MMCFreeNotifyHandle é chamada por um snap-in para liberar o identificador para uma mensagem de notificação MMCN_PROPERTY_CHANGE enviada ao snap-in pelo MMC em resposta a uma chamada MMCPropertyChangeNotify feita por uma folha de propriedades.

Sintaxe

HRESULT MMCFreeNotifyHandle(
  [in] LONG_PTR lNotifyHandle
);

Parâmetros

[in] lNotifyHandle

Um valor que especifica um identificador fornecido pelo console durante uma chamada IExtendPropertySheet2::CreatePropertyPages .

Retornar valor

Essa função de retorno de chamada pode retornar um desses valores.

Comentários

O identificador para a notificação é passado para o snap-in por meio de uma chamada para o método IExtendPropertySheet2::CreatePropertyPages . Se o snap-in retornar um código de êxito (S_OK, S_FALSE) desse método, o snap-in deverá chamar MMCFreeNotifyHandle. Se o snap-in retornar um código de erro, o MMC liberará imediatamente o identificador.

O snap-in pode liberar o identificador a qualquer momento, pois o MMC não usa o identificador depois de ser dado ao snap-in. O snap-in só deve chamar MMCFreeNotifyHandle uma vez e não deve usar o identificador em uma chamada MMCPropertyChangeNotify depois de ser liberado.

Lembre-se de que o snap-in só deve chamar MMCFreeNotifyHandle se o método IExtendPropertySheet2::CreatePropertyPages for chamado. O MMC não chamará IExtendPropertySheet2::CreatePropertyPages se o snap-in usar IPropertySheetCallback para adicionar páginas de propriedades e, em seguida, chamar IPropertySheetProvider::AddPrimaryPages com um primeiro parâmetro NULL . Chamar AddPrimaryPages dessa forma informa ao MMC que as páginas já foram adicionadas, portanto, não é necessário chamar o método IExtendPropertySheet2::CreatePropertyPages do snap-in. Para obter mais informações, consulte Adicionando páginas do assistente: detalhes da implementação.

A lista a seguir contém cenários que ilustram situações em que o snap-in pode chamar MMCFreeNotifyHandle:

  • Em IExtendPropertySheet2::CreatePropertyPages, o snap-in não adiciona nenhuma página de propriedade. Se CreatePropertyPages não retornar um resultado de erro, o snap-in poderá chamar MMCFreeNotifyHandle antes de retornar. Caso contrário, o MMC liberará o identificador.
  • Em IExtendPropertySheet2::CreatePropertyPages, o snap-in adiciona páginas de propriedades, mas não passa o identificador para as páginas. Novamente, se CreatePropertyPages não retornar um resultado de erro, o snap-in poderá chamar MMCFreeNotifyHandle antes de retornar.
  • Em IExtendPropertySheet2::CreatePropertyPages, o snap-in adiciona páginas de propriedades e também passa o identificador para as páginas. No entanto, as páginas de propriedades não chamam MMCPropertyChangeNotify. Nesse caso, o snap-in pode chamar MMCFreeNotifyHandle no destruidor das páginas de propriedades ou antes de retornar (sem um resultado de erro) de CreatePropertyPages.
  • Em IExtendPropertySheet2::CreatePropertyPages, o snap-in adiciona páginas de propriedades e também passa o identificador para as páginas. As páginas de propriedades chamam MMCPropertyChangeNotify. Nesse caso, o snap-in deve chamar MMCFreeNotifyHandle no destruidor das páginas de propriedades. Lembre-se de que chamar MMCFreeNotifyHandle no manipulador de notificação MMCN_PROPERTY_CHANGE do snap-in não é recomendado, pois várias páginas podem enviar notificações ou a mesma página pode enviar várias notificações (uma vez que o usuário clica no botão Aplicar ).

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista
Servidor mínimo com suporte Windows Server 2008
Plataforma de Destino Windows
Cabeçalho mmc.h

Confira também

Icomponent

IExtendPropertySheet2::CreatePropertyPages

MMCPropertyChangeNotify