| Autor |
Beitrag |
BananaMan2.0
Hält's aus hier
Beiträge: 3
Win 2k, XP, Vista
Delphi 6 Enterprise
|
Verfasst: Do 03.07.08 11:27
Ich habe von jemanden ein Testprogramm bekommen, wo eine WSDL-Schnittstelle verwendet wird. Dieses Programm ist mit Delphi 2006 geschrieben und funktioniert auch.
Wenn ich aber das Projekt mit Delphi 6 compiliere, bekomme ich keinen Fehler. Die Anwendung ist als erstes schon mal 150 KB kleiner. Wenn es dann zum Aufruf der Prozedur geht, die in der Interface-Unit für die Soap-Übertragung drin ist, stürzt das Programm ab.
Die automatische Code-Generierung mit der WSDL-XML-Datei vom Delphi 6 aus ist fehlerhaft.
Die Funktion ist im groben von Delphi 2006 so definiert: (genauere Details habe ich mal weggelassen.)
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| TCallParam = class Qry; Data; Idx; Meta; end;
TCallResponse = class Qry; Data; Idx; Meta; end;
procedure Call(const CallParam: TCallParam; out CallResponse: TCallResponse); |
das Delphi 6 generiert automatisch folgendes:
Delphi-Quelltext 1:
| procedure Call(const Qry; const Data; const Idx; const Meta; out Qry; out Data; out Idx; out Meta); |
Irgendwie parst das Delphi 6 die Beschreibungsdatei falsch und compiliert die richtige Unit falsch...
Gibts irgendeine Möglichkeit die Schnittstelle von Delphi 6 aus trotzdem zu verwenden?
|
|
hazard999
      
Beiträge: 162
Win XP SP2
VS 2010 Ultimate, CC.Net, Unity, Pex, Moles, DevExpress eXpress App
|
Verfasst: Do 03.07.08 13:59
Poste mal das WSDL.
_________________ MOV EAX, Result;MOV BYTE PTR [EAX], $B9;MOV ECX, M.Data;MOV DWORD PTR [EAX+$1], ECX;MOV BYTE PTR [EAX+$5], $5A;MOV BYTE PTR [EAX+$6], $51;MOV BYTE PTR [EAX+$7], $52;MOV BYTE PTR [EAX+$8], $B9;MOV ECX, M.Code;MOV DWORD PTR [EAX+$9], ECX
|
|
BananaMan2.0 
Hält's aus hier
Beiträge: 3
Win 2k, XP, Vista
Delphi 6 Enterprise
|
Verfasst: Do 03.07.08 15:41
Die WSDL ist ein bissel sehr groß zum posten hier.
Außerdem möchte ich die Schnittstelle nicht öffentlich preis geben, da der Herausgeber damit nicht einverstanden ist und unsere Firma einen Nutzungsvertrag unterzeichnet hat. Daher schicke ich sie nur per PN.
|
|
alzaimar
      
Beiträge: 2889
Erhaltene Danke: 13
W2000, XP
D6E, BDS2006A, DevExpress
|
Verfasst: Do 03.07.08 15:53
Ich glaube, da war mal was mit Delphi6 und fehlerhaftem WSDL.... Sicherheitshalber würde ich das nicht machen bzw. handcodieren. Nimm halt ein neueres Delphi.
_________________ Na denn, dann. Bis dann, denn.
|
|
LCS
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Do 03.07.08 16:29
Sorry, aber das ist genau die Sorte von Antworten über die man nur den Kopf schütteln kann. Es wird schon seinen Grund haben, wenn hier für die Projektentwicklung D6 eingesetzt wird. Mal ganz abgesehen davon, dass es ein paar Euro kostet, eine ganze Entwicklungsabteilung auf ein anderes Delphi umzustellen, solltest du dir einfach mal vor Augen halten was es für einen Zeitaufwand darstellt, ein komplettes Projekt auf eine andere Entwicklungsumgebung umzustellen.
Gruss Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
hazard999
      
Beiträge: 162
Win XP SP2
VS 2010 Ultimate, CC.Net, Unity, Pex, Moles, DevExpress eXpress App
|
Verfasst: Do 03.07.08 16:31
die lösung ist: beim import unter optionen "literalparameter abwickeln" zu deaktivieren
_________________ MOV EAX, Result;MOV BYTE PTR [EAX], $B9;MOV ECX, M.Data;MOV DWORD PTR [EAX+$1], ECX;MOV BYTE PTR [EAX+$5], $5A;MOV BYTE PTR [EAX+$6], $51;MOV BYTE PTR [EAX+$7], $52;MOV BYTE PTR [EAX+$8], $B9;MOV ECX, M.Code;MOV DWORD PTR [EAX+$9], ECX
|
|
hazard999
      
Beiträge: 162
Win XP SP2
VS 2010 Ultimate, CC.Net, Unity, Pex, Moles, DevExpress eXpress App
|
Verfasst: Do 03.07.08 16:32
und über d6 schimpfen mag ich überhaupt nicht, es ist das beste delphi das ich habe 
_________________ MOV EAX, Result;MOV BYTE PTR [EAX], $B9;MOV ECX, M.Data;MOV DWORD PTR [EAX+$1], ECX;MOV BYTE PTR [EAX+$5], $5A;MOV BYTE PTR [EAX+$6], $51;MOV BYTE PTR [EAX+$7], $52;MOV BYTE PTR [EAX+$8], $B9;MOV ECX, M.Code;MOV DWORD PTR [EAX+$9], ECX
|
|
alzaimar
      
Beiträge: 2889
Erhaltene Danke: 13
W2000, XP
D6E, BDS2006A, DevExpress
|
Verfasst: Do 03.07.08 16:45
LCS hat folgendes geschrieben: | | Sorry, aber das ist genau die Sorte von Antworten über die man nur den Kopf schütteln kann. Es wird schon seinen Grund haben, wenn hier für die Projektentwicklung D6 eingesetzt wird. |
1.000.000 Fliegen können nicht irren. Oder doch?
www.delphipraxis.net/topic96505.html
LCS hat folgendes geschrieben: | | Mal ganz abgesehen davon, dass es ein paar Euro kostet, eine ganze Entwicklungsabteilung auf ein anderes Delphi umzustellen, ... |
Von Entwicklungsabteilung hatte ich nichts gelesen, aber ich hab ja auch ne Brille. Weiterhin muss ich mir nicht " einfach mal vor Augen halten was es für einen Zeitaufwand darstellt, ein komplettes Projekt auf eine andere Entwicklungsumgebung umzustellen", denn ich habe das bereits mehrfach getan und lebe immer noch. Die 200.000 LOC gingen fast ohne Probleme rüber, ich weiss also nicht, was ich mir da vor Augen halten muss. Nur Indy ist ein wenig zickig, aber davon stand hier nix. Halte Dich doch einfach mit solch pauschalisierendem Postbashing zurück, denn darüber kan ich nun wieder nur den Kopf schütteln.
hazard999 hat folgendes geschrieben: | und über d6 schimpfen mag ich überhaupt nicht, es ist das beste delphi... |
Finde ich auch.
_________________ Na denn, dann. Bis dann, denn.
|
|
BananaMan2.0 
Hält's aus hier
Beiträge: 3
Win 2k, XP, Vista
Delphi 6 Enterprise
|
Verfasst: Do 03.07.08 18:01
hazard999 hat folgendes geschrieben: | | die lösung ist: beim import unter optionen "literalparameter abwickeln" zu deaktivieren |
Vielen Dank dir erstmal
Damit lässt sich der Code richtig generieren und auch compilieren. Jetzt bin ich zumindest schon einen Schritt weiter und bekomme eine Fehlermeldung "Ein XML-Dokument muss blablabla". Aber das ist sicherlich nicht das große Problem.
[offtopic]
was spammt ihr hier meinen Thread so voll?
[/offtopic]
|
|
alzaimar
      
Beiträge: 2889
Erhaltene Danke: 13
W2000, XP
D6E, BDS2006A, DevExpress
|
Verfasst: Do 03.07.08 18:23
Poste doch bitte etwaige Probleme und widerlege -wenns geht- meine Ear-Say-Behauptung, das D6 und WSDL sich nicht mögen.
_________________ Na denn, dann. Bis dann, denn.
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 03.07.08 19:07
Moin!
alzaimar hat folgendes geschrieben: | | Poste doch bitte etwaige Probleme und widerlege -wenns geht- meine Ear-Say-Behauptung, das D6 und WSDL sich nicht mögen. |
Das wird sicher eine spannende Diskussion - aber nicht in diesem Thread!
Wenn ihr das ausdiskutieren wollt, dann bitte einen eigenen Thread dazu im OffTopic aufmachen oder per PN.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Tilman
      
Beiträge: 1405
Erhaltene Danke: 51
Win 7, Android
Turbo Delphi, Eclipse
|
Verfasst: Do 03.07.08 23:34
_________________ Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 03.07.08 23:41
Moin!
Tilman hat folgendes geschrieben: | Hm interessante auffassung von OT wo das eigentlich genau der Topic von diesem Fred ist ^^ |
Nein, ist es nicht.  (aber gut, von mir aus darf der Thread auch nach Programmierwerkzeuge  )
Ursprüngliche Fragestellung:
BananaMan2.0 hat folgendes geschrieben: | | Gibts irgendeine Möglichkeit die Schnittstelle von Delphi 6 aus trotzdem zu verwenden? |
hat nix mit
alzaimar hat folgendes geschrieben: | | Poste doch bitte etwaige Probleme und widerlege -wenns geht- meine Ear-Say-Behauptung, das D6 und WSDL sich nicht mögen. |
zu tun, ganz einfach.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Tilman
      
Beiträge: 1405
Erhaltene Danke: 51
Win 7, Android
Turbo Delphi, Eclipse
|
Verfasst: Do 03.07.08 23:56
Okay ich spielte natürlich auf den Titel an. Aber hast schon recht. Ich bin jetzt lieber leis' bevors noch offtöppiger wird.
_________________ Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
|
|
|