Hola a todo@s, tengo un problemilla con la carga dinamica de una libreria dll, que no he conseguido encontrar la solucion, haber que os parece.
Nota: La libreria lo que hace es mostrar un formulario, y si no la cargo dinamicamente (LoadLibrary), no da ningun error y funciona correctamente.
Codigo de la dll
Código Delphi
[-]procedure MostrarFormulario();
begin
principal := Tprincipal.Create(nil);
try
principal.ShowModal;
finally
principal.Free;
end;
end;
exports
MostrarFormulario;
codigo de la llamada a la dll
Código Delphi
[-]procedure TfrmPrueba.cargaDeLibrerias();
var
handleDll : THandle;
mostrarFormulario : procedure(); Stdcall;
begin
handleDll := LoadLibrary('dllEnvasadora.dll');
if (handleDll > 32) then
begin
mostrarFormulario := GetProcAddress(handleDll, 'mostrarFormulario');
mostrarFormulario;
FreeLibrary(handleDll);
end;
end;
Haber que os parece, y si sabeis donde esta el error, porque el mensaje que me sale es:
Código:
Access violation at address 00000000. Read of address 00000000
PD: Gracias de antemano