Signature.Sign (Método)

Escribe el bloque de firma digital XML y computa el algoritmo hash cifrado para los datos firmados.

Espacio de nombres: Microsoft.Office.InfoPath
Ensamblado: Microsoft.Office.InfoPath (en microsoft.office.infopath.dll)

Sintaxis

Public MustOverride Sub Sign

Dim instance As Signature

instance.Sign
public abstract void Sign ()

Excepciones

Tipo de excepción Condición

InvalidOperationException

El código de formulario intentó escribir en el documento XML subyacente una vez que se había iniciado la firma.

SecurityException

La plantilla del formulario no está configurada para Plena confianza con la categoría Seguridad y confianza del cuadro de diálogo Opciones de formulario.

Comentarios

Sólo se puede llamar al método Sign desde un controlador de eventos para el evento Sign.

Sólo pueden tener acceso a este miembro los formularios abiertos desde una plantilla de formulario configurada para ejecutarse con plena confianza utilizando la categoría Seguridad y confianza del cuadro de diálogo Opciones de formulario. Este miembro requiere confianza plena en el llamador inmediato y no puede ser utilizado por un código con confianza parcial. Para obtener más información, vea "Using Libraries from Partially Trusted Code" en MSDN.

Se puede tener acceso a este tipo o miembro solamente desde un código ejecutado en formularios abiertos en Microsoft Office InfoPath 2007.

Ejemplo

En el siguiente ejemplo, se muestra el esqueleto del código que se añade a la plantilla de formulario cuando se agrega un controlador de eventos para el evento Sign. Primero, se usa el método CreateSignature de la clase SignatureCollection para crear un nuevo objeto Signature. A continuación, se llama al método Sign de la clase Signature para agregar el nuevo objeto Signature al objeto SignatureCollection del formulario sin mostrar el cuadro de diálogo Firmas digitales.

public void FormEvents_Sign(object sender, SignEventArgs e)
{
   // This event handler will run only in fully trusted form templates.

   Signature thisSignature = 
      e.SignedDataBlock.Signatures.CreateSignature();

   // To add other pieces of information to sign, modify the
   // signature template returned by
   // thisSignature.SignatureBlockXmlNode.
   // Write your code here.

   thisSignature.Sign();
   e.SignatureWizard = false;
}
Public Sub FormEvents_Sign(ByVal sender As Object, _
   ByVal e As SignEventArgs)

   ' This event handler will run only in fully trusted form templates.

   Dim thisSignature As Signature = _
      e.SignedDataBlock.Signatures.CreateSignature()

   ' To add other pieces of information to sign, modify the
   ' signature template returned by
   ' thisSignature.SignatureBlockXmlNode.
   ' Write your code here.

   thisSignature.Sign()
   e.SignatureWizard = False
End Sub

Vea también

Referencia

Signature (Clase)
Signature (Miembros)
Microsoft.Office.InfoPath (Espacio de nombres)