Suporte para contextos de ativação no estado do módulo de MFC

MFC cria um contexto de ativação usando um recurso de manifesto fornecido pelo módulo de usuário.Para obter mais informações sobre como contextos de ativação são criados, consulte os seguintes tópicos:

Comentários

Ao ler essas Windows SDK tópicos, observe que o mecanismo de contexto de ativação de MFC se assemelha a Windows SDK contexto de ativação, exceto que MFC não usa o Windows SDK API de contexto de ativação.

Contexto de ativação funciona em aplicativos MFC, DLLs de usuário e DLLs de extensão das seguintes maneiras:

  • Aplicativos MFC usam o recurso ID 1 para o recurso de manifesto.Nesse caso, o MFC não cria seu próprio contexto de ativação, mas usa o contexto do aplicativo padrão.

  • Usuário MFC DLLs usar recursos ID 2 para o recurso de manifesto.Aqui, MFC cria um contexto de ativação para cada DLL de usuário para que outro usuário DLLs possa usar versões diferentes da mesmas bibliotecas (por exemplo, a biblioteca de controles comuns).

  • DLLs de extensão do MFC dependem de seus aplicativos ou um usuário DLLs hospedagem para estabelecer o contexto de ativação.

Embora o estado de contexto de ativação pode ser modificado usando os processos descritos em Using the Activation Context API, usando o mecanismo de contexto de ativação do MFC pode ser útil durante o desenvolvimento de arquiteturas de plug-in baseado em DLL onde ele não é fácil (ou não é possível) para comutador manualmente o estado de ativação antes e depois chamadas individuais para externos plug-ins.

O contexto de ativação é criado no AfxWinInit. Destruí-la no AFX_MODULE_STATE destruidor. Um identificador de contexto de ativação é mantido em AFX_MODULE_STATE. (AFX_MODULE_STATE é descrito em AfxGetStaticModuleState.)

The AFX_MANAGE_STATE macro ativa e desativa o contexto de ativação. sistema autônomo de Visual C++ 2005, o comportamento do AFX_MANAGE_STATE foi alterado no que ele está ativado para bibliotecas MFC estáticas, bem sistema autônomo DLLs MFC, para permitir executar no contexto de ativação apropriado selecionado pela DLL de usuário de códigos do MFC.

Consulte também

Referência

Activation Contexts

Application Manifests

Assembly Manifests

AfxWinInit

AfxGetStaticModuleState

AFX_MANAGE_STATE