IOpcDigitalSignatureEnumerator::GetCurrent method (msopc.h)
Gets the IOpcDigitalSignature interface pointer at the current position of the enumerator.
Syntax
HRESULT GetCurrent(
[out, retval] IOpcDigitalSignature **digitalSignature
);
Parameters
[out, retval] digitalSignature
An IOpcDigitalSignature interface pointer.
Return value
The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.
Return code/value | Description |
---|---|
|
The method succeeded. |
|
The partReference parameter is NULL. |
|
The enumerator is invalid because the underlying set has changed. |
|
The enumerator cannot perform this operation from its current position. |
|
The signature markup contains more than one Reference element that refers to the package Object element, but only one such Reference is allowed. |
|
The signature markup contains more than one SignatureProperty element that has the same Id attribute. |
|
A Reference element in the signature markup indicates an object that is external to the package. Reference elements must point to parts or Object elements that are internal. |
|
An unsupported canonicalization method was requested or used in a signature. |
|
A Signature part does not contain the signature markup for exactly one signature. |
|
The signature markup in a Signature part does not conform to the schema specified in the OPC or XML-Signature Syntax and Processing (http://www.w3.org/TR/xmldsig-core/). |
|
A relationships transform must be followed by a canonicalization method. |
|
The signature markup is missing a Reference to the package-specific Object element. |
|
The signature markup does not specify signature method algorithm. |
|
The specified Signature part does not exist in the package. |
|
The SignatureProperties element was not found in the signature markup. |
|
The SignatureProperty child element of the SignatureProperties element was not found. |
|
The SignatureProperty element with the Id attribute value of "idSignatureTime" does not exist or is not correctly constructed. |
|
More than one relationships transform is specified for a Reference element, but only one relationships transform is allowed. |
|
The URI attribute value of a Reference element in the signature markup does not include the content type of the referenced part. |
|
The URI attribute is required for a Reference element but is missing. |
|
Either the content type of a part differed from the expected content type (specified in the OPC, ECMA-376 Part 2), or the part content did not match the part's content type. |
Remarks
When an enumerator is created, the current position precedes the first pointer. To set the current position to the first pointer of the enumerator, call the MoveNext method after creating the enumerator.
Thread Safety
Packaging objects are not thread-safe.
For more information, see the Getting Started with the Packaging API.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 7 [desktop apps only] |
Minimum supported server | Windows Server 2008 R2 [desktop apps only] |
Target Platform | Windows |
Header | msopc.h |
See also
Getting Started with the Packaging API
IOpcDigitalSignatureEnumerator
Overviews
Packaging API Programming Guide
Packaging Digital Signature Interfaces
Reference