Freigeben über


SignEventObject-Schnittstelle

Ein Ereignisobjekt, das während des OnSign-Ereignisses verwendet wird.

 

Namespace: Microsoft.Office.Interop.InfoPath.SemiTrust
Assembly: Microsoft.Office.Interop.InfoPath.SemiTrust (in microsoft.office.interop.infopath.semitrust.dll)

Syntax

<CoClassAttribute(GetType(SignEventObjectWrapper))> _
<GuidAttribute("096cd71d-0786-11d1-95fa-0080c78ee3bb")> _
<CLSCompliantAttribute(False)> _
Public Interface SignEventObject
    Inherits SignEvent, DocReturnEvent, DocEvent

Dim instance As SignEventObject
[CoClassAttribute(typeof(SignEventObjectWrapper))] 
[GuidAttribute("096cd71d-0786-11d1-95fa-0080c78ee3bb")] 
[CLSCompliantAttribute(false)] 
public interface SignEventObject : SignEvent, DocReturnEvent, DocEvent

Hinweise

Dies ist ein Wrappertyp für eine Coklasse, die für den verwalteten Code der COM-Interoperabilität erforderlich ist. Verwenden Sie diesen Typ zum Zugreifen auf die Member der COM-Schnittstelle, die von der Coklasse implementiert wurden. Informationen zur COM-Schnittstelle, einschließlich eines Links zu den Memberbeschreibungen, finden Sie unter SignEvent.

Verwenden Sie die SignedDataBlock-Eigenschaft des SignedDataBlockObject-Objekts, um zu bestimmen, welche signierbare Datengruppe das OnSign-Ereignis auslöst. Das OnSign-Ereignis wird nur für vollständig vertrauenswürdige Formularvorlagen ausgelöst.

Beispiel

Im folgenden Beispiel wird das SignEvent-Objekt verwendet, um einem SignedDataBlockObject-Objekt eine Signatur und einen Zeitstempel hinzuzufügen:

[InfoPathEventHandler(EventType=InfoPathEventType.OnSign)]
public void OnSign(SignEvent e)
{
    Signature signature = e.SignedDataBlock.Signatures.Create();
    signature.Sign();
    // Countersign the signature with a trusted timestamp.
    // Get the XML node storing the signature block.
    IXMLDOMNode oNodeSig = signature.SignatureBlockXmlNode;
    IXMLDOMNode oNodeSigValue = oNodeSig.selectSingleNode(".//*[local-name(.)=’signatureValue’]");
    // Get time stamp from timestamp service (fictitious).
    MyTrustedTimeStampingService s = new MyTrustedTimeStampingService();
    string strVerifiedTimeStamp = s.AddTimeStamp(oNodeSigValue.text);
 
    //Add the value returned from the timestamping service to the 
    //unsigned part of the signature block.
    IXMLDOMNode oNodeObj = oNodeSig.selectSingleNode(".//*[local-name(.)=’Object’]");
    IXMLDOMNode oNode = oNodeObj.cloneNode(false);
    oNode.text = strVerifiedTimeStamp;
    oNodeObj.parentNode.appendChild(oNode);
    e.ReturnStatus = true;
}

Siehe auch

Referenz

SignEventObject-Member
Microsoft.Office.Interop.InfoPath.SemiTrust-Namespace