AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

LoadLibrary DLL Laden

Ein Thema von Alterauge · begonnen am 10. Mai 2013 · letzter Beitrag vom 10. Mai 2013
Antwort Antwort
Seite 1 von 2  1 2      
Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#1

LoadLibrary DLL Laden

  Alt 10. Mai 2013, 10:34
Hallo,
möchte gerne eine DLL laden und eine Rückmeldung
bekommen!

Delphi-Quellcode:
procedure ImportDLL;
var
  hDLL: THandle;
  sDLLPath: string;
begin
  sDLLPath := ExtractFileDir ('C:\OESoft\matrix32.dll');
  hDLL := LoadLibrary(sDLLPath); // hier ist der Fehler ! [DCC Fehler] Unit1.pas(192): E2010 Inkompatible Typen: 'string' und 'PWideChar'
  if hDLL = 0 then begin
    ShowMessage('DLL konnte nicht geladen werden.');
  end else begin

 end;
end;
Was soll am String falsch sein ?
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: LoadLibrary DLL Laden

  Alt 10. Mai 2013, 10:35
Erstens musst Du den vollen Dateinamen angeben und nicht nur das Verzeichnis. Und der Parameter ist PChar.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all

Geändert von Union (10. Mai 2013 um 10:42 Uhr)
  Mit Zitat antworten Zitat
Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#3

AW: LoadLibrary DLL Laden

  Alt 10. Mai 2013, 10:38
LoadLibrary erwartet keinen String, sondern ein PWideChar. Steht doch so in der Fehlermeldung
  Mit Zitat antworten Zitat
Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#4

AW: LoadLibrary DLL Laden

  Alt 10. Mai 2013, 10:49
Mit vollen Dateinamen meinst Du :

 sDLLPath := ExtractFileDir ('C:\OESoft\matrix32.dll')+ 'matrix32.dll';

PWideChar müssste wie aussehen?
  Mit Zitat antworten Zitat
Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#5

AW: LoadLibrary DLL Laden

  Alt 10. Mai 2013, 10:54
Such dir was aus...
Delphi-Quellcode:
procedure ImportDLL;
var
  hDLL: THandle;
  sDLLPath: string;
begin
  sDLLPath := 'C:\OESoft\matrix32.dll';
  hDLL := LoadLibrary(PWideChar(sDLLPath));
  if hDLL = 0 then
    ShowMessage('DLL konnte nicht geladen werden.')
  else
    ShowMessage('Alles ist Tutti!');
end;
Delphi-Quellcode:
procedure ImportDLL;
var
  hDLL: THandle;
begin
  hDLL := LoadLibrary('C:\OESoft\matrix32.dll');
  if hDLL = 0 then
    ShowMessage('DLL konnte nicht geladen werden.')
  else
    ShowMessage('Alles ist Tutti!');
end;
Delphi-Quellcode:
procedure ImportDLL;
var
  hDLL: THandle;
  sDLLPath: PWideChar;
begin
  sDLLPath := 'C:\OESoft\matrix32.dll';
  hDLL := LoadLibrary(sDLLPath);
  if hDLL = 0 then
    ShowMessage('DLL konnte nicht geladen werden.')
  else
    ShowMessage('Alles ist Tutti!');
end;
  Mit Zitat antworten Zitat
Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#6

AW: LoadLibrary DLL Laden

  Alt 10. Mai 2013, 10:59
Hallo Morphie,
erstmal vielen Dank für Deine schnelle Hilfe!

Habe jetzt nur noch ein Problem, bekomme keine Meldung zurück?

Delphi-Quellcode:
 ShowMessage('DLL konnte nicht geladen werden.')
  else
    ShowMessage('Alles ist Tutti!');
  Mit Zitat antworten Zitat
Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#7

AW: LoadLibrary DLL Laden

  Alt 10. Mai 2013, 11:01
Wie du bekommst keine Meldung zurück? Wo rufst du die Prozedur denn auf?
Zeig am besten mal die komplette Unit, in der du die DLL aufrufen willst.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: LoadLibrary DLL Laden

  Alt 10. Mai 2013, 11:03
Ich wieß nicht, wie du deine Prozedur aufrufst, aber funktioniert ein bedingungsloses ShowMessage() am Anfang überhaupt?
  Mit Zitat antworten Zitat
Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#9

AW: LoadLibrary DLL Laden

  Alt 10. Mai 2013, 11:06
Hallo Morphie,
ist das erstemal, dass ich eine DLL einbinden möchte!

Das war alles an Quelltext bezüglich DLL, habe bestimmt was vergessen oder?

Hallo Günther,
ob eine ShowMessage am Anfang überhaupt funktioniert, weiß ich auch nicht?

Geändert von Alterauge (10. Mai 2013 um 11:09 Uhr)
  Mit Zitat antworten Zitat
Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#10

AW: LoadLibrary DLL Laden

  Alt 10. Mai 2013, 11:08
Du musst doch irgendwie die Prozedur "ImportDLL" aufrufen...
z.B. wenn du auf einen Button klickst oder so?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz