In Delphi mache ich das mit der Komponente HTTPRIO - müsste ja in C++ fast genauso sein. In dem Ereignis BeforeExecute kann man den ganzen Stream so basteln, wie man Lust hat... Ist nicht besonders elegant; funktioniert aber.
Delphi-Quellcode:
procedure TForm1.HTTPRIO1BeforeExecute(
const MethodName:
string; SOAPRequest: TStream);
begin
with TStringList.Create
do
try
SOAPRequest.Position:=0; LoadFromStream(SOAPRequest, TEncoding.UTF8);
Text:=StringReplace(Text, '
<SOAP-ENV:Body>', '
<SOAP-ENV:Header>und mein ganzer Header-Kram kommt hier rein'+'
</SOAP-ENV:Header><SOAP-ENV:Body>', [rfReplaceAll]);
SOAPRequest.Position:=0; SOAPRequest.Size:=0;
SaveToStream(SOAPRequest, TEncoding.UTF8);
finally Free;
end;
end;
Vielen Dank für deine Hilfe.
Ich konnte den Request damit entsprechend anpassen, dass es funktioniert.