Witam wszystkich.
Tytuł wątku może nie końca przedstawia problem, ale ...
Pytanie kieruję głównie do @olesio, ponieważ wiem, że on tym modułem się też bawił..
A więc, moduł dllloader.pas, służy, między innymi, do tego że możemy używać dllki, które są wkompilowane w zasoby:
Poniższy fragment kodu, działa bez zażaleń:
var DLL_Loader : TDLLLoader;
DLL_Data : TResourceStream;
......
......
......
DLL_Loader := TDLLLoader.Create;
DLL_Data := TResourceStream.Create(hInstance, 'LIBXML', RT_RCDATA);
DLL_Loader.Load(DLL_Data);
DLL_Data.Destroy;
with DLL_Loader do
begin
xmVerXMLLib := FindExport('xmVerXMLLib');
...
...
end;
ALE, działa on prawidłowo w D2007
Niestety w XE3 przy próbie:
DLL_Loader.Load(DLL_Data);
wyrzuca AV :(
Przetestowałem kilka programów, które korzystają z tego modułu i we wszystkich przypadkach, efekt jest ten sam :(
Czy jest to kwestia, specyficznych ustawień środowiska, czy wina samego modułu?
Wszelkie wskazówki mile widziane..
- dlltools.rar (839 KB) - ściągnięć: 182