Einzelnen Beitrag anzeigen

Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#2

AW: Problem beim einbinden einer in c geschrieben dll

  Alt 1. Sep 2013, 16:42
Wieso verwendest du nicht die angebotene COM/DCOM-Schnittstelle?
Einfach den Anweisungen in readme.txt "2.3. Using the COM interface" folgen.
Dann in Delphi unter Projekt -> Typbibliothek importieren die Typbibliothek "Screen reader API COM Server 1.0" einlesen.
Durch das Importieren der TLB vermeidest du alle Fehler die ggf. beim Übersetzen von C-Headerfiles nach Delphi auftreten können.
Und dann so benützen:
Delphi-Quellcode:
var
  x : OleVariant;
begin
  x := CreateOleObject('ScreenReaderAPI.Interface');
  x.SapiEnable(true);
  x.SayString('hello world', true);
  // ungetestet - bitte selber weiterforschen
Zusatzinfo, falls du dennoch die C-Funktionen verwenden willst:
1.) die Funktionsnamen sind case-sensitive; d.h. es kommt auf die Groß-/Kleinschreibung an.
Ein falscher Buchstabe und der Fehler "procedureinsprungspunkt nicht gefunden" kommt zum Vorschein.
2.) um genau zu untersuchen welche Funktionen in einer DLL sind eignet sich das Programm Dependency Walker. (sehr nützliches Tool das zur Grundausstattung jedes Windows Programmierers gehört)
fork me on Github

Geändert von sx2008 ( 1. Sep 2013 um 16:50 Uhr)
  Mit Zitat antworten Zitat