次の方法で共有


SignEventObject インターフェイス

OnSign イベントで使用されるイベント オブジェクト。

 

名前空間: Microsoft.Office.Interop.InfoPath.SemiTrust
アセンブリ: Microsoft.Office.Interop.InfoPath.SemiTrust (microsoft.office.interop.infopath.semitrust.dll 内)

構文

'宣言
<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

コメント

この型は、COM 相互運用のためにマネージ コードで必要とされるコクラスのラッパーです。この型を使用して、このコクラスによって実装される COM インターフェイスのメンバにアクセスします。COM インターフェイスについては (このメンバの説明へのリンクを含む)、次を参照してください SignEvent

署名可能なデータ セットが OnSign イベントを発生させているかどうかを確認するには、SignedDataBlockObject オブジェクトの SignedDataBlock プロパティを使用します。OnSign イベントは、完全に信頼できるフォーム テンプレートでのみカスタマイズできます。

次の例では、SignEvent オブジェクトを使用して、SignedDataBlockObject オブジェクトに署名およびタイム スタンプを追加しています。

[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;
}

関連項目

参照

SignEventObject のメンバ
Microsoft.Office.Interop.InfoPath.SemiTrust 名前空間