Problems running wine.

2000-07-11 Thread Mo DeJong

Hi all.

I have been trying to get the CVS version of wine up
and running but I am having no luck. When I try to
run my program under wine, I get an error like this:

trace:heap:HeapAlloc (4041,0002,0018): returning 40413414
warn:thread:THREAD_InitStack Thread stack size is 32 MB.
trace:virtual:VirtualAlloc  02027000 1000 0040
0805f458: terminate_process( handle=-1, exit_code=14 )
0805f458: terminate_process() = 0 { self=1 }
0805f458: *killed* exit_code=14
/home/mo/.wine/user.reg: saving key USER\\mo
/home/mo/.wine/system.reg: saving key MACHINE
mo(/mnt/image/win_root/Tcl_Xmingw/bin)% /home/mo/.wine/userdef.reg: 
saving key USER\\.Default
/home/mo/.wine/wine.userreg: saving key USER

I figured that was a memory problem so I added some
more swap space and ran it again, that seemed to work
a little better, but it broke like so:

trace:heap:HeapFree (4041,0002,40423f24): returning TRUE
trace:heap:HeapFree (4041,0002,40423f00): returning TRUE
trace:module:MODULE_InitDLL (0x40423e6c,PROCESS_DETACH,0x1) - RETURN 1
trace:module:MODULE_InitDLL (KERNEL32.dll,PROCESS_DETACH,0x1) - CALL
trace:relay:PE_InitDLL 
CallTo32(entryproc=0x4057916c,module=40574000,type=0,res=0x1)
trace:module:MODULE_InitDLL (0x40411fec,PROCESS_DETACH,0x1) - RETURN 1
trace:module:MODULE_InitDLL (ntdll.dll,PROCESS_DETACH,0x1) - CALL
trace:module:MODULE_InitDLL (0x40412150,PROCESS_DETACH,0x1) - RETURN 1
0805f458: terminate_process( handle=-1, exit_code=0 )
0877d5a0: *killed* exit_code=0
0805f458: terminate_process() = 0 { self=1 }
0805f458: *killed* exit_code=0


Does anyone know what is going one here?

I am trying to test out code that I created using mingw
to cross compile windows applications under Linux. I
do not need to test everything, I just want to run
the thing in wine as a sanity check for the compiler.
If wine really works well, I may end up running regression tests
for the windows application under wine. That would
be cool because I would not need to boot into windows.
This could also be a really good way to test out wine
itself. I will post more on that later if I get it working.

thanks
Mo DeJong
Red Hat Inc




Re: Link windows NT .lib

2000-07-11 Thread Andreas Mohr

Hello !

On Tue, Jul 11, 2000 at 09:23:28AM +0200, [EMAIL PROTECTED] wrote:
 Not exactly.
YES, exactly.
At least according to your description below.

 I got a chli.lib (NT) , a chli.h , a chli.dll (NT) and the API
 documentation.
 
 I used to link the lib to my C programs with MSVC under NT.
 
 I'm wondering how to link the lib file with GCC under Linux so calls to the
 DLL work under Linux.
This is EXACTLY what Winelib is supposed to do.
Again, read HOWTO-Winelib.

Andreas Mohr




Re: Link windows NT .lib

2000-07-11 Thread Ove Kaaven


On Tue, 11 Jul 2000, Andreas Mohr wrote:

 On Tue, Jul 11, 2000 at 09:23:28AM +0200, [EMAIL PROTECTED] wrote:
 
  I got a chli.lib (NT) , a chli.h , a chli.dll (NT) and the API
  documentation.
  
  I used to link the lib to my C programs with MSVC under NT.
  
  I'm wondering how to link the lib file with GCC under Linux so calls to the
  DLL work under Linux.
 This is EXACTLY what Winelib is supposed to do.

Perhaps Winelib could use a "wine-implib" tool or something... or is such
a tool already in the dllglue stuff that's part of the coveted elfdlls?




Re: HOWTO-winelib update

2000-07-11 Thread Wilbur N. Dale

On Mon, 10 Jul 2000, John R . Sheets wrote:
[snip]
 
 My personal take is that none of the above files should be included.
 After all, the WineLib examples are targeted for developers, who should
 be able to install autoconf and libtool (and automake?).  They are
 usually installed as part of a development environment anyways.
 
 John

OK. Thanks for the info. It is certainly not my intention to commit files
needlessly. I am new to automake, autoconf, and friends and I am still reading
the fine manual.  

I withdraw my patch and will try again next week. 

-- 
Wilbur Dale
Lumin Software BV
Zandheuvel 52 B
4901 HW Oosterhout (NB)
The Netherlands

phone: +31-(0)162-47.88.42
fax:   +31-(0)162-43.31.52




RE: Link windows NT .lib

2000-07-11 Thread Arnaud . ATOCH

Not exactly.

I got a chli.lib (NT) , a chli.h , a chli.dll (NT) and the API
documentation.

I used to link the lib to my C programs with MSVC under NT.

I'm wondering how to link the lib file with GCC under Linux so calls to the
DLL work under Linux.




Thanks.

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 10, 2000 20:22
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: Re: Link windows NT .lib




On Mon, 10 Jul 2000 [EMAIL PROTECTED] wrote:

 Hi,

 Sorry to ask for a maybe off-topic subject but :

 I got an old Windows NT 3.5 apps which runs fine (perfect but no shell
 commands i.e. I can't do a !dir ). It was provided with a binary lib
file
 (MSVC) , the header file and the API documention to wite C programs to
 perform specific tasks faster than with what they called procedure
files.

 I was wondering if I could drop NT platform to use Linux with Wine. The
 only
 point left without an answer is how to link the MS lib with GCC under
 Linux.

 This sound to me to be a GCC question but I couldn't find any
information
 in
 the GCC How-to and as the application works fine with Wine, I'm trying
in
 the wine-devel list.

 Thanks.

Let's see if I understand what you are asking.  You want to write c code
that calls fuctions in MSVC.DLL and compile it with gcc?

The way I know to do that is to write the c code as a winelib
program.  It would get at the dll with LoadLirary and GetProcAddress.

There is a HOWTO-winelib in winedocumetation.

Lawson

---cut here





YOU'RE PAYING TOO MUCH FOR THE INTERNET!
Juno now offers FREE Internet Access!
Try it today - there's no risk!  For your FREE software, visit:
http://dl.www.juno.com/get/tagj.




Re: Civ 2

2000-07-11 Thread Caolan McNamara

On Mon, 10 Jul 2000, Brad Pepers wrote:
 
 Well in my continued quest to get Civilization 2 working on Linux
 and Wine, I thought I'd ask some questions on the latest debug output
 I've got.
 
 I've noticed that Civ2 as its dieing is trying to post an error
 message box and I also noticed that at around the point where all
 goes wrong,  

I had my own set of wars with Civ2 and I have no solutions, but Im
interested in knowing if you used the inbuilt wine WinG or the
external windows dll. In either case I had an unimplemented 
"BITMAP_GetObject16" message with a length of 74 or thereabouts. 
Id pretty much imagine that all bets are off after this point. I did
make a fair stab at implementing this but still couldn't get any 
progress.

C.

Real Life: Caolan McNamara *  Mobile: +49-177-2938135
Work: [EMAIL PROTECTED] *  Work Ph.: +49-40-23646-672
URL: http://www.csn.ul.ie/~caolan  *  Sig: an oblique strategy
Tidy up




Re: Link windows NT .lib

2000-07-11 Thread Bertho Stultiens

Ove Kaaven wrote:
   I'm wondering how to link the lib file with GCC under Linux so
calls to the
   DLL work under Linux.
  This is EXACTLY what Winelib is supposed to do.
 
 Perhaps Winelib could use a "wine-implib" tool or something... or is such
 a tool already in the dllglue stuff that's part of the coveted elfdlls?

All you need is a .spec-file to specify the interface. Could be a
stripped down one (like the .def-files on windows). You cannot use
.lib-files because there format is not understood by the gnu toolchain.
However, someone could make a conversion utility from .lib to .spec...

Greetings Bertho




Re: Link windows NT .lib

2000-07-11 Thread Wilbur N. Dale

On Mon, 10 Jul 2000, [EMAIL PROTECTED] wrote:
 On Mon, 10 Jul 2000 [EMAIL PROTECTED] wrote:
[snip]
  I was wondering if I could drop NT platform to use Linux with Wine. The
  only
  point left without an answer is how to link the MS lib with GCC under
  Linux.
[snip]
[snip]
 Let's see if I understand what you are asking.  You want to write c code
 that calls fuctions in MSVC.DLL and compile it with gcc?
 
 The way I know to do that is to write the c code as a winelib
 program.  It would get at the dll with LoadLirary and GetProcAddress.
 
 There is a HOWTO-winelib in winedocumetation.

Unfortunately, the part of HOWTO-winelib on DLLs is still incomplete. I
submited a patch yesterday, but there were some (legitimate) objections to the
size of the files I submitted as examples. I withdrew the patch this morning.

Also, you refer to the library as .lib in the subject line.
Is this a static library? I don't know of any way to link a static library into
WineLib. Depending on how the library is to interact with your application, you
may be able to wrap the static library into a dynamic library and use WineLib.

If you don't mind large emails, send me a private email and I can give you the
examples and the most recent version of the HOWTO-winelib.

-- 
Wilbur Dale
Lumin Software BV
Zandheuvel 52 B
4901 HW Oosterhout (NB)
The Netherlands

phone: +31-(0)162-47.88.42
fax:   +31-(0)162-43.31.52




RE: Link windows NT .lib

2000-07-11 Thread Arnaud . ATOCH

Here is what I got so far trying to link.

[atoch@linux00 code]$ gcc -lm -ldl -L/usr/src/wine/dlls -L. -L/usr/src/wine
-lwine -lncurses -lutil chli.dll test.o -o test
chli.dll: file not recognized: File format not recognized
collect2: ld returned 1 exit status

[atoch@linux00 code]$ gcc -lm -ldl -L/usr/src/wine/dlls -L. -L/usr/src/wine
-lwine
-lncurses -lutil chli.lib test.o -o test
test.o: In function `main':
test.o(.text+0x15): undefined reference to `cfmini'
collect2: ld returned 1 exit status


=== test.c 

#include "hli.h"

int main(void)
{
int status = 0;
cfmini(status);
return status   ;
}

-Original Message-
From: Wilbur N. Dale [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, July 11, 2000 11:09
To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: Re: Link windows NT .lib


On Mon, 10 Jul 2000, [EMAIL PROTECTED] wrote:
 On Mon, 10 Jul 2000 [EMAIL PROTECTED] wrote:
[snip]
  I was wondering if I could drop NT platform to use Linux with Wine. The
  only
  point left without an answer is how to link the MS lib with GCC under
  Linux.
[snip]
[snip]
 Let's see if I understand what you are asking.  You want to write c code
 that calls fuctions in MSVC.DLL and compile it with gcc?
 
 The way I know to do that is to write the c code as a winelib
 program.  It would get at the dll with LoadLirary and GetProcAddress.
 
 There is a HOWTO-winelib in winedocumetation.

Unfortunately, the part of HOWTO-winelib on DLLs is still incomplete. I
submited a patch yesterday, but there were some (legitimate) objections to
the
size of the files I submitted as examples. I withdrew the patch this
morning.

Also, you refer to the library as .lib in the subject line.
Is this a static library? I don't know of any way to link a static library
into
WineLib. Depending on how the library is to interact with your application,
you
may be able to wrap the static library into a dynamic library and use
WineLib.

If you don't mind large emails, send me a private email and I can give you
the
examples and the most recent version of the HOWTO-winelib.

-- 
Wilbur Dale
Lumin Software BV
Zandheuvel 52 B
4901 HW Oosterhout (NB)
The Netherlands

phone: +31-(0)162-47.88.42
fax:   +31-(0)162-43.31.52




Re: Link windows NT .lib

2000-07-11 Thread Ove Kaaven


On Tue, 11 Jul 2000, Bertho Stultiens wrote:

 Ove Kaaven wrote:
I'm wondering how to link the lib file with GCC under Linux so
 calls to the
DLL work under Linux.
   This is EXACTLY what Winelib is supposed to do.
  
  Perhaps Winelib could use a "wine-implib" tool or something... or is such
  a tool already in the dllglue stuff that's part of the coveted elfdlls?
 
 All you need is a .spec-file to specify the interface. Could be a
 stripped down one (like the .def-files on windows).

Eh? I thought .spec files were supposed to be used for *exporting* a DLL
interface from ELF code... not to *import* a DLL interface from a Windows
.DLL file?! An "implib" does the latter, you know, taking a .DLL file, and
generating import stubs for each entry point the DLL exports, and making
an import library (.lib) file out of it. Or for wine-implib, perhaps an .a
or .o file? A simple version of wine-implib could just generate a
LoadLibrary and a bunch of GetProcAddress calls or something.




RE: Link windows NT .lib

2000-07-11 Thread Uwe Bonnes

[EMAIL PROTECTED] writes:
 Here is what I got so far trying to link.

Hallo,

I too want to join the discussion...

It still isn't said, what the library functions deliver. Do those
library functions call other windows functions or not?

If those functions are self sufficent, "all" you need to do is find a
linker that understand the MSVC format and build a Linx executable.

If these functions call other windows functions, you must check what
these functions are. If these functions are easy to emulate, I would
propose writing  wrapper functions ( with WINAPI calling convention)
transforming those functions into Unix Libc functions. Then again a
linker understanding MSVC format is needed and you would link your
code against the library and the wrapper.

If the library functions need the full fledged Windows Api, I think
Winelib won't buy you too much. As you don't have source, you can't
compile an application for anything else then X86. So build a normal
Windows executable and run with Wine or NT as you like. A winelib
application has nearly the same requirements as a windows application
running under Wine. But again I understand that a linker understanding 
MSVC libraries and running under Unix/Linux would be welcome. Perhaps
dlltools from the cygwin/mingw toolchain may help or implib, but I
don't know.

Bye

Uwe Bonnes[EMAIL PROTECTED]

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
- Tel. 06151 162516  Fax. 06151 164321 --




RE: Link windows NT .lib

2000-07-11 Thread Arnaud . ATOCH

The library is self sufficient.

Anyone knowing a linker able to link NT DLL to a Linux glib2.1 executable ?

-Original Message-
From: Uwe Bonnes [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, July 11, 2000 14:40
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Subject: RE: Link windows NT .lib


[EMAIL PROTECTED] writes:
 Here is what I got so far trying to link.

Hallo,

I too want to join the discussion...

It still isn't said, what the library functions deliver. Do those
library functions call other windows functions or not?

If those functions are self sufficent, "all" you need to do is find a
linker that understand the MSVC format and build a Linx executable.

If these functions call other windows functions, you must check what
these functions are. If these functions are easy to emulate, I would
propose writing  wrapper functions ( with WINAPI calling convention)
transforming those functions into Unix Libc functions. Then again a
linker understanding MSVC format is needed and you would link your
code against the library and the wrapper.

If the library functions need the full fledged Windows Api, I think
Winelib won't buy you too much. As you don't have source, you can't
compile an application for anything else then X86. So build a normal
Windows executable and run with Wine or NT as you like. A winelib
application has nearly the same requirements as a windows application
running under Wine. But again I understand that a linker understanding 
MSVC libraries and running under Unix/Linux would be welcome. Perhaps
dlltools from the cygwin/mingw toolchain may help or implib, but I
don't know.

Bye

Uwe Bonnes[EMAIL PROTECTED]

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
- Tel. 06151 162516  Fax. 06151 164321 --




RE: Link windows NT .lib

2000-07-11 Thread Uwe Bonnes

[EMAIL PROTECTED] writes:
 The library is self sufficient.
 
 Anyone knowing a linker able to link NT DLL to a Linux glib2.1 executable ?
 
Perhaps ask on the Mingw (http://www.eGroups.com/messages/mingw32/)
and cygwin mailing list too.

Bye

Uwe Bonnes[EMAIL PROTECTED]

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
- Tel. 06151 162516  Fax. 06151 164321 --




RE: Link windows NT .lib

2000-07-11 Thread Arnaud . ATOCH

How do you proceed when wine call native DLLs like gdi32.dll ?
How wine is linked so it nows how to call functions in gdi32.dll ?

Couldn't I use the same for my linux program be able to call chli.dll
exports ?

-Original Message-
From: Uwe Bonnes [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, July 11, 2000 14:57
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Subject: RE: Link windows NT .lib


[EMAIL PROTECTED] writes:
 The library is self sufficient.
 
 Anyone knowing a linker able to link NT DLL to a Linux glib2.1 executable
?
 
Perhaps ask on the Mingw (http://www.eGroups.com/messages/mingw32/)
and cygwin mailing list too.

Bye

Uwe Bonnes[EMAIL PROTECTED]

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
- Tel. 06151 162516  Fax. 06151 164321 --




RE: Link windows NT .lib

2000-07-11 Thread Uwe Bonnes

[EMAIL PROTECTED] writes:
 How do you proceed when wine call native DLLs like gdi32.dll ?
 How wine is linked so it nows how to call functions in gdi32.dll ?
 
 Couldn't I use the same for my linux program be able to call chli.dll
 exports ?
 

Hallo,

as you told in a previous posting, those dlls are self
sufficent. This means for me that you don't need USER, GDI or such. If 
your user program doesn't use functions from these libraries neither, you
don't have to link against them.

Wine and winelib however has a complete Loader facility that it can
resolve DLL calls. That way a windows executable running in wine or a
winelib executable has the abbility to resolve external
references. But to use that loader, you need "full-fledged" wine.

As you now talk about chli.dll, I think those .lib file you talk about 
are only stubs into that dlls and not static libraries and you will
need full fledged Wine/Winelib capabilities.

B.t.w.: Wine can't use native gdi/kernel/user and other core dlls and
reimplements them.

Bye

Uwe Bonnes[EMAIL PROTECTED]

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
- Tel. 06151 162516  Fax. 06151 164321 --





Re: wine.conf graphical front-end development

2000-07-11 Thread Francois Jacques

Hi Martin,

A few ideas thrown in...


 1. you can choose if you want to generate new or edit existing
wine.conf file.

Generating new wine.conf would have default value? The generated wine.conf
should have comments in it...


 2. choose a location of your wine.conf file

hmmm... that depends of the installation directory, eg. you install it
under /usr or /usr/local (...) IMHO, the default value should be
/usr/local/etc since default install directory should be /usr/local

this way we would get

binaries in /usr/local/bin
libraries in /usr/local/lib
.conf file in /usr/local/etc

Moreover, keep in mind each user can have a .winerc which overrides
wine.conf value. The wizard could have a "site" mode, where you change
settings in wine.conf (as root, typically) and a user mode where you can
change only the .winerc settings. I would be possible to switch in site
mode by prompting for root password...


 4. where the windows/profile/temp directory is
([wine] section of wine.conf file)

I haven't read the WINE Admin book but, if I were a sysadmin, I would setup
WINE this way (keep in mind it's not a devel sandbox...) Sysadmins comments
are welcomed here...

$TEMP (%temp%, in Windows) being assigned to /tmp
(/tmp being a different drive or partition)

$PROFILE being assigned to $HOME/.wine and it's where we would store
user.reg

wine.conf, system.reg and other system wide settings in /usr/local/etc (or
/usr/local/etc/wine)


 4.5 default wine look ([tweak.layout] section)

 5. you can choose if you want to answer more questions, or if it is
 enough
and you want save it and finish configuration.

 if you choosed more questions:

 6. dll load order

 7. things like "managed windows" ([x11drv] section)

 8. ports ([serialports] [parallelports] [spooler] sections)

 9. registry ([registry] section)

 10. complete screen, where you can see and edit everything

Ultimate wine hacker dream feature... The editor screen splits in two.
Upper pane is for wine.conf/.winerc editing. The bottom pane updates itself
with information for each setting, as you cursor move from line to line
(some OS/2 config.sys editors behaved like this)

Cheers,
Francois




Re: wine.conf graphical front-end development

2000-07-11 Thread Martin Pilka

hello petr!

 Now, it would be nice to find some way, how to make this utility
 "cross-desktop". What do I mean? Consider this: many people will use GNOME
 / KDE / Corel-desktop (How is it called?) or bare X with wine (and
 possibly something like "wine-desktop" ... maybe).
 
 I absolutelly think, the "wine.conf graphical front-end" for GNOME
 _should_ be a GNOME application (written using Gtk+ and gnome-libs),
 similary the KDE one should be written using Qt and the "bare wine" by
 using winelib.
 
 Now it would be nice not to "invent the wheel" for each desktop
 separately, but rather to create some "skeleton" for the app, with desktop
 specific addons, that would be possible to compile then separately for
 each desktop.

i forgot to write in my previous mail, that i already started to develop
it using tcl/tk 
with [incr tcl/itcr tk] extension. the final product will be distributed
as a 
half-statically linked executable, which will not require tcl/tk
installed on target machine,
but will depend on libraries like libX11. i'm not sure if it will be
"cross-desktop" enough...
what do you think?

 We can maybe use some meta-configuration file, that would describe, what
 the wine.conf entries are (including help), that would be distributed with
 each wine version, making the configuration program up-to-date.

i'm not sure what exactly you meant.
if some new option will be added in future wine version, how should
program decide, where
to put them in graphical i-face and how to integrate them with
"nice-look" goal in mind?
it can work pretty well if (for example) new "window look" will be added
(like "Win 2k")...
did you mean something like that?

 And Yes, the "wine.conf configurator" is not the only program, that is
 desktop-dependant and would be nice to be developed somehow "centrally"
 for all wine-desktop combinations. Consider e.g. 1) help browser (or
 better: the possibility to view windows .hlp files using native
 help-browser of the current desktop); or 2) integrating the
 component-systems between wine  the desktops; or 3) integrating "start
 menu" and "the desktop" between wine and the desktops (so that freshly
 installed program's entry will appear somwhere in the GNOME/KDE/whatever
 "start menu".)

i absolutely agree. "wine.conf front-end" should be developed with these
goals in mind.

martin




Re: wine.conf graphical front-end development

2000-07-11 Thread Martin Pilka

hello francois!

  1. you can choose if you want to generate new or edit existing
 wine.conf file.
 
 Generating new wine.conf would have default value? The generated wine.conf
 should have comments in it...

right, i meant something like that

  2. choose a location of your wine.conf file
 
 hmmm... that depends of the installation directory, eg. you install it
 under /usr or /usr/local (...) IMHO, the default value should be
 /usr/local/etc since default install directory should be /usr/local

it will look on usual locations, (like /usr/local/etc/wine.conf,
~/.winerc ...) and will create list-box with some possibilities for you.
also you can choose "other location" than suggested.

 this way we would get
 
 binaries in /usr/local/bin
 libraries in /usr/local/lib
 .conf file in /usr/local/etc
 
 Moreover, keep in mind each user can have a .winerc which overrides
 wine.conf value. The wizard could have a "site" mode, where you change
 settings in wine.conf (as root, typically) and a user mode where you can
 change only the .winerc settings. I would be possible to switch in site
 mode by prompting for root password...

maybe...maybe it don't have to care about things like that. if you would
like edit global wine.conf
file, you must have write permission to that file. if you don't have,
you will be noticed. 

 Ultimate wine hacker dream feature... The editor screen splits in two.
 Upper pane is for wine.conf/.winerc editing. The bottom pane updates itself
 with information for each setting, as you cursor move from line to line
 (some OS/2 config.sys editors behaved like this)

wow :-)
what's written in bottom pane, for example? isn't it the same as
comments in wine.conf file?

martin




Re: Link windows NT .lib

2000-07-11 Thread Eric Pouech

Uwe Bonnes wrote:
 
 [EMAIL PROTECTED] writes:
  How do you proceed when wine call native DLLs like gdi32.dll ?
  How wine is linked so it nows how to call functions in gdi32.dll ?
 
  Couldn't I use the same for my linux program be able to call chli.dll
  exports ?
from your small test program, what you need to do is
in a chli_imp.c file:

8--
#include "hli.h"

static HANDLE chli_handle = 0;

/* be sure prototype is correct. could be
int WINAPI cfmini(int*)
void cfmini(int*)
...
*/
int cfmini(int * p)
{
static void (*pcfmini)(int*) = 0;

if (!chli_handle) {
chli_handle = LoadLibrary("chli.dll");
if (!chli_handle) MESSSAGE("can't load lib\n");
}

if (!pcfmini) {
pcfmini = GetProcAddress(chli_handle, "cfmini");
if (!pcfmini) MESSSAGE("can't get proc address\n");
}
return (*pcfmini)(p);
}
8--
(the import tool produces the code automatically, and in a more efficient and reduced 
way)

HTH

A+
-- 
---
Eric Pouech (http://perso.wanadoo.fr/eric.pouech/)
"The future will be better tomorrow", Vice President Dan Quayle




WINE fix needed - $ paid

2000-07-11 Thread Jim Freeman

Anyone available/willing to do little snippets of quick-turnaround
WINE contract work?

Initially, I'd like to pay someone $US300 to write a technical
analysis of what WINE lacks that keeps 

http://www.ldscatalog.com/sggifs/download/PafSetup.exe

(both the setup program and the program it installs) from
running under WINE, and what would be involved in getting
the necessary pieces into the source that would make it run
(without Windows having to be installed).  

The analysis should enumerate the steps taken to make the
determinations (so I can vicariously dip my toe into WINE
internals and tools).

This would form the basis of a statement of work for getting
PAF to run under Linux/WINE, and creating a Debian package
for it.

If you know of anyone that can/will do this work, please let me
know.
==
Jim Freeman
[EMAIL PROTECTED]
Sovereign Software




DEADLOCK/ race conditition

2000-07-11 Thread Fowler

Hi ppl
 I'm getting the deadlock with WaitForSingleObject() as described 
in the deadlock thread. The strange thing is that maybe 1 out of 10
times trying to run this app it actually gets further.Maybe
theres some kind of race conditiion going on here?

I've managed to log it as it gets further/deadlocks with -debugmsg+ relay.
I've bzipped the logs and have them available at http://indigo.ie/~fowler/wine
as combined the logs come to nearly 20k.

log.deadlock.bz2 is where it hits the deadlock
and log.bz2 is where it doesnt. The software in question is a game
called "Incoming" by Rage. If you need any more info I will try
my best to get better logs.

regards,
Colin Fowler




kernel security patch

2000-07-11 Thread gerard patel

This is a follow-up on the  thread on cemw
'Wine with ASS won't run stripped binaries' (see below)

With a 'kernel security patch', the default  load address for modules
seems to be moved to 11 address,  to get the Wine modules in the way of
the Win32 normal load address (40) and reportedly there is a very misleading 
message
on relocation and stripped executables.

I have the following questions for the Linux specialists out there.
1) what are the chances of this patch to become the default in some near future ?
2) what  could be the best way to solve such problem :
 - if  a PE module where preferred loadaddress = 0 gets an address below  40 hex, 
print a
warning. 
 - force the load address ?
 - other ?

Gerard

Here is a quote of the post of  'STiNG OF DEATH' on cemw :

Yes, I found and fixed the problem. As opposed to being a complex
memory problem, it was simply a case of me not R'ing the F'img
manual... I had the kernel security patch installed that I
was testing, and I was somehow working with a kernel with all the
security options turned on. Part of the security patch is to
reallocate stack space to prevent hackers playing with your
executable stack space.

I quote from the patch's diff file

 /* This decides where the kernel will search for a free chunk of vm
  * space during mmap's.
  */
+#if defined(CONFIG_SECURE_STACK)  defined(CONFIG_BINFMT_ELF)
+extern struct linux_binfmt elf_format;
+#define TASK_UNMAPPED_BASE ( \
+  current-binfmt == elf_format  \
+  !(current-flags  PF_STACKEXEC) \
+  ? 0x0011UL \
+  : TASK_SIZE / 3 )
+#else
 #define TASK_UNMAPPED_BASE(TASK_SIZE / 3)
+#endif

In other words, if secure stack is enabled, the unmapped base is
moved. This has the possiblity to break WINE and many other programs.





Re: wine.conf graphical front-end development

2000-07-11 Thread Jeremy White

 What will be the license of this tool ? How will it be distributed/maintained ?

joketroll
Why, GPL, of course.
/troll/joke

It will be released under the Wine license, and hopefully
will be part of the mainline Wine tree.




Re: kernel security patch

2000-07-11 Thread Alexandre Julliard

gerard patel [EMAIL PROTECTED] writes:

 I have the following questions for the Linux specialists out there.
 1) what are the chances of this patch to become the default in some near future ?

Very small IMO.

 2) what  could be the best way to solve such problem :
  - if  a PE module where preferred loadaddress = 0 gets an address below  40 
hex, print a
 warning. 
  - force the load address ?
  - other ?

Print a more explicit error message and die. I don't think there is
anything else we can do (except maybe linking Wine statically, but I
don't think this is desirable...)

-- 
Alexandre Julliard
[EMAIL PROTECTED]




Debugging question for MathType

2000-07-11 Thread Jim Shepherd

I am in the process of trying to get MathType for Windows 4.0 running
under wine.  Before the app displays, it seems to get caught in an
infinite loop.  Here are what I believe to be the relevant lines:

...
Call advapi32.227: RegOpenKeyExA(8001,40f42d90 "Software\\Design
Science\\DSMT4\\Config",,00020019,408568cc) ret=00468b11 fs=008f
Ret  advapi32.227: RegOpenKeyExA() retval= ret=00468b11 fs=008f
Call advapi32.235: RegQueryValueExA(003c,004ac7c4
"AppLang",,408568bc,4085686c,408568b8) ret=00468b3f fs=008f
Ret  advapi32.235: RegQueryValueExA() retval= ret=00468b3f
fs=008f
Call advapi32.204: RegCloseKey(003c) ret=00468b57 fs=008f
Ret  advapi32.204: RegCloseKey() retval= ret=00468b57 fs=008f
Call kernel32.425: GetUserDefaultLCID() ret=00468f66 fs=008f
Ret  kernel32.425: GetUserDefaultLCID() retval=0009 ret=00468f66
fs=008f
Call kernel32.342: GetLocaleInfoA(0409,0003,4085677c,00ff)
ret=004281c2 fs=008f
Ret  kernel32.342: GetLocaleInfoA() retval=0004 ret=004281c2 fs=008f
Call kernel32.534: MultiByteToWideChar(,,4085677c
"ENU",,40f42e10,0004) ret=004026bd fs=008f
Ret  kernel32.534: MultiByteToWideChar() retval=0004 ret=004026bd
fs=008f
Call kernel32.727: WideCharToMultiByte(,,40856898
L"ENU",,40f42ea0,0007,,) ret=004026dc
fs=008f
Ret  kernel32.727: WideCharToMultiByte() retval=0004 ret=004026dc
fs=008f
Call kernel32.250: FindFirstFileA(40f42190 "C:\\Program
Files\\MathType\\Language\\MT4ENU.DLL",40856618) ret=0048c8c9 fs=008f
Ret  kernel32.250: FindFirstFileA() retval= ret=0048c8c9 fs=008f
Call kernel32.333: GetFullPathNameA(40f42190 "C:\\Program
Files\\MathType\\Language\\MT4ENU.DLL",0104,40856758,408565dc)
ret=00491049 fs=008f
Ret  kernel32.333: GetFullPathNameA() retval=002d ret=00491049
fs=008f
Call kernel32.342: GetLocaleInfoA(0409,0003,4085677c,00ff)
ret=004281c2 fs=008f
Ret  kernel32.342: GetLocaleInfoA() retval=0004 ret=004281c2 fs=008f
Call kernel32.534: MultiByteToWideChar(,,4085677c
"ENU",,40f42200,0004) ret=004026bd fs=008f
Ret  kernel32.534: MultiByteToWideChar() retval=0004 ret=004026bd
fs=008f
Call kernel32.727: WideCharToMultiByte(,,40856898
L"ENU",,40f42ea0,0007,,) ret=004026dc
fs=008f
Ret  kernel32.727: WideCharToMultiByte() retval=0004 ret=004026dc
fs=008f
Call kernel32.250: FindFirstFileA(40f42210 "C:\\Program
Files\\MathType\\Language\\MT4ENU.DLL",40856618) ret=0048c8c9 fs=008f
Ret  kernel32.250: FindFirstFileA() retval= ret=0048c8c9 fs=008f
Call kernel32.333: GetFullPathNameA(40f42210 "C:\\Program
Files\\MathType\\Language\\MT4ENU.DLL",0104,40856758,408565dc)
ret=00491049 fs=008f
Ret  kernel32.333: GetFullPathNameA() retval=002d ret=00491049
fs=008f
Call kernel32.342: GetLocaleInfoA(0809,0003,4085677c,00ff)
ret=004281c2 fs=008f
Ret  kernel32.342: GetLocaleInfoA() retval=0004 ret=004281c2 fs=008f
Call kernel32.534: MultiByteToWideChar(,,4085677c
"ENG",,40f42280,0004) ret=004026bd fs=008f
Ret  kernel32.534: MultiByteToWideChar() retval=0004 ret=004026bd
fs=008f
Call kernel32.727: WideCharToMultiByte(,,40856898
L"ENG",,40f42ea0,0007,,) ret=004026dc
fs=008f
Ret  kernel32.727: WideCharToMultiByte() retval=0004 ret=004026dc
fs=008f
Call kernel32.250: FindFirstFileA(40f42290 "C:\\Program
Files\\MathType\\Language\\MT4ENG.DLL",40856618) ret=0048c8c9 fs=008f
Ret  kernel32.250: FindFirstFileA() retval= ret=0048c8c9 fs=008f
Call kernel32.333: GetFullPathNameA(40f42290 "C:\\Program
Files\\MathType\\Language\\MT4ENG.DLL",0104,40856758,408565dc)
ret=00491049 fs=008f
Ret  kernel32.333: GetFullPathNameA() retval=002d ret=00491049
fs=008f
Call kernel32.342: GetLocaleInfoA(0c09,0003,4085677c,00ff)
ret=004281c2 fs=008f
Ret  kernel32.342: GetLocaleInfoA() retval=0004 ret=004281c2 fs=008f
Call kernel32.534: MultiByteToWideChar(,,4085677c
"ENA",,40f42300,0004) ret=004026bd fs=008f
Ret  kernel32.534: MultiByteToWideChar() retval=0004 ret=004026bd
fs=008f
Call kernel32.727: WideCharToMultiByte(,,40856898
L"ENA",,40f42ea0,0007,,) ret=004026dc
fs=008f
Ret  kernel32.727: WideCharToMultiByte() retval=0004 ret=004026dc
fs=008f
Call kernel32.250: FindFirstFileA(40f42310 "C:\\Program
Files\\MathType\\Language\\MT4ENA.DLL",40856618) ret=0048c8c9 fs=008f
Ret  kernel32.250: FindFirstFileA() retval= ret=0048c8c9 fs=008f
Call kernel32.333: GetFullPathNameA(40f42310 "C:\\Program
Files\\MathType\\Language\\MT4ENA.DLL",0104,40856758,408565dc)
ret=00491049 fs=008f
Ret  kernel32.333: GetFullPathNameA() retval=002d ret=00491049
fs=008f
Call kernel32.342: GetLocaleInfoA(1009,0003,4085677c,00ff)
ret=004281c2 fs=008f
Ret  

Re: wine.conf graphical front-end development

2000-07-11 Thread Ove Kaaven


On Mon, 10 Jul 2000, Martin Pilka wrote:

 i'm working on graphical front-end for wine.conf file.

You're of course already aware of the existing (but abandoned) TkWine
project, which it'd be nice to build on?

Perhaps it'd also be nice if it was possible to use this in conjunction
with tools/wineinstall.




Re: kernel security patch

2000-07-11 Thread Ove Kaaven


On Tue, 11 Jul 2000, gerard patel wrote:

 I have the following questions for the Linux specialists out there.
 1) what are the chances of this patch to become the default in some near future ?

Slim if we complain?

 2) what  could be the best way to solve such problem :
  - if  a PE module where preferred loadaddress = 0 gets an address below  40 
hex, print a
 warning. 

I'd have thought the allocated address was above. It was the libc.so that
occupied the address that the Windows app wanted.

  - force the load address ?

Well, forcing a load of a windows binary into libc's mapping... I don't
think so.