jeze ha scritto:
in alcuni casi nell'estrazione dell'allegato
Sperando di essere utile a qualcuno, nel frattempo ho aggiunto una piccola modifica al codice di nicola, in particolare in alcuni file in base64 sembra ci siano degli spazi di troppo, quindi ho semplicemente aggiunto anche un controllo su quello:
Function ToglieACapo(Const Base:string):string;
Var
i, j,q : integer;
begin
i := Pos(#13, Base);
j := Pos(#10, Base); //ho beccato un allegato con solo LF
q := Pos(#32, Base); //spazi?
if (i = 0) and (j = 0) and (q=0) then begin
Result := Base;
Exit;
end;
SetLength(Result, Length(Base));
j := 0;
for i := 1 to Length(Base) do begin
if Ord(Base[i]) > 32 then begin//molto brutale...
Inc(j);
Result[j] := Base[i];
end;
end;
SetLength(Result, j);
end; //ToglieACapo
Non ho ancora capito invece come mai alcuni file p7m, nel tentativo di OpenSSL di aprire il file usando la classe TPKCS7, fallisce con "Unable to read PKCS7 file".