Implementation of ChildWindowFromPointEx functions.
[wine/multimedia.git] / documentation / wine.man
blob8da64b0f548de506fa2abab9ab20766c169a1bc0
1 .\" -*- nroff -*-
2 .TH WINE 1 "November 22, 1998" "Version 981108" "Windows On Unix"
3 .SH NAME
4 wine \- run Windows programs on Unix
5 .SH SYNOPSIS
6 .BI "wine " "[wine_options]"
8 .BI "program_name [program_args]"
9 " "
10 .IB "[program_name [program_args] "
12 .BI "..." " ]"
13 .SH DESCRIPTION
14 .B wine
15 .I program
16 loads and runs the given program, where the program is a DOS, Windows 3.x,
17 or Win32 executable.
18 .PP
19 .B wine 
20 currently runs a growing list of applications written for both Win3.1 and 
21 Win95.  Older, simpler applications work better than newer, more complex 
22 ones.  A large percentage of the API has been implemented, although there
23 are still several major pieces of work left to do.
24 .SH REQUIREMENTS
25 At present, 
26 .B wine
27 will run under any Linux kernel more recent than 0.99.13, or
28 under recent releases of NetBSD/i386, FreeBSD and OpenBSD/i386.
29 .PP
30 The current support for multithreaded applications relies on the 
31 .BR clone (2)
32 system call, which is currently available only on Linux systems running
33 libc6 (aka glibc2).
34 .PP
35 .B X
36 must be installed.  To use Wine's support for multithreaded applications,
37 your X libraries must be reetrant.  If you have libc6 (glibc2), or you 
38 compiled the X libraries yourself, they were probably compiled with the 
39 reetrant option enabled.  
40 .PP
41 .B libXpm
42 must be installed.  If you're using Red Hat, the name of the package is
43 XFree86-devel.  If you're using Debian, the packages you need are xpm4g
44 and xpm4g-dev. If you have some other distribution, please send email to
45 the address listed in the 
47 BUGS
48 section to get it included in this man page.
49 .PP
50 .B gcc
51 2.7.x or later is required to build
52 .B wine.
53 Versions earlier than 2.7.2.3 may have problems when certain files are
54 compiled with optimization.
56 pgcc
57 currently doesn't work with wine.  The cause of this problem is unknown. 
58 .SH INSTALLATION
59 To install 
60 .B Wine,
61 run "./configure" in the top-level directory of the source, which will 
62 detect your specific setup and create the Makefiles.  You can run 
63 "./configure --help" to see the available configuration options.  Then do 
64 "make depend; make" to build the
65 .B wine
66 executable, and then "make install" to install it. By default,
67 .B wine
68 is installed in the /usr/local/ heirarchy; you can specify a different path with
69 the --prefix option when running
70 .B configure.
71 .PP
72 For more information, see the 
73 .I README
74 file contained in the source distribution.
75 .SH OPTIONS
76 .TP
77 .I -backingstore
78 Turn on backing store
79 .TP
80 .I -config filename
81 Use the named configuration file rather than the default
82 (/usr/local/etc/wine.conf or ~/.winerc).
83 .TP
84 .I -debug
85 Enter the debugger before starting application
86 .TP
87 .I -debugmsg [xxx]#name[,[xxx1]#name1]
88 Turn debugging messages on or off.  
89 .RS +7
90 .PP
91 xxx is optional and can be one of the following: 
92 .I err, 
93 .I warn, 
94 .I fixme, 
95 or 
96 .I trace. 
97 If xxx is not specified, all debugging messages for the specified
98 channel are turned on.  Each channel will print messages about a particular
99 component of Wine.  # is required and can be either + or -.  Note that 
100 there is not a space after the comma between names.
102 For instance:
104 .I -debugmsg warn+dll,+heap
105 will turn on DLL warning messages and all heap messages.  
107 .I -debugmsg fixme-all,warn+cursor,+relay
108 will turn off all FIXME messages, turn on cursor warning messages, and turn
109 on all relay messages (API calls).
111 The full list of names is: all, accel, advapi, animate, aspi, atom, 
112 bitblt, bitmap, caret, cd, cdaudio, class, clipboard, clipping, combo, 
113 comboex, comm, commctrl, commdlg, console, crtdll, cursor, datetime, dc, 
114 dde, ddeml, ddraw, debug, dialog, dinput, dll, dosfs, dosmem, dplay, driver, 
115 dsound, edit, event, exec, file, fixup, font, gdi, global, graphics, header, 
116 heap, hook, hotkey, icon, imagehlp, imagelist, imm, int, int10, int16, int17, 
117 int19, int21, int31, io, ipaddress, key, keyboard, ldt, listbox, listview, 
118 local, mci, mcianim, mciwave, mdi, menu, message, metafile, midi, mmaux, mmio, 
119 mmsys, mmtime, module, monthcal, mpr, msacm, msg, nativefont, nonclient, ntdll, 
120 ole, pager, palette, pidl, print, process, profile, progress, prop, psapi, 
121 psdrv, rebar, reg, region, relay, resource, s, scroll, security, segment, 
122 selector, sem, sendmsg, shell, shm, snoop, sound, static, statusbar, stress, 
123 string, syscolor, system, tab, task, text, thread, thunk, timer, toolbar, 
124 toolhelp, tooltips, trackbar, treeview, tweak, uitools, updown, ver, virtual, 
125 vxd, win, win16drv, win32, wing, winsock, wnet, x11, x11drv.
127 For more information on debugging messages, see the file 
128 .I documentation/debug-msgs
129 in the source distribution.
132 .I -depth n
133 Change the depth to use for multiple-depth screens
135 .I -desktop geom
136 Use a desktop window of the given geometry
138 .I -display name
139 Use the specified display
141 .I -dll name
142 Enables/disables built-in DLL's - starting wine with
143 .I -dll -commdlg
144 is probably a good idea.
145 The full list of DLLs modifiable by this is:
146 ADVAPI32, AVIFILE, COMCTL32, COMDLG32, COMM, COMMDLG, COMPOBJ, CRTDLL, 
147 DCIMAN32, DDEML, DDRAW, DINPUT, DISPLAY, DPLAY, DPLAYX, DSOUND, GDI, GDI32, 
148 IMAGEHLP, IMM32, KEYBOARD, LZ32, LZEXPAND, MMSYSTEM, MOUSE, MPR, MSACM, 
149 MSACM32, MSNET32, MSVFW32, MSVIDEO, OLE2, OLE32, OLE2CONV, OLE2DISP, OLE2NLS, 
150 OLE2PROX, OLE2THK, OLEAUT32, OLECLI, OLECLI32, OLEDLG, OLESVR, OLESVR32, 
151 PSAPI, RASAPI16, RASAPI32, SHELL, SHELL32, SOUND, STORAGE, STRESS, SYSTEM,
152 TAPI32, TOOLHELP, TYPELIB, USER, USER32, VER, VERSION, W32SKRNL, W32SYS, 
153 WIN32S16, WIN87EM, WINASPI, WINDEBUG, WINEPS, WINMM, WING, WINSOCK, WINSPOOL, 
154 WNASPI32, WOW32, WPROCS, WSOCK32
156 .I -failreadonly
157 Read only files may not be opened in write mode (the default is to
158 allow opening read-only files for writing, because most Windows
159 programs always request read-write access, even on CD-ROM drives...).
161 .I -fixedmap
162 Use a "standard" color map.
164 .I -iconic
165 Start as an icon
167 .I -language xx
168 Set the language to
169 .I xx
170 (one of En, Es, De, No, Fr, Fi, Da, Cz, Eo, It, Ko, Hu, Pl, Po, Sw, Ca)
172 .I -managed
173 Create each top-level window as a properly managed X window
175 .I -mode modename
176 Determines the mode in which
177 .B wine
178 is started. Possible mode names are
179 .I standard
181 .I enhanced.
182 Enhanced mode is the default (when no -mode option is specified).
184 .I -name name
185 Set the application name
187 .I -privatemap
188 Use a private color map
190 .I -synchronous
191 Turn on synchronous display mode
193 .I -winver version
194 Specify which Windows version WINE should imitate.
195 Possible arguments are: win31, win95, nt351, and nt40.
196 .PD 1
197 .SH PROGRAM/ARGUMENTS
198 The program name may be specified in DOS format (
200 C:\\WINDOWS\\SOL.EXE)
201 or in Unix format (
202 .I /msdos/windows/sol.exe
203 ).  The program being executed may be passed arguments by adding them on 
204 to the end of the command line invoking
205 .B wine
206 (such as: wine "notepad C:\\TEMP\\README.TXT").  Note that
207 the program name and its arguments 
208 .I must
209 be passed as a single parameter, which is usually accomplished by placing
210 them together in quotation marks.  Multiple applications may be started
211 by placing all of them on the command line (such as: wine notepad clock).
212 .SH CONFIGURATION FILE
213 .B wine
214 expects a configuration file (
215 .I /usr/local/etc/wine.conf
216 ), which should
217 conform to the following rules (the format is just like a Windows .ini
218 file).  The actual file name may be specified during the execution of
220 .B configure
221 script.  Alternatively, you may have a 
222 .I .winerc
223 file of this format in your home directory or have the environment variable
224 .B WINE_INI
225 pointing to a configuration file, or use the -config option on the command 
226 line.
227 .SH CONFIGURATION FILE FORMAT
228 All entries are grouped in sections; a section begins with the line
230 .I [section name]
232 and continues until the next section starts. Individual entries
233 consist of lines of the form
235 .I entry=value
237 The value can be any text string, optionally included in single or
238 double quotes; it can also contain references to environment variables
239 surrounded by
240 .I ${}.
241 Supported section names and entries are listed below.
243 .B [Drive X]
245 This section is used to specify the root directory and type of each
246 .B DOS
247 drive, since most Windows applications require a DOS/MS-Windows based 
248 disk drive & directory scheme. There is one such section for every
249 drive you want to configure.
251 .I format: Path = <rootdirectory>
253 default: none
255 If you mounted your dos partition as 
256 .I /dos
257 and installed Microsoft Windows in 
258 C:\\WINDOWS then you should specify 
259 .I Path=/dos
260 in the
261 .I [Drive C]
262 section.
264 .I format: Type = <type>
266 default: hd
268 Used to specify the drive type; supported types are floppy, hd, cdrom
269 and network.
271 .I format: Label = <label>
273 default: 'Drive X'
275 Used to specify the drive label; limited to 11 characters.
277 .I format: Serial = <serial>
279 default: 12345678
281 Used to specify the drive serial number, as an 8-character hexadecimal
282 number.
284 .I format: Filesystem = <fstype>
286 default: unix
288 Used to specify the type of the filesystem on which the drive resides;
289 supported types are msdos (or fat), win95 (or vfat), unix. If the
290 drive spans several different filesystems, say unix.
292 .B [wine]
294 .I format: windows = <directory>
296 default: C:\\WINDOWS
298 Used to specify a different Windows directory
300 .I format: system = <directory>
302 default: C:\\WINDOWS\\SYSTEM
304 Used to specify a different system directory
306 .I format: temp = <directory>
308 default: C:\\TEMP
310 Used to specify a directory where Windows applications can store 
311 temporary files.
313 .I format: path = <directories separated by semi-colons>
315 default: C:\\WINDOWS;C:\\WINDOWS\\SYSTEM
317 Used to specify the path which will be used to find executables and .DLL's.
319 .I format: symboltablefile = <filename>
321 default: wine.sym
323 Used to specify the path and file name of the symbol table used by the built-in
324 debugger.
326 .B [serialports]
328 .I format: com[12345678] = <devicename>
330 default: none
332 Used to specify the devices which are used as com1 - com8.
334 .B [parallelports]
336 .I format: lpt[12345678] = <devicename>
338 default: none
340 Used to specify the devices which are used as lpt1 - lpt8.
342 .B [spy]
344 .I format: file = <filename or CON when logging to stdout>
346 default: none
348 Used to specify the file which will be used as
349 .B logfile.
351 .I format: exclude = <message names separated by semicolons>
353 default: none
355 Used to specify which messages will be excluded from the logfile.
357 .I format: include = <message names separated by semicolons>
359 default: none
360 .br Used to specify which messages will be included in the logfile.
362 .B [Tweak.Layout]
364 .I format: WineLook=<Win31|Win95|Win98>
366 default: Win31
367 .br 
368 Use Win95-like window displays or Win3.1-like window displays.
369 .SH SAMPLE CONFIGURATION FILE
370 [Drive A]
372 Path=/mnt/fd0
374 Type=floppy
376 [Drive C]
378 Path=/dos
380 Type=hd
382 Label=DOS disk
384 [Drive D]
386 Path=${HOME}/Wine
388 [wine]
390 windows=c:\\windows
392 system=c:\\windows\\system
394 temp=c:\\temp
396 path=c:\\windows;c:\\windows\\system;c:\\winapps\\word
398 symboltablefile=/usr/local/lib/wine.sym
400 [serialports]
402 com1=/dev/cua1
404 com2=/dev/cua1
406 [parallelports]
408 lpt1=/dev/lp0
410 [spy]
412 ;File=CON
414 ;File=spy.log
416 Exclude=WM_TIMER;WM_SETCURSOR;WM_MOUSEMOVE;WM_NCHITTEST;
418 Include=WM_COMMAND;
420 [Tweak.Layout]
421 .br 
422 WineLook=Win95
423 .SH AUTHORS
424 .B Wine
425 is available thanks to the work of many developers. For a listing
426 of the authors, please see the file 
427 .B AUTHORS
428 in the top-level directory of the source distribution.
429 .SH BUGS
431 A status report on many appplications is available from
432 .I http://www.winehq.com/Apps.
433 Please add entries to this list for applications you currently run.
435 Bug reports and successes may be posted to 
436 .I comp.emulators.ms-windows.wine.
437 If you do so, please read the file
438 .I documentation/bugreports
439 in the Wine source.
441 For problems and suggestions with this manpage, please send a note to
442 James Juran <jrj120@psu.edu>.
443 .SH AVAILABILITY
444 The most recent public version of 
445 .B wine
446 can be obtained via FTP from sunsite.unc.edu or tsx-11.mit.edu in the /pub/linux/ALPHA/Wine/development 
447 directory.  The releases are in the format 'Wine-yymmdd.tar.gz', 
448 or 'Wine-yymmdd.diff.gz' for the diff's from the previous release.
450 The latest snapshot of the code may be obtained via CVS.  For information
451 on how to do this, please see
453 http://www.winehq.com/dev.html
455 WineHQ, the
456 .B wine
457 development headquarters, is at
458 .I http://www.winehq.com/.
459 This website contains a great deal of information about
460 .B wine
461 as well as a collection of unofficial patches against the current release.
464 .B wine 
465 newsgroup is 
466 .I comp.emulators.ms-windows.wine.
467 All discussions about the project take place in this forum.
468 .SH FILES
469 .PD 0
471 .I /usr/local/bin/wine
472 The Wine program loader.
474 .I /usr/local/bin/dosmod
475 The DOS program loader.
477 .I /usr/local/etc/wine.conf
478 Global configuration file for wine.
480 .I ~/.winerc
481 User-specific configuration file
483 .I /usr/local/lib/wine.sym
484 Global symbol table (used in debugger)
485 .SH "SEE ALSO"
486 .BR clone (2)