Einzelnen Beitrag anzeigen

khm8

Registriert seit: 25. Mär 2014
6 Beiträge
 
#1

DLL bei 64Bit-System wird nicht geladen

  Alt 25. Mär 2014, 14:16
Delphi-Version: 7
Hallo,
ich habe leider nicht viel Ahnung vom Programmieren, darf aber ein Programm von einem Kollegen übernehmen und soll es für Windows 7 64Bit umschreiben.
Kurz zur Umgebung:
Delphi 7 auf einer VMWare mit WIN7 64Bit

Hier mal ein Code-Auszug:
Code:
function LoadIK220DLL(DLLName:String):Bool32;
var
err:Boolean;

begin
try
DLLName := PAnsiChar(ExtractFilePath(Application.ExeName)+DLLName);
if FileExists(DLLName) then
begin
ShowMessage('Mich gibt es');
ShowMessage(DLLName);
SetLastError(0);
DLLHandle := LoadLibrary(Pchar(DLLName));
if DLLHandle = 0 then
ShowMessage(SysErrorMessage(GetLastError));
end else
begin
ShowMessage('Datei IK220DLL64.dll gibt es nicht!');
DLLHandle := 0;
exit;
end;
An dem Programm wurde sonst nichts geändert. Es soll halt jetzt nur statt der 32Bit-DLL die 64Bit-DLL geladen werden.
Aber der DLLHandle gibt immer 0 zurück und die mir nichts sagende Fehlermeldung ist:

"%1 ist keine zulässige Win32-Anwendung"

Die gleiche Meldung kommt übrigens auch, wenn ich das Programm unter XP laufen lassen will und die 64Bit-DLL geladen werden soll.
Nehme ich die alte 32Bit-DLL geht es (auch bei Win7).

Hat jemand eine Idee, woran das liegen kann?

Vielen Dank schon einmal für eure Hilfe.

Geändert von khm8 (25. Mär 2014 um 14:20 Uhr)
  Mit Zitat antworten Zitat