Fixed buffer overflow.
[wine/multimedia.git] / documentation / wine.man.in
blobf19b298462f0fdbb03656e6f5005241e5165a0f9
1 .\" -*- nroff -*-
2 .TH WINE 1 "May 2002" "@PACKAGE_STRING@" "Windows On Unix"
3 .SH NAME
4 wine \- run Windows programs on Unix
5 .SH SYNOPSIS
6 .BI "wine " "[wine_options] " "[--] " "program " "[arguments ... ]"
7 .PP
8 For instructions on passing arguments to Windows programs, please see the
9 .B
10 PROGRAM/ARGUMENTS
11 section of the man page.
12 .SH DESCRIPTION
13 .B wine
14 loads and runs the given program, where the program is a DOS, Windows
15 3.x, or Win32 executable (x86 binaries only).
16 .PP
17 For debugging wine, use
18 .B winedbg
19 instead.
20 .PP
21 For running CUI executables (Windows console programs), use
22 .B wineconsole
23 instead of
24 .B wine.
25 This will display all the output in a separate windows (this requires X11 to
26 run). Not using
27 .B wineconsole
28 for CUI programs will only provide very limited console support, and your
29 program might not function properly.
30 .PP
31 .B wine 
32 currently runs a growing list of applications written for all kinds of
33 Windows versions >= Win2.0, e.g. Win3.1, Win95/98, NT.
34 Older, simpler applications work better than newer, more complex ones.
35 Using Windows ME or Win2000 components with Wine is more problematic than
36 using none at all or the ones from older Windows versions.
37 A large percentage of the API has been implemented,
38 although there are still several major pieces of work left to do.
39 .SH REQUIREMENTS AND INSTALLATION
40 Read the README file in the Wine source distribution and the
41 .BR wine.conf (5)
42 man page to know what Wine requires and how it is installed from
43 source.
44 .SH OPTIONS
45 .TP
46 .I --debugmsg [xxx]#name[,[xxx1]#name1]
47 Turn debugging messages on or off.  This option is deprecated, you
48 should use the
49 .I WINEDEBUG
50 environment variable instead (see below).
51 .PD 1
52 .SH PROGRAM/ARGUMENTS
53 The program name may be specified in DOS format (
55 C:\(rs\(rsWINDOWS\(rs\(rsSOL.EXE)
56 or in Unix format (
57 .I /msdos/windows/sol.exe
58 ).  You may pass arguments to the program being executed by adding them 
59 to the end of the command line invoking
60 .B wine
61 (such as: wine notepad C:\(rs\(rsTEMP\(rs\(rsREADME.TXT).
62 Note that you need to '\(rs' escape special characters (and spaces) when invoking Wine via
63 a shell, e.g.
64 .PP
65 wine C:\(rs\(rsProgram\(rs Files\(rs\(rsMyPrg\(rs\(rstest.exe
66 .PP
67 Command line processing goes as
68 follows: first 
69 .B wine
70 checks whether one or more of the above mentioned 
71 .B wine 
72 options have been specified. These
73 are removed from the command line, which is passed to the windows program. You can use
74 the parameter 
75 .I -- 
76 to indicate that 
77 .B wine 
78 should stop command line processing. This is needed in case a windows program understands 
79 an option that is usually interpreted (and thus removed from the command line) 
80 by 
81 .B wine. 
82 For example, if you want to execute 
83 .B wine 
84 with the options 
85 .I --debugmsg +module
86 and if 
87 .B wine 
88 should run the program 
89 .I myapp.exe
90 with the arguments
91 .I --display 3d somefile
92 , then you could use the following command line to invoke 
93 .B wine:
94 .PP
95 .I wine --debugmsg +module -- myapp.exe --display 3d somefile
96 .PP 
97 Note that in contrast to previous versions of 
98 .B wine, 
99 you must not pass 
100 program name and program option in one argument to 
101 .B wine. 
102 To run more
103 than one windows program, just execute 
104 .B wine 
105 once with the name of each program as argument. 
106 .SH ENVIRONMENT VARIABLES
107 .B wine
108 makes the environment variables of the shell from which
109 .B wine
110 is started accessible to the windows/dos processes started. So use the
111 appropriate syntax for your shell to enter environment variables you need.
112 .TP 
113 .I WINEPREFIX
114 If set, the content of this variable is taken as the name of the directory where
115 .B wine
116 stores its data (the default is 
117 .I $HOME/.wine
118 ). This directory is also used to identify the socket which is used to
119 communicate with the
120 .I wineserver.
121 All 
122 .B wine
123 processes using the same 
124 .B wineserver
125 (i.e.: same user) share certain things like registry, shared memory,
126 and config file.
127 By setting 
128 .I WINEPREFIX
129 to different values for different 
130 .B wine
131 processes, it is possible to run a number of truly independent 
132 .B wine
133 processes. 
135 .I WINESERVER
136 Specifies the path and name of the
137 .B wineserver
138 binary. If not set, Wine will try to load
139 .B @bindir@/wineserver,
140 and if this doesn't exist it will then look for a file named
141 "wineserver" in the path and in a few other likely locations.
143 .I WINELOADER
144 Specifies the path and name of the
145 .B wine
146 binary to use to launch new Windows processes. If not set, Wine will
147 try to load
148 .B @bindir@/wine,
149 and if this doesn't exist it will then look for a file named "wine" in
150 the path and in a few other likely locations.
152 .I WINEDEBUG
153 Turns debugging messages on or off. The syntax of the variable is
154 of the form
155 .RI [ class ][+/-] channel [,[ class2 ][+/-] channel2 ].
156 .RS +7
158 .I class
159 is optional and can be one of the following: 
160 .B err, warn, fixme,
161 or 
162 .B trace. 
164 .I class
165 is not specified, all debugging messages for the specified
166 channel are turned on.  Each channel will print messages about a particular
167 component of 
168 .B wine.  
169 The following character can be either + or - to switch the specified
170 channel on or off respectively.  If there is no
171 .I class
172 part before it, a leading + can be omitted. Note that spaces are not
173 allowed anywhere in the string.
175 Examples:
177 WINEDEBUG=warn+all
178 will turn on all warning messages (recommended for debugging).
181 WINEDEBUG=warn+dll,+heap
182 will turn on DLL warning messages and all heap messages.  
185 WINEDEBUG=fixme-all,warn+cursor,+relay
186 will turn off all FIXME messages, turn on cursor warning messages, and turn
187 on all relay messages (API calls).
188 .br 
190 WINEDEBUG=relay
191 will turn on all relay messages. For more control on including or excluding
192 functions and dlls from the relay trace look into the [Debug] section
193 of the wine configuration file.
195 For more information on debugging messages, see the
196 .I Running Wine
197 chapter of the Wine User Guide.
200 .I WINEDLLPATH
201 Specifies the path(s) in which to search for builtin dlls and Winelib
202 applications. This is a list of directories separated by ":". In
203 addition to any directory specified in
204 .I WINEDLLPATH,
205 Wine will also look in
206 .B @dlldir@.
208 .I WINEDLLOVERRIDES
209 Defines the override type and load order of dlls used in the loading
210 process for any dll. The default is set in the configuration
211 file. There are currently two types of libraries that can be loaded
212 into a process' address space: Native windows dlls (
213 .I native
214 ), 
215 .B wine 
216 internal dlls (
217 .I builtin
218 ). The type may be abbreviated with the first letter of the type (
219 .I n, b
220 ). Each sequence of orders must be separated by commas.
223 Each dll may have its own specific load order. The load order
224 determines which version of the dll is attempted to be loaded into the
225 address space. If the first fails, then the next is tried and so
226 on. Multiple libraries with the same load order can be separated with
227 commas. It is also possible to use specify different loadorders for
228 different libraries by separating the entries by ";".
230 The load order for a 16-bit dll is always defined by the load order of
231 the 32-bit dll that contains it (which can be identified by looking at
232 the symbolic link of the 16-bit .dll.so file). For instance if
233 ole32.dll is configured as builtin, storage.dll will be loaded as
234 builtin too, since the 32-bit ole32.dll contains the 16-bit
235 storage.dll.
237 Examples:
239 WINEDLLOVERRIDES="comdlg32,shell32=n,b"
241 Try to load comdlg32 and shell32 as native windows dll first and try
242 the builtin version if the native load fails.
244 WINEDLLOVERRIDES="comdlg32,shell32=n;c:\(rs\(rsfoo\(rs\(rsbar\(rs\(rsbaz=b"
246 Try to load the libraries comdlg32 and shell32 as native windows dlls. Furthermore, if 
247 an application request to load c:\(rsfoo\(rsbar\(rsbaz.dll load the builtin library baz. 
249 WINEDLLOVERRIDES="comdlg32=b,n;shell32=b;comctl32=n"
251 Try to load comdlg32 as builtin first and try the native version if
252 the builtin load fails; load shell32 always as builtin and comctl32
253 always as native.
256 .I DISPLAY
257 Specifies the X11 display to use.
258 .SH FILES
260 .I @bindir@/wine
261 The 
262 .B wine 
263 program loader.
265 .I @bindir@/wineconsole
266 The 
267 .B wine 
268 program loader for CUI (console) applications.
270 .I @bindir@/wineserver
271 The 
272 .B wine 
273 server 
274 .TP 
275 .I @bindir@/winedbg
276 The 
277 .B wine 
278 debugger
279 .TP 
280 .I @bindir@/wineclipsrv
281 The 
282 .B wine 
283 clipboard server
284 .TP 
285 .I @dlldir@
286 Directory containing 
287 .B wine's
288 shared libraries 
290 .I $WINEPREFIX/config
291 User-specific configuration file, which must conform to the format specified
292 in the
293 .BR wine.conf (5)
294 man page. A sample configuration file is documentation/samples/config in the 
295 .B wine 
296 source archive.
298 .I $WINEPREFIX/dosdevices
299 Directory containing the DOS device mappings. Each file in that
300 directory is a symlink to the Unix device file implementing a given
301 device. For instance, if COM1 is mapped to /dev/ttyS0 you'd have a
302 symlink of the form $WINEPREFIX/dosdevices/com1 -> /dev/ttyS0.
304 DOS drives are also specified with symlinks; for instance if drive D:
305 corresponds to the CDROM mounted at /mnt/cdrom, you'd have a symlink
306 $WINEPREFIX/dosdevices/d: -> /mnt/cdrom. The Unix device corresponding
307 to a DOS drive can be specified the same way, except with '::' instead
308 of ':'. So for the previous example, if the CDROM device is mounted
309 from /dev/hdc, the corresponding symlink would be
310 $WINEPREFIX/dosdevices/d:: -> /dev/hdc.
311 .SH AUTHORS
312 .B wine
313 is available thanks to the work of many developers. For a listing
314 of the authors, please see the file 
315 .B AUTHORS
316 in the top-level directory of the source distribution.
317 .SH COPYRIGHT
318 .B wine
319 can be distributed under the terms of the LGPL license. A copy of the
320 license is in the file
321 .B COPYING.LIB
322 in the top-level directory of the source distribution.
323 .SH BUGS
325 A status report on many applications is available from
326 .I http://www.winehq.org/Apps.
327 Please add entries to this list for applications you currently run.
329 Bug reports may be posted to Wine Bugzilla
330 .I http://bugs.winehq.org
331 If you want to post a bug report, please read the file
332 .I documentation/bugs.sgml
333 in the 
334 .B wine 
335 source to see what information is necessary
337 Problems and suggestions with this manpage please also report to
338 .I http://bugs.winehq.org
339 .SH AVAILABILITY
340 The most recent public version of 
341 .B wine
342 can be downloaded from
343 .I http://www.winehq.org/download
345 The latest snapshot of the code may be obtained via CVS.  For information
346 on how to do this, please see
348 http://www.winehq.org/cvs
350 WineHQ, the
351 .B wine
352 development headquarters, is at
353 .I http://www.winehq.org/.
354 This website contains a great deal of information about
355 .B wine.
358 .B wine 
359 newsgroup is 
360 .I comp.emulators.ms-windows.wine.
361 It is used for discussion of various 
362 .B wine
363 end user aspects/help.
365 For further information about 
366 .B wine
367 development, you might want to subscribe to the 
368 .B wine 
369 mailing lists at
370 .I http://www.winehq.org/forums
372 .SH "SEE ALSO"
373 .BR wine.conf (5)