AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Prism WSDL importieren (Webreferenz) in D2005 PE ?
Thema durchsuchen
Ansicht
Themen-Optionen

WSDL importieren (Webreferenz) in D2005 PE ?

Ein Thema von Phoenix · begonnen am 12. Apr 2005 · letzter Beitrag vom 19. Jul 2005
Antwort Antwort
Seite 2 von 2     12   
CodeX

Registriert seit: 30. Okt 2004
475 Beiträge
 
Delphi 12 Athens
 
#11

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 18. Jul 2005, 15:07
hallo uwe,

den ersten teil habe ich hinbekommen. den zweiten kann ich nicht nachvollziehen. zu was gehört denn dieses "csc"?`
ich habe weder im .NET SDK noch im delphi verzeichnis eine csc.* datei gefunden.
im endeffekt geht es ja nur darum, eine dll datei zu erhalten, die ich damm in dem projekt nutzen kann, richtig?
wenns an delphi 2005 pe scheitert, wäre es dann möglich, dass du deine geposteten schritte einfach selber machst und mir die dll detei zur verfügung stellst?
http://www.google.com/apis/download.html

danke
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#12

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 18. Jul 2005, 16:02
Nur um es mal zusammenfassend klarzu stellen...

Dein VS03\SDK Order ist der Ordner in dem das VS03 das SDK installier, wenn es vorher noch nicht installiert war.
Da wsdl.exe genau wie xsd.exe (beide interessant für das Thema )zum SDK gehören, liegen sie nunmal da...
Egal ob es nun %ProgramFilesDir%Microsoft.Net\... oder Visual Studio 20S03\... heißt.
Wenn du
Code:
wsdl /language:[Namespace.CodeDom] /out:BabelCode.pas [url]http://dotnet.borland.com/babelcode/converter.asmx?WSDL[/url]
Für Namespace und Class name des Delphi.Net Codedoms würde den Reflector nehmen.
*wuppdi* Hast du deinen Proxy.
Ähnlich kannst du xsd.exe für eventuelle XSDs verwenden, die nicht direkt vom WebService angeboten werden, aber dir clientseitig Arbeit abnehmen könnten (Wäre bei dem simplen Service wohl unnötig ).

Ich hätte zwar hier den C# CodeDome gefolgt vom csc verwendet und dann die Assembly statt den Code direkt zu verwenden...
(Bei Delphi & WSDL muss ich immer an den alten WSDL Importer, mit 150 Zeilen Forward declares denken, die trotzdem nicht gehen... )
Das schöne an .Net ist ja, dass man eine C# ClassLib prima mit anderen Sprachen nutzen kann.
  Mit Zitat antworten Zitat
UweR

Registriert seit: 15. Mär 2004
Ort: Bad Marienberg
219 Beiträge
 
Delphi 7 Professional
 
#13

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 18. Jul 2005, 16:08
Hallo CodeX

csc.exe ist der C#-Compiler von Microsoft, du findest ihn auch nicht im Framework-SDK, sondern direkt im Framework-Verzeichnis. Er lümmelt sich somit irgendwo unterhalb deines Windows-Verzeichnisses rum. Wenn es jetzt immer noch nicht funzt schick mir ne PN mit deiner Mail-Adresse, dann backe ich dir das Ding zusammen und schicke es dir zu.
Gruß
UweR
  Mit Zitat antworten Zitat
CodeX

Registriert seit: 30. Okt 2004
475 Beiträge
 
Delphi 12 Athens
 
#14

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 18. Jul 2005, 16:53
ok, das mit der dll habe ich jetzt hinbekommen.
nun müsste ich es aber trotzdem noch in mein programm integrieren können
dabei versuche ich zum einstieg das hier nachzuvollziehen: http://www.dsdt.info/tutorials/wsclient/?page=4

so habe ich das jetzt einbinden wollen:
function GetGoogleSearchPort(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): GoogleSearchPort; stdcall; external 'GoogleSearch.dll'; er mekert aber bei THTTPRIO und GoogleSearchPort rum. klar, kann er ja auch einfach so nicht kennen.
bei uses müsste noch sowas wie "GoogleSearch" dazu, aber ich habe ja keine GoogleSearch.pas
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#15

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 18. Jul 2005, 16:56
Du musst eine normale Referenz auf die .DLL hinzufügen. Das geht über Projekt, Referenz hinzufügen einwandfrei. Und dann kommt freilich in die Uses oben noch die Referenz hinein.

Aber was willst Du mit der external-Deklaration? Die gibts in .NET nicht mehr.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#16

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 18. Jul 2005, 17:27
Zitat von Phoenix:
Du musst eine normale Referenz auf die .DLL hinzufügen. Das geht über Projekt, Referenz hinzufügen einwandfrei. Und dann kommt freilich in die Uses oben noch die Referenz hinein.
Da Wissdel alles mit absoluten namespaces verwendet ist der eintrag in der uses clause unnötig, die Referenzen müssen aber auf jeden Fall gestzt werden.
Zitat von Phoenix:
Aber was willst Du mit der external-Deklaration? Die gibts in .NET nicht mehr.
Hmpf?
  • Falls es wirklich eine Win32 dll ist:
    Würde das in D.Net nicht so aussehen? (Bin mir nicht sicher, aber so hätte ich es in D.Net versucht...)
    Delphi-Quellcode:
    [DllImport('GoogleSearch.dll')]
    function GetGoogleSearchPort(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): GoogleSearchPort; external;
  • Falls es Teil des WebService Proxies ist:
    Dann BITTE: lese dir durch was du da machst...
    Ich finde nichts nerviger als solche Stückelei nur weil jemand zu faul zum Lesen ond/oder Nachdenken ist.
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#17

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 18. Jul 2005, 17:36
Zitat von Robert_G:
Zitat von Phoenix:
Aber was willst Du mit der external-Deklaration? Die gibts in .NET nicht mehr.
Hmpf? [list][*]Falls es wirklich eine Win32 dll ist:
Würde das in D.Net nicht so aussehen? (Bin mir nicht sicher, aber so hätte ich es in D.Net versucht...)
Delphi-Quellcode:
[DllImport('GoogleSearch.dll')]
function GetGoogleSearchPort(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): GoogleSearchPort; external;
Ähh. ja. Aber er hat ja mit wsdl und csc dei DLL erstellt. Von daher gehe ich davon aus das er innerhalb von .NET bleibt und da kann er das external gerade mal vergessen. Und wenn er native Win32 DLL's nutzen will... nungut.... ich vermeide die P/Invokes wo es nur geht.. also eigentlich überall. Bei mir gibts keine externals in .NET
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#18

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 18. Jul 2005, 18:08
Zitat von Phoenix:
Bei mir gibts keine externals in .NET
Da bin ich etwas kompromissbereiter geworden.
Ich habe mir zur Zeit der 2.0 Beta 1 viele Klassen in 1.1 so gebaut, dass sie denen aus 2.0 entsprechen. (Zum Beispiel ein ListView mit Gruppierung)
Natürlich braucht man dazu einiges an Invokes, da ich aber wusste, dass das Projekt nach 2.0 fertig wird...
Auch invokes der GDI+ sind ganz nett wenn man cooles gradiell transparentes Drag'nDrop bauen will, etc. ...
(Solche Mini invokes laufen übrigens auch ganz gut ohne deine Assembly auf FullTrust zu scheuchen. )
  Mit Zitat antworten Zitat
CodeX

Registriert seit: 30. Okt 2004
475 Beiträge
 
Delphi 12 Athens
 
#19

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 19. Jul 2005, 12:40

ich versuche, wie gesagt, erstmal nur diese anleitung nachzuvollziehen: http://www.dsdt.info/tutorials/wsclient/?page=4
da ich aber d2005pe habe, kann ich die schritte wie sie dort stehen nicht durchführen, weil zb der WSDL-Import-Assistent fehlt.
deshalb das workaround. bis zur dll bin ich ja jetzt gekommen. nun muss ich noch auf deren funktionen und variablentypen zugreifen können.
dass das mit reinem .NET geschehen soll, steht da nirgends. möglich wäre es natürlich. aber mir wäre es wesentlich lieber, wenn ich eine normale Win32 anwendung erstellen könnte.
ich habe nun also noch die dll über "referenz hinzufügen" importiert und auch mal bei uses aufgenommen.
trotzdem mekert er immer noch bei THTTPRIO und GoogleSearchPort rum.
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#20

Re: WSDL importieren (Webreferenz) in D2005 PE ?

  Alt 19. Jul 2005, 15:34
Zitat von CodeX:
aber mir wäre es wesentlich lieber, wenn ich eine normale Win32 anwendung erstellen könnte.
Gut.. eine Win32-DLL aus einem .NET Programm aufrufen geht ja noch. Aber mir wäre neu, das man ein .NET Assembly (also eine .NET - dll) wie Du es mit WSDL.exe und dem csc erstellt hast in einer normalen Win32-Anwendung verwenden kann. Das geht nicht.

Ich habe dieses Thema ja erstellt, und gaaanz oben steht bei Platform ja auch .NET drin - deswegen gehen wir hier eben auch von .NET aus.

Du hast nun also eine dll - also ein Assembly - das die Schnittstelle zwischen einem .NET - Programm und dem Webservice darstellt. Dieses kannst Du auch nur unter .NET verwenden. Und dafür ist die Vorgehensweise ja bereits erklärt: Assembly in die Referenzliste aufnehmen, in die Uses-Klausel aufnehmen und *wuppdi* kannst Du den Service verwenden.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 13:22 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