| 
| Autor | Beitrag |  
| OlafSt 
          Beiträge: 486
 Erhaltene Danke: 99
 
 Win7, Win81, Win10
 Tokyo, VS2017
 
 | 
Verfasst: Mo 09.10.17 13:18 
 
Hallo Freunde,
 ich habe hier ein merkwürdiges Problem. Ich verbinde mich mit einem Webservice via SOAP (kein REST). Ich rufe dann dort eine Routine auf, die mir ein JPG zurückgeben soll.
 Allerdings kommt nur ein kurzes Stück des JPG hier an. Es sollten 16KB sein, werden aber nur 7. Was mache ich in den 5 Zeilen falsch ?
 		                       Delphi-Quelltext 
 									| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 13:
 14:
 15:
 16:
 17:
 
 | procedure TForm1.GetFoto(SDAWNummer: string; Stelle: integer);var
 Soap: KR_BilderServerSOAP.ImageDBWSSoap;
 BildUID: string;
 B: TDynByteArray;
 begin
 
 Soap:=KR_BilderServerSOAP.GetImageDBWSSoap(true);       BildUID:=Soap.FindFirstImageByCriteria(SDAWNummer, IntToStr(Stelle));
 B:=Soap.Image_Load(BildUID, 260, 0);
 end;
 |  WSDL: plakatonline.eshambu.../ImageDBWS.asmx?wdsl Bin absolut ratlos   _________________ Lies, was da steht. Denk dann drüber nach. Dann erst fragen.
 |  |  |  
| Sinspin 
          Beiträge: 1335
 Erhaltene Danke: 118
 
 Win 10
 RIO, CE, Lazarus
 
 | 
Verfasst: Mo 09.10.17 13:44 
 
Hey,
 das wirkt als wäre da irgend ein Puffer zu klein geraten.
 Schau mal in die generierte tlb zur wsdl ob da Warnungen zu erzeugten Typen enthalten sind.
 Ansonsten versuch mal manuell einen Aufruf via Browser auszuführen und schau was an xml Daten geliefert wird.
 Die Daten werden ja meißtens Base64 codiert, es sollte also 1/3 mehr sein als die erwartet Größe. Dann weist Du zumindest ob alles kommt.
 
 €: Was passiert eigentlich wenn man den dritten Parameter in Image_Load nicht null lässt?
 _________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
 |  |  |  
| OlafSt  
          Beiträge: 486
 Erhaltene Danke: 99
 
 Win7, Win81, Win10
 Tokyo, VS2017
 
 | 
Verfasst: Mo 09.10.17 13:52 
 
In der Delphi-Codedatei findet sich folgendes:
 		                       Delphi-Quelltext 
 									| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 
 |                         					 |  Hab aber keinen Schimmer, was ich damit anfangen soll, geschweige denn wie ich das Problem lösen soll._________________ Lies, was da steht. Denk dann drüber nach. Dann erst fragen.
 |  |  |  
| Sinspin 
          Beiträge: 1335
 Erhaltene Danke: 118
 
 Win 10
 RIO, CE, Lazarus
 
 | 
Verfasst: Mo 09.10.17 14:24 
 
Sowohl die wsdl als auch die erzeugte tlb sieht bei mir nicht schlecht aus. 
Die Warnungen sind, glaube ich, nur Hinweise das einige Typen nicht eindeutig in ihrem Typ referenziert wurden und so einfach mit ihrem Namen lokal aufgelößt wurden. Scheint aber in allen Fällen geklapt zu haben. Es wird ja für "base64Binary" nach "TByteDynArray" übersetzt.
 
 Muss aber nichts heißen, die einzige plausibele Erklärung ist für mich aktuell das entweder die Daten schon verstümmelt kommen oder beim auspacken was drauf geht.
 Es gibt irgendwo in der Seifenkiste ein Ereignis mit dem man die Orginaldaten bekommen kann die geliefert werden. Die am besten mal anschauen.
 
 €: Seife -> THTTPRIO.OnAfterExecute.
 _________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
 |  |  |  
| OlafSt  
          Beiträge: 486
 Erhaltene Danke: 99
 
 Win7, Win81, Win10
 Tokyo, VS2017
 
 | 
Verfasst: Mo 09.10.17 15:14 
 
OnAfterExecute hatte ich auch schon ermittelt.
 Folgendes XML kommt zurück:
 		                       XML-Daten 
 									| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 
 | <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 <soap:Body>
 <Image_LoadResponse xmlns="http://tempuri.org/">
 <Image_LoadResult>/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAEEAXIDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDtQBgcDoO1Lgeg/KgdB9KK+LPqAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigAwPQflRgeg/KiigCFwN7cDr6UUP8Afb60UxEw6D6UUDoPpRSGFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAEL/AH2+tFD/AH2+tFMRMOg+lFA6D6UUhhRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQBC/wB9vrRQ/wB9vrRTETDoPpRQOg+lFIYUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAQv8Afb60UP8Afb60UxEw6D6UUDoPpRSGFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAEL/AH2+tFD/AH2+tFMRMOg+lFA6D6UUhhRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAf0qL7Vbf8/MH/AH9X/GvM/jLq93a2enabBK0cN1vkm2nG/bgAH25Jx9K4uP4baxJEkguLIB1DAGRu4z/drvo4KM6aqTna5x1MVKM3CEb2Pf8A7Vbf8/MH/f1f8aPtVt/z8wf9/V/xrwP/AIVnrP8Az82P/fxv/iaP+FZ6z/z82P8A38b/AOJrT6jQ/wCfv4f8Ej61V/59/ie/xyxSkiKWOQjqEcHH5U+vA7X4feIrG4We01C2gmXo8Uzqw/ELXe6JqXjSw2x6m+m6lCOrGRkl/wC+guD+IrGrg4xV4TT/AANKeJk9JxaO/qH7VbZI+0wZHBHmrx+tRW+o29wB83luf4XP9e9Y+v8AgbQfESs91ZiK5bpc2+EfPv2b8RXLGMea09Dok5WvDU3ftVt/z8wf9/V/xo+1W3/PzB/39X/GvGNS+DerwTsbC9tbm3/hL7kcfUYP6Gso/DLWgcG4sgR1Bdv/AImu+ODw8ldVfwOR4msnZ0/xPfPtVt/z8wf9/V/xo+1W3/PzB/39X/GvA/8AhWes/wDPzY/9/G/+Jo/4VnrP/PzY/wDfxv8A4mn9Rof8/fw/4IvrVX/n3+J759qtv+fmD/v6v+NSqyuoZGVlPQqcivn7/hWes/8APzY/9/G/+Jq94CudS8N/EKPQ3nDQzOYZ41YlCduQwz3HHP1pSwEORunO7SvsOOLlzJTha57pRRRXmncFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAEL/fb60UP99vrRTETDoPpRQOg+lFIYUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAeQfG3/j70X/rnL/Na621/48rf/rkn/oIrkvjb/wAfei/9c5f5rXW2v/Hlb/8AXJP/AEEV6sv91p/P8zz1/Hn8iWiiiuc2CiiigArS0r7S8uEkYQr97PI+gqlb273UwjTv1PoPWukhhS3hWNBhVHU9/c1lUkkrGkI3dyTOBknAHeuc1fUbdt8rGOOCEFmmbjj1J9Kn1HUPPJhhP7ofeP8Ae/8ArV5v8TLqWLRrS3QkRzzEyY77RwPzOfwq8LQ55pPqRXq8sG10HXPxM0qKcpBaXM6A48zIQH6A8/yroNE8Rafr8LPZyMJE+/DIMOv+I9xXhdbXhK7ls/FOnvET88oiYDurcEV7NXA01BuO6PMp4ubmlLY9vrzqx/5LfD/19j/0CvRa86sf+S3w/wDX2P8A0CuLDbT/AMLOqvvD1R7lRRRXkHpBRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQBC/32+tFD/fb60UxEw6D6UUDoPpRSGFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAHkHxt/wCPvRf+ucv81rrbX/jyt/8Arkn/AKCK5L42/wDH3ov/AFzl/mtdba/8eVv/ANck/wDQRXqy/wB1p/P8zz1/Hn8iWiiiuc2K1/f22mWUl5dyCOGMfM38gB3NM0zVLTV7Jbuyl8yIkjkYKkdiOxryzxt4m/trUPsts+bC3YhCP+Wjd2/oP/r1T8K+I5fD2pB2y9nLhZ4x6f3h7ivQWBk6XN9rscbxaVS3Q+hdMmtI4Qivtlb72/jJq9cQfaIGiLsgbutcpDNFcQRzQuskUihkdejA96tQXlxb/wCrkO3+6eRXlSpO90ehGatZktzptxb5bHmJ/eX/AArnPEmhR+INIa0LhJVbfC56Kw9fY9K7Wx1Frp/LaIhgMllPFSXVhbTguw8thyXXj86cK0qck3uhSpKcbdD5suvC2uWc5hk0y5Y5wGjQup+hFdf4K8GXVnfJqmqR+U0XMMB+9u/vN6Y9K9EbCuwRtyg8NjGabXoVMdUnDltY4oYSEZcwV51Y/wDJb4f+vsf+gV6LXnVj/wAlvh/6+x/6BU4baf8AhZVfeHqj3KiiivIPSCiiigAooooAKKKKACiiigAooooAKKKKACiiigCF/vt9aKH++31opiJh0H0ooHQfSikMKKKKACiiigAooooAKKKKACiiigAooooAKKKKAPIPjb/x96L/ANc5f5rXW2v/AB5W/wD1yT/0EVyXxt/4+9F/65y/zWuttf8Ajyt/+uSf+givVl/utP5/meev48/kS1w3j/xN9jtzo9pJ/pEy/v2B+4h/h+p/l9a6LxJr0Xh/SXuWw07/ACwRn+JvX6Dqf/r14jcXEt3cSXE8hklkYs7N1JNb4LD8755bIxxVblXIt2R0UUV7B5p2/gPxV9gnXSb2TFpK37l2P+qc9vof0P416rHE8sqxoMsxwBXzooLMFAyScAV9LeDtLvtM8OWiapIJb4xjcw52r2XPcgdTXjZlCNO1RbvoengZyn7j6Gxa2yWkGxcZ6u3rXnfjL4l2VkXstMK3cy8MQf3YPue/0FVvixrHiCGMWFtaXFvpLAebdpyJj/dJH3QPQ9fpXjtTgcDGa9rUd/L/ADKxWLcX7OGh6X4T8dT6hqX2HVmiBmOIJVULhv7p+vau+r53BIIIJBHIIr2HwZ4lGu6b5Nw/+n24Akz1kXs/+Pv9a1xuGUPfgtDPC13L3JbnT151Y/8AJb4f+vsf+gV6LXnVj/yW+H/r7H/oFYYbaf8AhZrX3h6o9yoooryD0gooooAKKKKACiiigAooooAKKKKACiiigAooooAhf77fWih/vt9aKYiYdB9KKB0H0opDCiiigAooooAKKKKACiiigAooooAKKKKACiiigDyD42/8fei/9c5f5rXULcQ2mlR3NxII4YoFZ2PYBRXL/G3/AI+9F/65y/zWub8a+Jvt0cGkWcmbaFE85lPEjgDj6D+de3RourQpRXn+Z5VSqqdWo35fkYniTXpvEGrPdPlYV+WGMn7i/wCJ6mseiivXjFRSitjzZScndhRRRVCCt3RPGOu+HiosNQkWEdYJPnjP/AT0/DFYVFTKEZq0ldFRk4u8XY9l0b4x2N0n2fXbAwbhtaWAeZG31Q8gfnVjUPAXhPxhA174evoLac8n7Od0ef8Aaj6r+GPpXjFraz313Fa2sTSzysESNBksTXv/AIW8Oab8P/D0t5qE8SXLIGu7lui+iL6j6dT+FeRiqUMK1Ki2pPoup6OHqSr+7VSaXU8b8Q+Ctc8NMWvbQtbZ4uYfmjP49vxxWVpepXGkajDe2rYkjOcdmHcH2NdR448f3fiiZrS132+lI3yxZ+aU/wB5/wCg6CuLr0qPtJU/3y1Zw1eSM/3b0PfNK1O31jTYb62P7uQcqeqN3U+4rh7H/kt8P/X2P/QKwfBviQ6DqXlzsfsNwQJR/cPZx9O/tW9YEN8boGUgqboEEHgjy64fYOjKounK7HX7VVIwfW6PcqKKK8A9gKKKKACiiigAooooAKKKKACiiigAooooAKKKKAIX++31oof77fWimImHQfSigdB9KKQwooooAKKKKACiiigAooooAKKKKACiiigAooooA8n+NdnO8ekXqxkwR+ZE7gcKxwRn64P5V5DX1lPBDcwPBcRRywuMNHIoZWHuDWV/wiXhv/oA6b/4DL/hXq4XMY0aSpyjsefiME6lRzT3PmKivp3/AIRLw3/0AdN/8Bl/wo/4RLw3/wBAHTf/AAGX/Cuj+16f8rMP7On/ADI+YqK+nf8AhEvDf/QB03/wGX/Cj/hEvDf/AEAdN/8AAZf8KP7Xp/ysP7On/Mj5ipVVncIilmY4AAySa+nP+ES8N/8AQB03/wABl/wqW38NaDaXEdxb6NYRTRnckiQKGU+oOKHm8OkWP+zpfzHD+FNB074eaE3iDxC6x6hKuFTq0YI+4o7ue/p09a858X+M7/xbfbpiYbKMnyLZTwvufVvf8q+hb/RtM1RkbUNPtrtoxhDPGH2/TNU/+ES8N/8AQB03/wABl/wrko42nGbq1E3J/h6HRUws3FU4O0fzPmKivp3/AIRLw3/0AdN/8Bl/wo/4RLw3/wBAHTf/AAGX/Cuv+16f8rOb+zp/zI+Yq6/4a2l1fePNOljR3W3Jklc9EUKQMn8gK9u/4RLw3/0AdN/8Bl/wrQstOsdNiMVhZ29rGxyVhjCAn3x1rOtmkZ03GMdWaU8vlGak3sWaKKK8Y9MKKKKACiiigAooooAKKKKACiiigAooooAKKKKAIX++31oof77fWimImHQfSigdB9KKQwooooAKKKKACiiigAooooAKKKKACiiigAooooAkhhM2/DKoQZJY8U57aVWCgb9w3ApyCKW3kjRZlkLASJtyozjmp1uoFAQeZtRQFJHXnJyM11U6dKUVzOz/AK/Q55zqKTsrlMRuwJCMQvXA6U+KEyh23oqoASWNWheRbpC2/azswXHPPoc8VDazrCsoZmUuAAyjOOaFTpKa9661/wCAHPUcXpZ6DGtnViCy8AEEHgg9KFtZWnMQXJDbS2OAfrU73cbF/vnKoNxHLEHOaeL2LzVcmRdsjMAB94H1q/ZYdy+L+r/5E+0rJbf1YqRQPNv24AQZYmkSCR3jXaV3nClhgGnQzCNJhz864GPXNW2v4jKrjdjeGK7emB65qKdOjKKcnZ9fv/r7ypzqptRVymLeQsVKlSFLfMMZApHgkjkWN12s2MZ96nW6XygGLFgsgz/vdKZNMsk8UgLHaF3A9sUpQpKN09dBqVTms1oRtDIpcbSQhwzAcUGB94VQXOAflB4zVw30e1sbgcuR8uc5/GmfaomUqWkThDuUc/KOlW6NHpL+v60JVSr1iVngkR5F2lthwxUZAppRlAJUgHoSOtXzfRncRuU7mYfLnOfxqpcTeaYwCdqIFwfXvUVadKKbjK5VOdRu0lYhooormNwooooAKKKKACiiigAooooAKKKKACiiigAooooAhf77fWih/vt9aKYiYdB9KKB0H0opDCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigCF/vt9aKH++31opiJh0H0ooHQfSikMKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAIX++31oof77fWimImHQfSigdB9KKQwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAhf77fWih/vt9aKYiYdB9KKB0H0opDCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigCF/vt9aKH++31opiH+YcDgdBR5h9BRRSGHmH0FHmH0FFFAB5h9BR5h9BRRQAeYfQUeYfQUUUAHmH0FHmH0FFFAB5h9BR5h9BRRQAeYfQUeYfQUUUAHmH0FHmH0FFFAB5h9BR5h9BRRQAeYfQUeYfQUUUAHmH0FHmH0FFFAB5h9BR5h9BRRQAeYfQUeYfQUUUAHmH0FHmH0FFFAB5h9BR5h9BRRQAeYfQUeYfQUUUAHmH0FHmH0FFFAB5h9BR5h9BRRQAeYfQUeYfQUUUAHmH0FHmH0FFFAB5h9BR5h9BRRQAeYfQUeYfQUUUAHmH0FHmH0FFFAETud7cDrRRRTEf/Z
 </Image_LoadResult>
 </Image_LoadResponse>
 </soap:Body>
 </soap:Envelope>
 |  Um jetzt an das Mime-Encodete Bild heranzukommen, verwende ich folgenden Code:
 												| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 13:
 14:
 15:
 16:
 17:
 18:
 19:
 20:
 21:
 22:
 23:
 24:
 25:
 26:
 27:
 28:
 29:
 30:
 31:
 32:
 33:
 34:
 35:
 36:
 37:
 38:
 39:
 40:
 41:
 
 | procedure TForm1.AfterExecute(const MethodName: string; SOAPResponse: TStream);var
 s: string;
 SS: TStringStream;
 P: TIdDecoderMIME;
 f: TEXTFILE;
 B: TIdBytes;
 T: TMemoryStream;
 doc: IXMLDocument;
 node: IXMLNode;
 begin
 if Uppercase(MethodName) = 'IMAGE_LOAD' then
 begin
 SS := TStringStream.Create('');
 P:=TIdDecoderMIME.Create(nil);
 T:=TMemoryStream.Create;
 try
 SS.CopyFrom(SOAPResponse, 0);               s := SS.DataString;
 doc:=LoadXMLData(s);
 node:=doc.DocumentElement.ChildNodes.Nodes['soap:Envelope'];
 node:=node.ChildNodes.Nodes['soap:Body'];
 node:=node.ChildNodes.Nodes['Image_LoadResponse'];
 node:=node.ChildNodes.Nodes['Image_LoadResult'];
 
 s:=node.LocalName;
 s:=node.Text;                  exit;
 
 B:=P.DecodeBytes(s);
 T.Write(B[0], Length(B));
 T.Position:=0;
 Image1.Picture.LoadFromStream(T);
 finally
 SS.Free;
 T.Free;
 P.Free;
 end;
 end;
 end;
 |  Eigentlich sollte ich, nachdem ich mich durch das XML von Node zu Node gehangelt habe, in node.Text mein BASE64-Encoded Binärkrams haben, der das Bild repräsentiert. Nur ist node.Text leer . node.LocalName  ist übrigens "Image_LoadResult".
 Ich kapier das alles nicht mehr._________________ Lies, was da steht. Denk dann drüber nach. Dann erst fragen.
 |  |  |  
| Sinspin 
          Beiträge: 1335
 Erhaltene Danke: 118
 
 Win 10
 RIO, CE, Lazarus
 
 | 
Verfasst: Mo 09.10.17 17:00 
 
Wenn ich das richtig sehe ist das ein denkbar blödes Testbild. Zum Glück ist meine Testseite english. Da sollte dann nix auf deutsch kommen. 
 Also geliefert wird ein Bild. Ob vollständig oder nicht kann ich nicht bewerten da FF auf dann was anzeigt wenn ich das kodierte Bild verstümmele.
 Ich habe gleich den ersten Google Treffer bei Suche nach "base64 decode image" verwendet um das bild zu visualisieren.
 xml: Ich verwende immer eine bisschen andere Methode. Interessanterweise bekomme ich aber auch mit der die Daten nicht raus, sondern immer einen Fehler. Aber noch gebe ich nicht auf    €: Jetzt habe ich das gleiche Problem, keine Daten vorhanden. Interessant. Ich hatte so einen Fall vor einigen Jahren einmal. Muss mal sehen wie ich das gelößt habe._________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
 |  |  |  
| Sinspin 
          Beiträge: 1335
 Erhaltene Danke: 118
 
 Win 10
 RIO, CE, Lazarus
 
 | 
Verfasst: Mo 09.10.17 17:57 
 
Geschafft.
 Habe mit ner Kanone auf ne Ameise geballert und nen Regenbogen bekommen.
 Ich verwende msxml2. Sollte registriert sein, musste dir ne tlb für erzeugen. 
 Zum Decodieren von Base64 verwende ich die unit "encddecd" ist seit mindestens EX2 vorhanden und hat nicht zig Warnungen im Quelltext. 
 												| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 13:
 14:
 15:
 16:
 17:
 18:
 19:
 20:
 21:
 22:
 23:
 24:
 25:
 26:
 27:
 28:
 29:
 30:
 31:
 
 | varXMLDoc: IXMLDOMDocument;
 sl: TStringList;
 s: string;
 T: TStringStream;
 
 begin
 CoInitialize(nil);
 
 sl := TStringList.Create;
 T := TStringStream.Create('');
 try
 sl.LoadFromFile('C:\Users\Public\wsdl_test.txt');
 
 XMLDoc := CreateOleObject('Microsoft.XMLDOM') as IXMLDomDocument;
 XMLDoc.LoadXML(sl.Text);
 s := XMLDoc.documentElement.selectSingleNode('./soap:Body/Image_LoadResponse/Image_LoadResult').text;
 if s <> '' then
 begin
 s := DecodeString(s);
 T.WriteString(s);
 T.Position := 0;
 t.SaveToFile('C:\Users\Public\wsdl_test_pic.jpg');
 Image1.Picture.LoadFromFile('C:\Users\Public\wsdl_test_pic.jpg');
 end;
 finally
 T.Free;
 sl.Free;
 end;
 CoUninitialize;
 end;
 |  So ist zumindest der Beweis erbracht das ein vollständiges Bild geliefert wird. Warum es nun beim import via Soap nicht klappt steht auf einem anderen Blatt._________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
 |  |  |  
| OlafSt  
          Beiträge: 486
 Erhaltene Danke: 99
 
 Win7, Win81, Win10
 Tokyo, VS2017
 
 | 
Verfasst: Di 10.10.17 09:29 
 
Dies hat wunderbar funktioniert, @SinSpin. Tausend dank für deine Hilfe.
 Die Unit EncdDecd hat etliches an deprecated drin, mit der Empfehlung doch bitte System.NetEncoding zu verwenden. Habe ich getan, geht genauso prima. Nun bekomme ich auch Bilder angezeigt.
 
 Grazie Mille.
 _________________ Lies, was da steht. Denk dann drüber nach. Dann erst fragen.
 |  |  |  |