Inicializar o Gerenciador de Assinaturas
Este tópico descreve como inicializar o gerenciador de assinaturas para uso com um documento XPS.
Antes de usar os exemplos de código a seguir em seu programa, leia o aviso de isenção de responsabilidade em Tarefas comuns de programação de assinatura digital.
Para usar os recursos do Windows 7 da API de Criptografia, defina o símbolo CRYPT_OID_INFO_HAS_EXTRA_FIELDS da seguinte maneira:
#define CRYPT_OID_INFO_HAS_EXTRA_FIELDS
Em seguida, instancie uma interface IXpsSignatureManager chamando CoCreateInstance, conforme mostrado no exemplo de código a seguir.
IXpsSignatureManager *newInterface;
// Note the implicit requirement that CoInitializeEx
// has previously been called from this thread.
hr = CoCreateInstance(
__uuidof(XpsSignatureManager),
NULL,
CLSCTX_INPROC_SERVER,
__uuidof(IXpsSignatureManager),
reinterpret_cast<LPVOID*>(&newInterface));
// make sure that you got a pointer
// to the interface
if (SUCCEEDED(hr)) {
// Load document into signature manager from file.
// xpsDocument is initialized with the file name
// of the document to load outside of this example.
hr = newInterface->LoadPackageFile (xpsDocument);
// Use newInterface
// Release interface pointers when finished with them
newInterface->Release();
}
A interface instanciada por CoCreateInstance pode ser usada por apenas um documento XPS, que deve ser carregado chamando LoadPackageFile ou LoadPackageStream antes de chamar qualquer outro método.
Depois que a interface IXpsSignatureManager tiver sido instanciada e um documento XPS tiver sido carregado, o gerenciador de assinaturas estará pronto para uso.
Tópicos relacionados
-
Próximas Etapas
-
Usado nesta seção
-
Para obter mais informações