CryptoSys Home > FirmaSAT > Support

Support for FirmaSAT


How to Get Technical Support

Please read the Troubleshooting and FAQ pages first, and see How to check error messages below.
For support, please send details of your problem using our contact page.

Please tell us at least:

  • The version of FirmaSAT you are using (see below)
  • The programming language you are using (VB6, C#, command-line, etc)
  • The exact error message you are getting.
  • A line (or two) of code where the error occurs.
IMPORTANT: check your XML file first
If you have a problem with a specific file, open a command prompt and check it as follows:
FirmaSAT XMLOK myfile.xml
Then edit the file to fix any problems shown before contacting us.
Para el soporte, por favor envíe los detalles de su problema utilizando la página de contacto.

Por favor díganos al menos:

  • La versión de FirmaSAT está utilizando (ver abajo)
  • El lenguaje de programación que está utilizando (VB6, C#, la línea de comandos, etc)
  • El mensaje de error exacto que está recibiendo.
  • Una línea (o dos) de código donde ocurre el error.
IMPORTANTE: consulte su archivo XML primero
Si tiene un problema con un archivo específico, abra un símbolo del sistema y verifíquelo de la siguiente manera:
FirmaSAT XMLOK miarchivo.xml
Luego edite el archivo para solucionar cualquier problema que se muestre antes de contactarnos.

We will gladly respond to "quick" support questions via email using the above contact page, but please read the Troubleshooting and FAQ pages first. We reserve the right to charge for our time for more detailed programming issues or for problems not caused by our software. Note that the fee paid for the licence is purely for the licence and the right to download the software.

What version of FirmaSAT?

Please tell us the version number of the core diFirmaSAT2.dll library you are using. The latest version is latest version number.

Use the Start menu: Start > All Programs > FirmaSAT > FirmaSAT-open, then type FirmaSAT LIBINFO.

> firmasat
FirmaSAT.exe v10.50.0 (Mar 12 2022 21:46:32).
--Using core diFirmaSAT2.dll version 105023 (Oct  6 2022 18:19:29)

> firmasat LIBINFO
FirmaSAT.exe Version v10.50.0 (Mar 12 2022 21:46:32). <==IGNORE THIS|IGNORA ESTO
Library diFirmaSAT2:
  Version: 105023  <==THIS NUMBER|ESTE NÚMERO
  Module:   C:\WINDOWS\SYSTEM32\diFirmaSAT2.dll
  Platform: Win32
  Compiled: Oct  6 2022 18:19:29
  Licence:  D
  Comments: Licensed Developer Edition | Edicion de Desarrollador Licenciado.

In a program, use the SAT_Version function or the General.Version Method.

How to check error messages

  1. Use the SAT_LastError function or Sat.LastError method to retrieve more details of the error (may be empty for some errors).
  2. If the function has returned a nonzero error code, use the SAT_ErrorLookup function or Sat.LastError method to display an explanation.
Example code in C#:
using FirmaSAT;

Console.WriteLine("VERSION=" + General.Version());
// Method that returns a string|Método que devuelve una cadena
string s = Sat.QueryCert(@"C:\Test\missingfile", Query.notAfter);
if (s.Length == 0) {
    Console.WriteLine("ERROR: " + General.LastError());
}

// Method that returns an `int`|Método que devuelve un `int`
int n = Sat.SignXml("signed.xml", "missing.xml", "badkeyfile.key", "password", "bad.cer");
if (n != 0) {
    Console.WriteLine("ERROR: " + General.ErrorLookup(n) + ": " + General.LastError());
}
Example code in C:
#include "diFirmaSat2.h"

static void disp_error(long nErrCode)
{   // Print details of last error to stdout|Imprimir detalles del último error a stdout
    char msg[SAT_MAX_ERROR_CHARS+1];
    long nchars;

    printf("Error code %ld", nErrCode);

    nchars = SAT_ErrorLookup(msg, sizeof(msg)-1, nErrCode);
    if (nchars > 0)
        printf(": %s", msg);

    nchars = SAT_LastError(msg, sizeof(msg)-1);
    if (nchars > 0)
        printf(" : %s", msg);
    putchar('\n');
}
Example code in VBA/VB6:
' Return string containing details of the last error|Volver cadena que contiene detalles del último error
Public Function ErrorDetails(nErrCode As Long) As String
    Dim strErrMsg As String * SAT_MAX_ERROR_CHARS
    Dim nChars As Long

    If (nErrCode <> 0) Then
        ErrorDetails = "ERROR: " & nErrCode & ": " & satErrorLookup(nErrCode)
        ' Get last error, if it exists|Obtener el último error, si existe
        nChars = SAT_LastError(strErrMsg, Len(strErrMsg))
        If nChars > 0 Then
            ErrorDetails = ErrorDetails & ": " & Left(strErrMsg, nChars)
        End If
    End If
End Function

This page last updated 8 June 2024