Klar hab ich… Aber „alle“ ist wohl relativ, oder? Ist immer die Gleiche. Daher meine Frage. Soll das so? Was muss ich für eine IPS_VARIABLEMESSAGE tun?
Okay, den 2. Tip konnte ich nachvollziehen. Bringt aber nix. Der Erste ist mir vollkommen rätselhaft. Es gibt zwar die beschriebene Funktion aber den Punkt wo ich den Code erweitern/ersetzen soll kann ich nicht lokalisieren. Allerdings verwende ich ein Indy-Tiburon-gepimptes Turbodelphi (D2006). Ein Original Delphi-Tiburon hätt ich auch, aber mein letzter Stand ist, dass ich das nicht verwenden sollte wegen Unicode…
Bin nen Schritt weiter. sagt dir „Unknown Type: 8204“ etwas? Das ist die Value eines Boolean, der über SOAP übertragen wurde.
Die TTypeTranslator.CastSoapToVariant Änderung hab ich eingebaut. Den Float-Fix auch. Aber den Part in ConvertSoapToVariant kann ich nach wie vor nicht nachvollziehen.
ConvertSoapToVariant ist falsch ;). Mein Fehler. Es sind 2 Änderungen in CastSoapToVariant Funktionen. Es gibt die eine die ich im Comment beschreibe und noch eine die die folgende Signatur hat:
function TTypeTranslator.CastSoapToVariant(SoapInfo: PTypeInfo; const SoapData: WideString): Variant;
Vergiss nicht die Pfade in deinen Suchpfad einzubauen. Wenn du es im Debugger startest, muss er dort am Breakpoint anhalten können.
Alles klar. Hab ich intuitiv beide schon durchgewühlt. Hatte mir schon sowas gedacht als ich herausgefunden hab, dass der Code unter Tiburon dem unter TurboDelphi gleicht. Wär schon seltsam, wenn du unter D2k7 (verwendest du doch, oder?) was völlig anderes hast.
Mein Ist-Zustand schaut folgendermaßen aus:
Ich hab mir selbst ein „IPS-SOAP-Essentials-SDK“ aus dem Offiziellen gebaut. Dies hab ich umgebaut auf D2k9. Damit bekomme ich auch VM_UPDATE Messages. Nur bei Booleans bekomm ich die Values nicht. Bekomm ich aber auch bei der SOAPDemo EXE aus dem SDK download nicht. Darum hab ich auch unter D2k9 deine Änderungen aus dem QC vorgenommen und natürlich auch DCUs draus erzeugt und eingebunden. Ohne Grundlegende Verbesserung.
Ich lass es an dieser Stelle nun darauf beruhen und schreib das als „known-Bug“ in die TRIXI-Doku, wofür ich den MessageReader verwenden wollte.
Ein SDK für D2009? Da warte ich schon lange drauf. Momentan ist mein Turbodelphi nur noch lauffähig, weil ich es in eine W2k-VM eingesperrt habe. Aber auch dort bleibt immer noch das Problem, das mein keine Komponenten nachinstallieren darf (und kann).
Ganz so weit bin ich noch nicht. aber TRIXI wird zukünftig unter D2k9 entwickelt. Wenn du SOAP-Applikationen schreiben willst lass ichs dir gern zukommen. Schließlich rudern wir alle das selbe Boot ;). Beim Rest des SDK muss ich noch schauen ob sich das auch umbauen lässt.
Ich habe die Hoffnung immer noch nicht aufgegeben, das Michael seine Entwicklungsumgebung umstellt und uns dann auch mit einem Unicode-kompatiblen SDK versorgt.
Dieses Jahr ist die letzte Upgrademöglichkeit für D2006, nächstes Jahr dann wahrscheinlich für D2007. Wenn das kein Anlass ist …