J'ai migré une DLL ISAPI SOAP de Delphi 10 Seattle vers Delphi 10.1 Berlin Update 2.
Après la migration, une "Abstract Exception" est levée au moment de l'exécution.
Je constate que la classe "TWebRequest" dans "Web.HTTPApp.pas" nécessite
// Read count bytes from client
function ReadClient(var Buffer: TBytes; Offset: Integer; Count: Integer): Integer; overload; virtual; abstract;
function ReadClient(var Buffer; Count: Integer): Integer; overload; virtual; abstract;
Mais le "TISAPIRequest" de "Web.Win.IsapiHTTP" ne met pas en œuvre la première fonction.
Donc dans "Web.Win.IsapiHTTP", j'ai copié 3 paramètres ReadClient de la fonction 2 paramètres :
function TISAPIRequest.ReadClient(var Buffer: TBytes; Offset: Integer; Count: Integer): Integer;
begin
Result := Count;
if not ECB.ReadClient(ECB.ConnID, @Buffer, DWORD(Result)) then
Result := -1;
end;
L'exception "Abstract Error" disparaît mais l'erreur "Stream read error" est soulevée.
Avez-vous trouvé un problème similaire ?
Existe-t-il une solution de rechange ?