AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Problem beim Einbinden einer DLL

Ein Thema von SlaterBenelli · begonnen am 23. Jul 2010 · letzter Beitrag vom 27. Jul 2010
Antwort Antwort
SlaterBenelli

Registriert seit: 4. Feb 2008
Ort: Frankfurt am Main
33 Beiträge
 
Delphi 2007 Professional
 
#1

Problem beim Einbinden einer DLL

  Alt 23. Jul 2010, 16:03
Hallo Zusammen,

ich bin langsam ein wenig am verzweifeln und weis nicht wo ich noch schauen soll...

Ich wollte ein wenig experimentieren mit Twitter und hab mir dazu die QTwitLib.dll rausgesucht... Jetzt sollte es nach der Doku von assarbad eigentlich kein prob sein die Funktionen daraus einzubinden, aber ich bekomme das nicht hin...

Wie kann ich die funktionen richtig einbinden?

Habe es so versucht:

Delphi-Quellcode:
procedure login(Username, Password:String); external 'QTwitLib.dll';
procedure Logout; external 'QTwitLib.dll';
procedure PostNewStatus(Status:String); external 'QTwitLib.dll';
im anhang habe mal ein Screenshot von Dependency beigefügt...

die Funktionen wollte ich dann so ansprechen:

Delphi-Quellcode:
  login(form1.Username.Text,form1.Passwort.Text);
  PostNewStatus(form1.Text.Text);
  Logout;

wo liegt denn mein Denkfehler? Wenn ich ein Fragezeichen vor den Funktionsnamen stelle, oder den Funktionsnamen aus Dependency einfach rauskopiere, dann bekomme ich natürlich von Delphi eine Fehlermeldung wegen ungültiger Zeichen...

Gruß

Christian
Miniaturansicht angehängter Grafiken
screenshot.jpg  
Christian
D2007 Pro geschäftlich D7 personal privat
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

AW: Problem beim Einbinden einer DLL

  Alt 23. Jul 2010, 16:16
Was heißt: "bekomme es nicht hin"? Die Fehlermeldung kennt mein Delphi nicht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
ele

Registriert seit: 18. Feb 2009
129 Beiträge
 
Delphi 2010 Professional
 
#3

AW: Problem beim Einbinden einer DLL

  Alt 23. Jul 2010, 17:24
Es handelt sich dabei um eine C++ Bibliothek. Deshalb fehlt bei deinen Deklarationen das stdcall.

Das grössere Problem ist der Datentyp QString- welcher kaum mit einem Delphi String übereinstimmt. Du müsstest den QString in Delphi implementieren. Ich kann leider nicht weiterhelfen. In 5min ist bei mir Feierabend und Urlaub.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Problem beim Einbinden einer DLL

  Alt 23. Jul 2010, 17:31
Oder man bastelt einen Wrapper in c++ der dies in C-Funktionen umlenkt
Markus Kinzler
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#5

AW: Problem beim Einbinden einer DLL

  Alt 23. Jul 2010, 17:43
Du hast bei der DLL relativ schlechte Karten.
Die Funktionen haben keine normalen Namen sondern wurden durch einen C++ Compiler erzeugt.
Man nennt das decorated function names oder auch Name mangling.
Nur der passende(*) C++ Compiler kann diese Funktionen problemlos aufrufen.

*) leider gibt es keinen Standard für das Name Mangling.

Ausserdem deutet der Name der DLL an, dass QT verwendet wurde.
Nur mit C++ kommst du da weiter.
Andreas
  Mit Zitat antworten Zitat
SlaterBenelli

Registriert seit: 4. Feb 2008
Ort: Frankfurt am Main
33 Beiträge
 
Delphi 2007 Professional
 
#6

AW: Problem beim Einbinden einer DLL

  Alt 25. Jul 2010, 14:30
ok, Danke für Eure Antworten...

Also wäre mein Versuch die so aufzurufen gar nicht falsch gewesen?

Kennt einer eine Twitter DLL die ich für meine Tests nehmen könnte?

Cheers

Chris
Christian
D2007 Pro geschäftlich D7 personal privat
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.114 Beiträge
 
Delphi 12 Athens
 
#7

AW: Problem beim Einbinden einer DLL

  Alt 25. Jul 2010, 14:53
Notfalls ... Soooo schwer ist die Twitter-API nun auch nicht.
Also warum nicht direkt mit dieser reden?
http://apiwiki.twitter.com/Twitter-API-Documentation
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
SlaterBenelli

Registriert seit: 4. Feb 2008
Ort: Frankfurt am Main
33 Beiträge
 
Delphi 2007 Professional
 
#8

AW: Problem beim Einbinden einer DLL

  Alt 27. Jul 2010, 11:29
Ok, bisher habe ich mich mit XML und so noch nicht wirklich beschäftigt... kennt einer ein Tutorial dazu?

Vielen Dank für Eure Hilfe!
Christian
D2007 Pro geschäftlich D7 personal privat
  Mit Zitat antworten Zitat
Antwort Antwort


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 10:20 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