I'm a programmer using Microsoft Visual FoxPro for daily work. I'm trying to run a self written program on wine. This program uses several Windows API functions. An example is: DECLARE INTEGER ShellExecute IN z:/usr/lib/wine/shell32.dll.so ; INTEGER, STRING, STRING, STRING, STRING, INTEGER ShellExecute( 0, "open", "notepad.exe", "", "", 1 ) The DECLARE line itself seems to work but the actual call to ShellExecute() raises an error (DLL file is missing or invalid). As the DLL file is there I think it's looking invalid to VFP. The same happens with any other Win32API function call I tried. FWIW, the syntax in Visual Basic 6 is nearly the same. Perhaps there's a solution for VB6 that works for VFP, too? Any other ideas? TIA, Markus
Markus Winhard wrote:> I'm a programmer using Microsoft Visual FoxPro for daily work. I'm > trying to run a self written program on wine. This program uses several > Windows API functions. An example is: > > DECLARE INTEGER ShellExecute IN z:/usr/lib/wine/shell32.dll.so ; > INTEGER, STRING, STRING, STRING, STRING, INTEGER > > ShellExecute( 0, "open", "notepad.exe", "", "", 1 ) > > The DECLARE line itself seems to work but the actual call to > ShellExecute() raises an error (DLL file is missing or invalid). As the > DLL file is there I think it's looking invalid to VFP. The same happens > with any other Win32API function call I tried.I know nothing about this, so what follows is wild speculation. The first thing I notice is that you specified "z:/usr/lib/wine/shell32.dll.so". It strikes me that that is unlikely to be what you would use under Windows ;) Perhaps try whatever it is under Windows that you would use? I think that Wine should find the builtin version of shell32.dll without you specifying an absolute path. Wine does some tricks with DLLs, and I would not be surprised if having the ".so" on the end of the filename also breaks things.