API .Net HSM Dinamo
API Proprietária .Net do HSM Dinamo
spb_file_cip.cs

Exemplo de uso da API SPB (Sistema de Pagamentos Brasileiro) utilizando arquivos.

Veja Nota sobre os exemplos.
using System;
using System.IO;
using Dinamo.Hsm;
namespace SPBEncodeDecodeCIPFile
{
class Program
{
static void Main(string[] args)
{
string address = "10.0.0.1";
string user = "usuario";
string pass = "12345678";
DinamoClient din = new DinamoClient();
//Conecta ao HSM
din.Connect(address, user, pass);
string srcISPB = "12345678";
string dstISPB = "12345678";
try
{
//Nome do arquivo original.
string clearTextFileName = @"c:\tmp\teste.txt";
//Nome do arquivo que conterá o arquivo original codificado.
string encodedFileName = @"c:\tmp\teste_encoded.txt";
//Nome do arquivo que conterá a mensagem decodificada.
string decodedFileName = @"c:\tmp\teste_decoded.txt";
/*
* Faz o encode do arquivo.
*/
FileStream clearTextFile = File.OpenRead(clearTextFileName);
FileStream outEncodedFile = File.OpenWrite(encodedFileName);
din.SPBEncode( srcISPB,
dstISPB,
clearTextFile,
outEncodedFile,
0x00,
0x00,
DinamoApi.ND_SPB_USE_CIP1);
outEncodedFile.Close();
clearTextFile.Close();
Console.WriteLine("Arquivo codificado com sucesso.");
/*
* Faz o decode do arquivo gerado pela operação de encode.
*/
FileStream inEncodedFile = File.OpenRead(encodedFileName);
FileStream outDecodedFile = File.OpenWrite(decodedFileName);
din.SPBDecode( dstISPB,
srcISPB,
inEncodedFile,
outDecodedFile,
false,
false,
DinamoApi.ND_SPB_OUT_NO_PADDING |
DinamoApi.ND_SPB_USE_ANY);
inEncodedFile.Close();
outDecodedFile.Close();
Console.WriteLine("Arquivo decodificado com sucesso.");
}
catch (DinamoException e)
{
Console.WriteLine(e.ErrorCode);
Console.WriteLine(e.Message);
}
finally
{
din.Disconnect();
}
}
}
}
Namespace que denota um conjunto de funções para acesso ao HSM Dinamo e suas respectivas exceptions.
Definition: DinamoClient.cs:12
Definition: DinamoClient.cs:12