Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#5

AW: Handle eigener DLL bei Initialisierung

  Alt 28. Feb 2011, 13:45
Delphi-Quellcode:
  procedure LibraryProc(Reason: integer);
  begin
    case (Reason) of
      DLL_PROCESS_ATTACH:
      begin
        //
      end;
      DLL_PROCESS_DETACH:
      begin
        //
      end;
    end;
  end;
Kann oder btw.. muss ich meine Anwendung also die EXE die meine DLL verwendet
mit der Libraryproc iniziieren?

Hab da im moment ein problem eine Classe zu erstellen innerhalb der DLL

SKAERO_InitSkin..

In der EXE
SKAERO_InitSkin(hMain, 'Sample.ske');

In der DLL
Delphi-Quellcode:
function SKAERO_InitSkin(hMain: HWND; ConfigFile: string): BOOL; stdcall;
begin
  Result := SkinEngine.InitSkin(hMain, ConfigFile);
end;

Soll meinen Skin einladen und an dem Handle hMain übergeben.
Irgendwo hängt es .

Delphi-Quellcode:
function TSkinEngine.InitSkin(hMain: HWND; zConfigFile: string): BOOL;
var
  wExePath: string;
  zTip: PAnsiChar;
  ImageFile: PAnsiChar;
  rc: TRect;
  x, y: integer;
  CloseButton: TSkinImageButton;
  RestoreButton: TSkinImageButton;
  MaximizeButton: TSkinImageButton;
  MinimizeButton: TSkinImageButton;

begin

  // Speichere das HauptFenster Handle
  MainWindow(hMain);
  // ermittle die Fenster größe
  GetClientRect(hMain, rc);
  // erstelle die Class TSkinConfig
  FConfig := TSkinConfig.Create;

kann das mit der LibraryProc zu tun haben?

FConfig := TSkinConfig.Create;
Kann ich nicht auflösen einzige Meldung zu viele aufeinanderfolgende Fehler.

gruss

Geändert von EWeiss (28. Feb 2011 um 13:48 Uhr)
  Mit Zitat antworten Zitat