![]() |
| VB 4/6- und VBA-Forum - Beitragsübersicht - |
|
| Von |
petere |
| E-Mail |
sdeltaw@gmx.de |
| Datum |
22. Januar 2015 um 20:26:41 |
| Frage |
Hallo,
ich habe eine eigene Anwendung, die auf zwei Arten Daten an eine XML-Schnittstelle schickt und dann die Ergebnisse auswertet. Unter Windows XP und Windows 2008 R2 läuft das super. Jetzt habe ich die Anwendung unter Windows 2012 R2 getestet.
Problem ist, dass dort die ganze Anwendung einfach abstürzt. Es heißt dann "importIT" funktioniert nicht mehr und das wars. Im Eventlog weist die Meldung auf ein Netzwerkproblem hin (könnte sein, Windows2012R2 hat laut Internet manchmal eine verzögerte Netzwerkverbindung wenn es virtuell läuft).
1) Kann ich diesen Fehler irgendwie finden / abfangen / vermeiden, also auch dann, wenn die Netzwerkverbindung etwas latent läuft?
2) Verwende ich die richtigen Komponenten für den XML-Transfer?
Danke für Eure Tipps.
Variante 1Public Function callWebAPI() As Boolean Dim objDom As Object Dim objXmlHttp As Object Dim strRet As String callWebAPI = False Dim xmlXMLtext, getXMLAdress As String xmlXMLtext = "<?xml version=""1.0"" encoding=""iso-8859-1""?><DATA><ACTION><Do>Vorgang1</Do></ACTION><LOGDATA><login>usr</login><pwd>123</pwd></LOGDATA></DATA>" getXMLAdress = "https://www.mydomain.com/send.asp" On Error GoTo errHandler01 ' Create objects To DOMDocument And XMLHTTP Set objDom = CreateObject("MSXML2.DOMDocument") Set objXmlHttp = CreateObject("MSXML2.XMLHTTP") ' Load XML objDom.async = False objDom.loadXML xmlXMLtext 'Open the webservice objXmlHttp.Open "POST", getXMLAdress, False objXmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" objXmlHttp.setRequestHeader "Encoding", "UTF-8" objXmlHttp.send ("name=" & UrlEncode(objDom.xml)) ' Get all response text from webservice strRet = objXmlHttp.responseBody Set objXmlHttp = Nothing Set objDom = Nothing callWebAPI = True '// Fehlerbehandlung XML Exit Function errHandler01: MsgBox "Es steht kein Internetzugang zur Verfügung!" & vbCrLf & "Wiederholen Sie diese Aktion später, es wurde NICHTS geändert!" & vbCrLf & vbCrLf & "Internet-Fehler i-2: " & Err.Description, vbCritical + vbOKOnly, "Fehler" callWebAPI = False Err.Clear Exit Function End Function Variante 2Public Function runXMLscript1 As Boolean runXMLscript1 = False Dim start As Variant Dim vartmp As Variant Dim strLogdataXML As String Dim strDebugcodeXML As String Dim strXMLout As String start = Timer strXMLurl = "https://www.mydomain.com/send.asp" strXMLout = "<?xml version=""1.0"" encoding=""iso-8859-1""?><DATA><ACTION><Do>Vorgang1</Do></ACTION><LOGDATA><login>usr</login><pwd>123</pwd></LOGDATA></DATA>" 'XML an Schnittstelle senden Set XMLHTTP = CreateObject("Msxml2.ServerXMLHTTP.3.0") With XMLHTTP .Open "POST", strXMLurl, False .setTimeouts 5000, 5000, 8000, 300000 .setRequestHeader "Content-Type", "application/x-www-form-urlencoded" .setRequestHeader "Encoding", "UTF-8" .send ("name=" & UrlEncode(strXMLout)) End With Call LogfileIntranet("SEND", "", "GetAll2 gesendet", LoginUsername, "1") vartmp = XMLHTTP.responseBody Dim objRS, objOrderNodes, objOrderNode As Variant Dim objXML As Variant Set objXML = XMLHTTP.responseXML objXML.loadXML (vartmp) If (objXML.parseError.errorCode <> 0) Then MsgBox "err113-002: XML-Parse-Fehler" & objXML.parseError.reason & " '" & objXML.parseError.srcText & "' " & " Zeile: " & objXML.parseError.Line & ", Zeichen: " & objXML.parseError.linepos, vbCritical, "XML-Rückgabefehler, Syntax nicht richtig" runXMLscript1 = True End Function |
|
| [ Antwort schreiben | Zurück zum VB 4/6- und VBA-Forum | Forum-Hilfe ] |
|
|
| Letzte Aktualisierung: Sonntag, 13. Dezember 2015 |
|