AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Problem mit MSXML Httprequest.send
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit MSXML Httprequest.send

Ein Thema von TigerLilly · begonnen am 20. Mär 2018 · letzter Beitrag vom 23. Mär 2018
Antwort Antwort
Seite 1 von 2  1 2      
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.203 Beiträge
 
Delphi 11 Alexandria
 
#1

Problem mit MSXML Httprequest.send

  Alt 20. Mär 2018, 10:21
Das ist eine Legacy-Anwendung mit Delphi 2006. Sie greift auf die MS Azure Translator API zu. Das hat seit gut 1 Jahr problemlos funktioniert + jetzt nicht mehr.

Es geht um diesen Code:
Code:
var
  XMLHTTPRequest: IXMLHTTPRequest;
  XMLDOMDocument: IXMLDOMDocument;
begin
  try
    XMLHTTPRequest := CreateOleObject('MSXML2.XMLHTTP') as IXMLHTTPRequest;
    if (sActiveToken = '') or (Now - dtTokenDate >= n10min) then begin
      dtTokenDate := Now;
      XMLHTTPRequest.Open('POST', URIToken, False, '', '');
      XMLHTTPRequest.setRequestHeader('Ocp-Apim-Subscription-Key', SubscriptionKey);
      XMLHTTPRequest.send('');
      if (XMLHTTPRequest.readyState = COMPLETED) and (XMLHTTPRequest.status = OK) then
      begin
        sActiveToken := XMLHTTPRequest.responseText;
      end else begin
        sActiveToken := '';
      end;
    end;

    Uri := UriTranslate + '?appid=Bearer%20' + sActiveToken + '&text=' +
      sText + '&from=' + sFrom + '&to=' + sTo;
    XMLHTTPRequest.Open('GET', URI, False, '', '');
    XMLHTTPRequest.send('');
Open wird ein Token angefordert, der ist immer 10 Minuten gültig. Das funktioniert. Unten wird mit dem Token eine Abfrage-URL erzeugt. Das OPEN funktioniert. Beim SEND wird eine Exception geworfen mit "'Systemfehler: -2146697208'". Das SEND ist eine Methode aus der MSXML.

Hat jemand eine Ahnung, was da schief gehen könnte?

Danke für Eure Tipps!
  Mit Zitat antworten Zitat
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.203 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Problem mit MSXML Httprequest.send

  Alt 20. Mär 2018, 10:32
Ergänzung: Das ist sowohl auf meiner Entwicklungsmaschine so (XP) , als auch beim Kunden (Win 10).

Und eben auf einem Win 8 Rechner getestet, da funktioniert das. Muss wohl was mit der MSXML.DLL zu tun haben.

Geändert von TigerLilly (20. Mär 2018 um 10:34 Uhr)
  Mit Zitat antworten Zitat
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.203 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Problem mit MSXML Httprequest.send

  Alt 20. Mär 2018, 11:28
Code:
CLASS_XMLHTTPRequest: TGUID = '{ED8C108E-4349-11D2-91A4-00C04F7969E8}';
...
class function CoXMLHTTPRequest.Create: IXMLHttpRequest;
begin
  Result := CreateComObject(CLASS_XMLHTTPRequest) as IXMLHttpRequest;
end;
Die Registry sagt dazu: msxml3.dll. Auf dem Entwicklungsrechner v3 SP10 (da geht es nicht).
Auf dem Testrechner v3 SP11 (da geht es).

Mal sehen, ob es für die v3 ein SP 11 zum downloaden gibt.

Aber die Frage ist: Warum funktioniert das auf meinem Entwicklungsrechner nicht mehr?
  Mit Zitat antworten Zitat
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.203 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Problem mit MSXML Httprequest.send

  Alt 21. Mär 2018, 21:09
Das liegt wohl wirklich an der Version. Hmm - weiß jemand, wie man die MSXML3.dll updaten kann?
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Problem mit MSXML Httprequest.send

  Alt 21. Mär 2018, 21:36
Nur ein Versuch:
XMLHTTPRequest.send(''); mit XMLHTTPRequest.send(); ersetzen. Was passiert?
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Problem mit MSXML Httprequest.send

  Alt 21. Mär 2018, 21:44
Das liegt wohl wirklich an der Version. Hmm - weiß jemand, wie man die MSXML3.dll updaten kann?
https://support.microsoft.com/de-de/...msxml-versions
Markus Kinzler
  Mit Zitat antworten Zitat
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.203 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Problem mit MSXML Httprequest.send

  Alt 22. Mär 2018, 09:52
@KodeZwerg:
Das geht so nicht, weil:
procedure send(varBody: OleVariant); safecall;

Aber auch der Aufruf mit NULL als Parameter statt '' ändert nichts. Trotzdem danke.

@mkinzler:
Danke für den Link. MSXML3.DLL SP11 kommt da leider gar nicht vor + die weiterführenden Links landen im Nirwana.

Leider ist die Fehlermeldung 'Systemfehler: -2146697208' auch nicht recht hilfreich.
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.490 Beiträge
 
Delphi 7 Professional
 
#8

AW: Problem mit MSXML Httprequest.send

  Alt 22. Mär 2018, 10:13
Besagte MSXML3.DLL, gleicher Sytemfehler, aber vollkommen andere Ursache:

https://www.experts-exchange.com/que...-document.html
https://forums.iis.net/t/1237302.asp...rror+800c0008+
https://www.openkb.org/xml-download-...ce-has-failed/

Grobes Fazit: Der Server ist nicht erreichbar.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Problem mit MSXML Httprequest.send

  Alt 22. Mär 2018, 10:15
Gerade wegen dieser Zahl vermute ich dass das '' der Fehler ist, eventuel liegts ja auch an der Unit wo das "varBody: OleVariant" vorkommt (das die jetzige dll den typ nicht versteht)
Schau Dir mal den Export der DLL, da müsstest du den korrekten Aufruf entdecken können.
Gruß vom KodeZwerg

Geändert von KodeZwerg (22. Mär 2018 um 10:19 Uhr)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.490 Beiträge
 
Delphi 7 Professional
 
#10

AW: Problem mit MSXML Httprequest.send

  Alt 22. Mär 2018, 10:19
Wenn das '' der Fehler ist, müsste es aber überall so sein und nicht nur bei einigen Rechnern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz