M
Hi,
ich habe das gleiche Problem wie handyman, nur ich exportiere aus der dll eine Klasse
Auszug aus dem DLL-Code
/---------------------------------------------------------------------------
#ifdef __DLL__
#define EXP_CLASS __declspec(dllexport)
#endif // __DLL__
#ifndef __DLL__
#define EXP_CLASS __declspec(dllimport)
#endif // NOT __DLL__
class EXP_CLASS TDrucker_tools : public TControl
{
public:
...
void SetFont(TFont *Schrift, float groesse);
...
};
//---------------------------------------------------------------------------
void TDrucker_tools::SetFont(TFont *Schrift, float groesse)
{
if (Schrift != NULL)
{
Ausgabe->Font->Assign(Schrift); // <<<<<<===== FEHLER ?????
Ausgabe->Font->PixelsPerInch = GetDruckerInfo(di_hoehe_dpi,false);
// muss noch die Größe von mm in px umrechnen
Ausgabe->Font->Size = (int) groesse;
}
}
und im Programm rufe ich dann so auf
TFont *Ueberschrift = new TFont;
TDrucker_tools *Druck = new TDrucker_tools(NULL);
AnsiString TextT = "HgQ᎙ ";
Ueberschrift->Name = "Arial Black";
Ueberschrift->Size = 10;
Ueberschrift->Color = clBlack;
Druck->BeginDoc();
Druck->SetMM(true);
Druck->SetFont(Ueberschrift, 10.0);
Druck->TextLeft(20, 20 ,TextT);
Druck->Linie(20, 20, 80, 20, clBlack, psSolid, 0.1);
Druck->Linie(20, 20, 80, 20 + Druck->FontHeight(TextT), clBlack, psSolid, 0.1);
}
Druck->EndDoc();
Druck->ShowPreview();
delete Ueberschrift;
delete Druck;
Was soll die Fehlermeldung ??
... Ach noch etwas, baue ich das ganze in eine Funktion innerhalb der DLL funktioniert es ohne Fehlermeldung !!
Gruß Mario