Ver Mensaje Individual
  #11  
Antiguo 09-07-2024
fercapfor fercapfor is offline
Registrado
 
Registrado: mar 2015
Posts: 1
Reputación: 0
fercapfor Va por buen camino
Cita:
Empezado por razorxxx Ver Mensaje
Nada, olviden lo anterior. Seguía dando problemas para conectar, porque faltaba asignarle el certificado al objeto HTTPReqResp, parece ser que me estaba cogiendo el primero que veía en el almacén de certificados.

Pero lo he solucionado. Todo es más fácil de lo que pensaba.

El método
Código Delphi [-]
HTTPRIOHTTPWebNode1BeforePost(const HTTPReqResp: THTTPReqResp; Client: THTTPClient)
debe quedar así:

Código Delphi [-]
var
   CertStream: TMemoryStream;
begin
     CertStream := TMemoryStream.Create;
     CertStream.LoadFromFile(Cert.Text);
     HTTPReqResp.ClientCertificate.Stream := CertStream;
     HTTPReqResp.ClientCertificate.Password := Pwd.Text;
end;

Ahora ya puedo seleccionar el certificado que quiera antes de cualquier petición y prescindir de la librería CAPICOM.

Saludos.
Hola razorxxx, grácias por los aportes.
El ejemplo que indicas no me funciona en Delphi 10.4 ya que ClientCertificate no tiene la propiedad 'Stream' ni tampoco 'Password'.
He intentado sobreescribir el fichero 'Soap.SOAPHTTPTrans.pas' con una versión de Delphi 11.......y sigue sin funcionar.
Hay que modificar algo más ?
Grácias
Responder Con Cita