Thema: Delphi Char an DLL übergeben

Einzelnen Beitrag anzeigen

Andru

Registriert seit: 1. Feb 2006
Ort: Salzgitter
24 Beiträge
 
Delphi 6 Enterprise
 
#4

Re: Char an DLL übergeben

  Alt 4. Sep 2006, 15:52
Zitat von cringely:
Zitat von JasonDX:

Zitat von Andru:
Was mach ich bei LIVEMODE? Hier steht mode=LOW_DELAY_MODE ... kann ich hier eine Konstante definieren?
LIVEMODE scheint ein selbst definierter Datentyp zu sein. Hier sollte in der Dokumentation beschrieben sein, was er genau ist. Er wird wahrscheinlich ein struct (Delphi: (Delphi-Referenz durchsuchenpacked)Delphi-Referenz durchsuchenRecord) sein, da laesst sich aber ohne genauere angaben nur darueber spekulieren.

greetz
Mike
Ich denke, bei LIVEMODE wird es sich um eine Kontante oder einen enumerierten Typen handeln - zumindest sind die Anzeichen dazu da. Die sollten wohl in einer .h-Datei (bei C/C++ Quellen) oder in dem Source direkt angegeben sein. Bei enumerierten Typen ist ja die Reihenfolge wichtig, bei Konstanten einfach nur der Wert.

Grüße.

Also leider ist in der Doku nicht mehr zu erkennen außer halt dem genannten Wert.
Denke aber, dass ich dort einen String übergeben kann.


Zitat von cringely:
/edit
Das "char" sollte wohl eher "*char ip" heißen, also eine Zeichenkette - ich kann mir nicht vorstellen, dass eine IP durch ein Zeichen komplett abgebildet werden kann. Du kannst ein String dort übergeben, aber wichtig bei DLLs ist, dass Du 'shortstring' benutzen mußt, da das C-Runtime-Environment (welche durch die DLL-Ansteuerung eigentlich verwendet wird) den "normalen" Stringtypen von Delphi nicht interpretieren kann. Shortstring ist auf 255 Zeichen begrenzt - sollte aber locker für ipv4 bis ipv6 reichen
Du hast Recht: In der Doku steht Char* - nur dachte ich fälschlicherweise, dass es sich um einen Anhang handelt, der
dann später erläutert werrden sollte. Hatte dazu allerdings auch Nichts gefunden.
Und vielen Dank für den Tipp mit dem ShortString. Wusste ich auch nicht, dass C nur damit umgehen kann.

Hab jetzt jedenfalls eine Menge, die ich nun ausprobieren kann.

Danke Euch beiden nochmals!


Gruß Andru
  Mit Zitat antworten Zitat