Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este tópico descreve como inicializar o gerenciador de assinaturas para uso com um documento XPS.
Antes de utilizar os seguintes exemplos de código no seu programa, leia a declaração de exoneração de responsabilidade em Common Digital Signature Programming Tasks.
Para utilizar as funcionalidades do Windows 7 da Cripto-API, defina o símbolo CRYPT_OID_INFO_HAS_EXTRA_FIELDS da seguinte maneira:
#define CRYPT_OID_INFO_HAS_EXTRA_FIELDS
Em seguida, instancie uma interfaceIXpsSignatureManager 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 interfaceIXpsSignatureManager tiver sido instanciada e um documento XPS tiver sido carregado, o gerenciador de assinaturas estará pronto para uso.
Tópicos relacionados
-
Próximos passos
-
Utilizados Nesta Secção
-
Para mais informações