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 |