Ver Mensaje Individual
  #221  
Antiguo 01-10-2010
edgaronfo edgaronfo is offline
Miembro
 
Registrado: jul 2007
Posts: 33
Reputación: 0
edgaronfo Va por buen camino
Exclamation ayuda

Cita:
Empezado por nuk3zito Ver Mensaje
Así es... conozco las bondades que esto ofrece pues lo uso en C#. En los primeros post que puse en este hilo yo solicitaba que alguien me ayudara a realizar esta "transformación" en Delphi (de hecho está en la primer página) pero no tuve éxito, aunque aún me sirve (y mucho) tu aporte, ya solo me queda probar aunque no tengo dudas de que esto vaya a funcionar bien.

Ahora me estoy metiendo en la onda de CFDI, a ver como me va con eso.

Saludos.
No tengo dudas de que te va a funcionar perfectamente nuk3zito!

Por cierto amigos programadores, tengo un problemilla con la unidad Sello.pas que postearon en este hilo, ojalá me puedan ayudar.

Ya había preguntado sobre esto en mi primer post, pero sigo con eso, y es que por más que le muevo y le busco, no doy.

Mi problema esta en la función:
Código:
function GetNoCertificado(const AFileName: string): string;
var
  bp:   pBIO;
  fn:   PWideChar;
  x:    pX509;
  x509: pX509;
  bn:   pBIGNUM;
  num:  array [0..19] of char;
begin
  InitOpenSSL;
  fn := PWideChar(AnsiString(AFileName));
  bp := BIO_new(BIO_s_file());
  BIO_read_filename(bp, fn);
  x    := X509_new;
  x509 := PEM_read_bio_X509(bp, x, nil, nil);
  bn   := ASN1_INTEGER_to_BN(X509_get_serialNumber(x509), nil);
  BN_bn2bin(bn, @num[0]);
  BN_free(bn);
  X509_free(x509);
  BIO_free(bp);
  Result := num;
  EVP_cleanup;
end;
como podrán ver, el primer cambio que le tuve que hacer fue cambiar el tipo de la variable fn de PAnsiChar a PWideChar, esto es porque así me lo pide el delphi, pero de ahí en fuera todo esta igual.

Alguna sugerencia?

Gracias!
Responder Con Cita