Hello Jos�,

Monday, August 20, 2001, 3:03:17 AM, you wrote:

JSD>         Hello and thank in advance for your time and help.

JSD>          My question is not related to avifile. i's about one part of the 
program, 
JSD> the library that allows avifile to load the win32 codecs. I'm working in a 
JSD> telerobotics project in Linux ( in order to use real time ) but I need to 
JSD> use some native dlls ( cyberimpact.dll a driver of a joystick).
JSD>         First I tried to use wine but It didn't work, then in the wine-devel 
JSD> mailing list I read about your program and It could be used as a wrapper to 
JSD> allow wine load native dlls. So I downloaded your program compiled it, I 
JSD> linked the lilloader.a to my .c file ( the prueba.c I'm sending to you), the 
JSD> result can be read in out1.txt, and It seemed to qork perfectly.
JSD>         However when I tried to execute one function of the dll ( prueba3.c), I 
got 
JSD> a segmention fault. I tried to debug the library an at first sight 
JSD> everything was OK, the problem is the memory address returned it's out of 
JSD> scope.
JSD>         My questions are:

JSD>         Is possible to load any dll?

JSD>         Am I using well the library, in other words is this the rigth approach?

JSD>         Maybe is the problem the wsock.dll stuff that I obtained when loading the 
JSD> library, in that case does anyone know how to fix it?


JSD>         PLEASE send an answer as quickly as possible even a negative answer, I'm 
JSD> really stucked with that, and I need to present result to my boss soon.

JSD> Jos� Soriano D�az
JSD> Escuela Superior de Ingenieros de Sevilla


 libloader without modifications is able to load only a few libraries.
It doesn't provide complete emulation of Win32, only ~100
implementations of functions that are usually called by audio or video
codecs. These implementations are sometimes very rough ( e.g. if video
codec for some reason tries to discover the position of mouse cursor on the
screen using Win32 function GetCursorPos(), it'll receive fixed numbers ).
New functions are added when it's needed.
 Not any library can be loaded ( even theoretically ) with this
loader. If your DLL must communicate with kernel-space driver, you
can give up your project.
 You are using loader correctly. I can't say what's going wrong in your
case. Normally, if loader fails because of missing required external
function, it prints 'Called unk_xxxx' just before crash, so you know
what function is missing. It doesn't happen in your case.
Maybe the DLL is not satisfied by some of function implementations.
Try to do this:

extern int LOADER_DEBUG;
( in main() )
LOADER_DEBUG=1;

-- 
Best regards,
 Eugene                            mailto:[EMAIL PROTECTED]



_______________________________________________
Avifile mailing list
[EMAIL PROTECTED]
http://prak.org/mailman/listinfo/avifile

Reply via email to