Instalar um arquivo de catálogo usando CryptCATAdminAddCatalog

Um programa de instalação pode usar CryptCATAdminAddCatalog e outras funções de criptografia CryptCATAdminXxx para instalar programaticamente um arquivo de catálogo no banco de dados de componentes do sistema e drivers.

O programa de instalação deve usar o SDK (Software Development Kit) Microsoft Windows para Windows 7 e .NET Framework 4.0 da seguinte maneira:

  • Os arquivos de origem do programa de instalação devem incluir os seguintes arquivos de cabeçalho (.h):

    • Mscat.h, que define os protótipos e estruturas para as várias funções CryptCATAdminXxx .
    • Softpub.h, que define as várias estruturas de dados e GUIDs que são usadas pelas funções CryptCATAdminXxx .
  • O programa de instalação deve vincular-se a Wintrust.lib.

Para usar essas funções de criptografia CryptCATAdminXxx , um programa de instalação faz o seguinte:

  1. Chama CryptCATAdminAcquireContext para obter um identificador para um contexto de administrador de catálogo. O aplicativo identifica o subsistema definindo o parâmetro de entrada pgSubsystem como um ponteiro para o GUID DRIVER_ACTION_VERIFY. Esse GUID é definido em Softpub.h.

  2. Chama CryptCATAdminAddCatalog para adicionar o arquivo de catálogo ao banco de dados de componentes do sistema e drivers. O programa de instalação fornece o identificador para o contexto de administrador do catálogo obtido na etapa 1, um ponteiro para o caminho totalmente qualificado do arquivo de catálogo e um ponteiro para o nome do arquivo de catálogo que a função usa para instalar uma cópia do arquivo de catálogo no banco de dados. A função retorna um identificador para o contexto de informações do catálogo do arquivo de catálogo que foi adicionado ao banco de dados.

  3. Chama CryptCATAdminReleaseCatalogContext para liberar o handle para o contexto de informações do catálogo do arquivo de catálogo. O programa de instalação fornece o handle para o contexto de administrador do catálogo obtido na etapa 1 e o handle para o contexto de informações do catálogo que foi retornado na etapa 2.

  4. Chama CryptCATAdminReleaseContext para liberar o manipulador do contexto do administrador de catálogo. O aplicativo fornece o handle para o contexto de administrador do catálogo obtido na etapa 1.