Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   fremd DLL einbinden (https://www.delphipraxis.net/148277-fremd-dll-einbinden.html)

judoka 26. Feb 2010 14:40


fremd DLL einbinden
 
Liebe Delphi User ich verzweifele langsam bald. Wer kann mir bitte helfen?

Habe die RTF2HTML DLLs von easybyte.com erworben. Laut Beschreibung muss die DLL in Delphi nur eingebunden werden, aber
es gibt weder eine Anleitung noch Beispiel dafür.

Geliefert wurde EasyByte.DLL und 3 weitere DLLs sowie eine Easybyte.tlb

Folgender Beispiel Code in ASP wurde mit geliefert.

Option Explicit
Dim objConverter
dim strHTML

Set objConverter = Server.CreateObject("EasyByte.RTF2HTMLv8")
objConverter.HTML_Title = "Test if control is loaded"
Response.Write(objConverter.HTML_Title)

objConverter.DoDebug = "no"
objConverter.HTML_Colour = "FFAAFF"
objConverter.RTF_Text = "{\rtf1 <Hello!> \par }}"
objConverter.Generator = "Demo 1"
objConverter.Links = "yes"
objConverter.ConvertImages = "no"
objConverter.CleanRTF = "yes"
strHTML = objConverter.ConvertRTF
Response.Write(strHTML)

SET objConverter = Nothing


wie muss das in Delphi umgesetzt werden?
Weitere Infos unter www.easybyte.com

DeddyH 26. Feb 2010 14:52

Re: fremd DLL einbinden
 
Nicht dass ich davon jetzt die Wahnsinns-Ahnung hätte, aber hast Du das einmal versucht?

mjustin 26. Feb 2010 14:56

Re: fremd DLL einbinden
 
Zitat:

Zitat von judoka
Habe die RTF2HTML DLLs von easybyte.com erworben. Laut Beschreibung muss die DLL in Delphi nur eingebunden werden, aber
es gibt weder eine Anleitung noch Beispiel dafür.

Die Firma schwärmt ja von ihrem 'fanatischen' Support, kann denn unter

http://www.easybyte.com/support/index.html

eventuell Doku angefordert werden? Bei dem Preis ...

sirius 26. Feb 2010 15:00

Re: fremd DLL einbinden
 
Das ist doch ein COM-Objekt. Lass die von Delphi erstmal eine TypBibliothek "erstellen" /importieren.

judoka 26. Feb 2010 16:29

Re: fremd DLL einbinden
 
Die kennen sich leider nicht mit Delphi aus!

DeddyH 26. Feb 2010 16:30

Re: fremd DLL einbinden
 
Hast Du den ActiveX-Import bereits versucht?

judoka 26. Feb 2010 16:43

Re: fremd DLL einbinden
 
Zitat:

Zitat von DeddyH
Hast Du den ActiveX-Import bereits versucht?

Leider gibt es kein ActiveX-Import Möglichkeiten dafür.

judoka 26. Feb 2010 16:44

Re: fremd DLL einbinden
 
Zitat:

Zitat von sirius
Das ist doch ein COM-Objekt. Lass die von Delphi erstmal eine TypBibliothek "erstellen" /importieren.

Wo kann ich nachlesen wie eine TypBibliothek erstellt wird?

DeddyH 26. Feb 2010 16:48

Re: fremd DLL einbinden
 
Den oben verlinkten Thread hast Du schon durchgelesen?

judoka 26. Feb 2010 16:54

Re: fremd DLL einbinden
 
Zitat:

Zitat von DeddyH
Den oben verlinkten Thread hast Du schon durchgelesen?

Ja - aber das hilft mir nicht weiter, da ich nur die DLLs habe und diese TLB datei.

Aus diesen habe ich ein unit EasyByte_TLB.pas erzeugt

aber jetzt wie weiter ????

DeddyH 26. Feb 2010 16:58

Re: fremd DLL einbinden
 
Ich hab kein D2005, aber Du bist vermutlich über "Komponenten - Komponente importieren" gegangen, oder? Dann müsstest Du im Anschluss eigentlich eine Komponente finden (ich würde einmal auf dem Reiter "ActiveX" nachsehen).

hoika 26. Feb 2010 17:16

Re: fremd DLL einbinden
 
Hallo,

die XXX_TLB.Pas
enthält doch schon alles.

Jetzt musst du damit nur noch ein COM-Objekt erzeugen.


Heiko

judoka 4. Mär 2010 08:25

Re: fremd DLL einbinden
 
Zitat:

Zitat von hoika
Hallo,

die XXX_TLB.Pas
enthält doch schon alles.

Jetzt musst du damit nur noch ein COM-Objekt erzeugen.
Heiko

Wo kann ich bitte nachlesen wie das COM-Objekt erzeugt wird?

judoka 4. Mär 2010 08:42

Re: fremd DLL einbinden
 
[code=delphi]
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

EasyByte_TLB, ComObj,

Dialogs, StdCtrls;

type

TmyEasyRtm2HtmlDll = class(TAutoObject, RTF2HTMLv8 ) ;

TForm2 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);

private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;

var
Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);

var myEasyRtm2Html : TmyEasyRtm2HtmlDll;*
strHTML : STRING;

begin
myEasyRtm2Html := TmyEasyRtm2HtmlDll.Create *;

// myEasyRtm2Html := CreateObject('EasyByte.RTF2HTMLv8') ;

// ?????????????
// soweit keine Fehlermeldung nur kann ich nicht auf die folgenden proceduren zugreifen????
// wer kann helfen - sehe den Wald vor lauter Bäumen nicht
// it works not


myEasyRtm2Html.HTML_Title := 'Test if control is loaded';
myEasyRtm2Html.DoDebug := 'no' ;
myEasyRtm2Html.HTML_Colour := 'FFAAFF' ;
Code:
  myEasyRtm2Html.RTF_Text := '{\rtf1 <Hello!> \par }}' ;
  myEasyRtm2Html.Generator := 'Demo 1' ;
  myEasyRtm2Html.Links := 'yes' ;
  myEasyRtm2Html.ConvertImages := 'no' ;
  myEasyRtm2Html.CleanRTF := 'yes' ;

  strHTML := myEasyRtm2Html.ConvertRTF ;

end;
[edit=SirThornberry]Delphi-Tags gesetzt - nächstes mal bitte selbst machen. Mfg, SirThornberry[/edit]

sirius 4. Mär 2010 08:54

Re: fremd DLL einbinden
 
Ich würde darauf tippen:
Delphi-Quellcode:
var myEasyRtm2Html : ImyEasyRtm2HtmlDll;
strHTML : STRING;

begin
myEasyRtm2Html := TmyEasyRtm2HtmlDll.Create as ImyEasyRtm2HtmlDll;

//und hier dann wie gewohnt weiter
Edit: und lass dieses type (TmyEasyRtm2HtmlDll = class(TAutoObject, RTF2HTMLv8 ) weg!

SirThornberry 4. Mär 2010 09:19

Re: fremd DLL einbinden
 
Ohne dir jetzt zu nahe treten zu wollen: Ich glaub nicht das du speziell bei Verwendung der DLL nicht weiter kommst sondern habe den Eindruck das dir generell einige Grundlagen fehlen (unabhängig davon welche DLL oder welche Active-X-Komponente du verwenden willst).
Ich würde dir nahe legen erstmal die entsprechenden Tutorials durchzuarbeiten: http://www.delphi-treff.de/tutorials/


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:11 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz