Fixed command-line example.
[wine] / documentation / wine.man.in
1 .\" -*- nroff -*-
2 .TH WINE 1 "Feb 13, 2001" "Version 20010112" "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 .I program
15 loads and runs the given program, where the program is a DOS, Windows 3.x,
16 or Win32 executable (x86 binaries only).
17 .PP
18 For debugging wine, use
19 .B winedbg
20 .I program
21 instead.
22 .PP
23 .B wine 
24 currently runs a growing list of applications written for all kinds of
25 Windows versions >= Win2.0, e.g. Win3.1, Win95/98, NT.
26 Older, simpler applications work better than newer, more complex ones.
27 Using Windows ME or Win2000 components with Wine is more problematic than
28 using none at all or the ones from older Windows versions.
29 A large percentage of the API has been implemented,
30 although there are still several major pieces of work left to do.
31 .SH REQUIREMENTS AND INSTALLATION
32 Read the README file in the Wine source distribution to know what Wine
33 requires and how it is installed from source.
34 .SH OPTIONS
35 .TP
36 .I --debugmsg [xxx]#name[,[xxx1]#name1][,<+|->relay=yyy1[:yyy2]]
37 Turn debugging messages on or off.  
38 .RS +7
39 .PP
40 xxx is optional and can be one of the following: 
41 .I err, 
42 .I warn, 
43 .I fixme, 
44 or 
45 .I trace. 
46 If xxx is not specified, all debugging messages for the specified
47 channel are turned on.  Each channel will print messages about a particular
48 component of 
49 .B wine.  
50 # is required and can be either + or -.  Note that 
51 there is not a space after the comma between names. yyy are either the
52 name of a whole DLL or a single API entry by name you either
53 want to include or exclude from the relay listing.  Case doesn't matter
54 for these.  You can do the same for snoop.
55 .PP
56 For instance:
57 .PP
58 .I --debugmsg warn+all
59 will turn on all warning messages (recommended for debugging)
60 .br
61 .I --debugmsg warn+dll,+heap
62 will turn on DLL warning messages and all heap messages.  
63 .br
64 .I --debugmsg fixme-all,warn+cursor,+relay
65 will turn off all FIXME messages, turn on cursor warning messages, and turn
66 on all relay messages (API calls).
67 .br 
68 .I --debugmsg -relay=rtlleavecriticalsection:RtlEnterCriticalSection
69 will turn on all relay messages except for RtlLeaveCriticalSection and
70 RtlEnterCriticalSection.
71 .br 
72 .I --debugmsg +relay=advapi32
73 will only turn on relay messages into the ADVAPI32 code.
74 .PP
75 The full list of names is:
76 all, accel, advapi, animate, aspi, atom, avifile, bitblt, bitmap, caret,
77 cdrom, class, clipboard, clipping, combo, comboex, comm, commctrl, commdlg,
78 console, crtdll, cursor, datetime, dc, ddeml, ddraw, debug, debugstr,
79 delayhlp, dialog, dinput, dll, dosfs, dosmem, dplay, driver, dsound, edit,
80 elfdll, enhmetafile, event, exec, file, fixup, font, gdi, global, graphics,
81 header, heap, hook, hotkey, icmp, icon, imagehlp, imagelist, imm, int, int10,
82 int16, int17, int19, int21, int31, io, ipaddress, joystick, key, keyboard,
83 ldt, listbox, listview, local, mci, mcianim, mciavi, mcicda, mcimidi,
84 mciwave, mdi, menu, message, metafile, midi, mmaux, mmio, mmsys, mmtime,
85 module, monthcal, mpr, msacm, msg, msvideo, nativefont, nonclient, ntdll,
86 odbc, ole, pager, palette, pidl, print, process, profile, progress, prop,
87 propsheet, psapi, psdrv, ras, rebar, reg, region, relay, resource, scroll,
88 segment, seh, selector, sendmsg, server, setupx, shell, snoop, sound,
89 static, statusbar, storage, stress, string, syscolor, system, tab, tape,
90 tapi, task, text, thread, thunk, timer, toolbar, toolhelp, tooltips,
91 trackbar, treeview, ttydrv, tweak, typelib, updown, ver, virtual, vxd, wave,
92 win, win16drv, win32, winedbg, wing, winsock, winspool, wnet, x11 and x11drv.
93
94 .PP
95 For more information on debugging messages, see the file 
96 .I documentation/debug-msgs
97 in the source distribution (FIXME: outdated).
98 .RE
99 .TP
100 .I --dll name[,name[,...]]={native|so|builtin}[,{n|s|b}[,...]]
101 Selects the override type and load order of dll used in the loading
102 process for any dll. The default is set in the configuration
103 file. There are currently three types of libraries that can be loaded
104 into a process' address space: Native windows dlls (
105 .I native
106 ), native ELF libraries (
107 .I so
108 )and 
109 .B wine 
110 internal dlls (
111 .I builtin
112 ). The type may be abbreviated with the first letter of the type (
113 .I n, s, b
114 ). Each sequence of orders must be separated by commas.
115 .br
116 Each dll may have its own specific load order. The load order
117 determines which version of the dll is attempted to be loaded into the
118 address space. If the first fails, then the next is tried and so
119 on. Multiple libraries with the same load order can be separated with
120 commas. It is also possible to use the --dll option several times, to
121 specify different loadorders for different libraries
122 .br
123 Examples:
124 .br
125 .I --dll comdlg32,commdlg=n,b
126 .br
127 Try to load comdlg32 and commdlg as native windows dll first and try
128 the builtin version if the native load fails.
129 .br
130 .I --dll shell,shell32=n --dll c:\(rs\(rsfoo\(rs\(rsbar\(rs\(rsbaz=b
131 .br
132 Try to load the libraries shell and shell32 as native windows dlls. Furthermore, if 
133 an application request to load c:\(rsfoo\(rsbar\(rsbaz.dll load the builtin library baz. 
134 .br
135 .I --dll comdlg32,commdlg=b,n --dll shell,shell32=b --dll comctl32,commctrl=n
136 .br
137 Try to load comdlg32 and commdlg as builtin first and try the native version
138 if the builtin load fails; load shell32/shell always as builtin and
139 comctl32/commctrl always as native.
140 .br
141 Note: It is wise to keep dll pairs (comdlg32/commdlg, shell/shell32, etc.)
142 having exactly the same load order. This will prevent mismatches at runtime.
143 See also configuration file format below.
144 .TP
145 .I --dosver version
146 Specify the DOS version 
147 .B wine 
148 should imitate (e.g. 6.22) This option
149 is only valid when used in conjunction with --winver win31.
150 .TP
151 .I --managed
152 Create each top-level window as a properly managed X window instead of
153 creating our own "sticky" window.
154 .TP
155 .I --winver version
156 Specify which Windows version 
157 .B wine 
158 should imitate.
159 Possible arguments are: win95, nt40, win31, win2000, win98, nt351, win30
160 and win20.
161 .PD 1
162 .SH PROGRAM/ARGUMENTS
163 The program name may be specified in DOS format (
164 .I
165 C:\(rs\(rsWINDOWS\(rs\(rsSOL.EXE)
166 or in Unix format (
167 .I /msdos/windows/sol.exe
168 ).  You may pass arguments to the program being executed by adding them 
169 to the end of the command line invoking
170 .B wine
171 (such as: wine notepad C:\(rs\(rsTEMP\(rs\(rsREADME.TXT). Command line processing goes as
172 follows: first 
173 .B wine
174 checks whether one or more of the above mentioned 
175 .B wine 
176 options have been specified. These
177 are removed from the command line, which is passed to the windows program. You can use
178 the parameter 
179 .I -- 
180 to indicate that 
181 .B wine 
182 should stop command line processing. This is needed in case a windows program understands 
183 an option that is usually interpreted (and thus removed from the command line) 
184 by 
185 .B wine. 
186 For example, if you want to execute 
187 .B wine 
188 with the options 
189 .I --managed --dll riched32=n
190 and if 
191 .B wine 
192 should run the program 
193 .I myapp.exe
194 with the arguments
195 .I --display 3d somefile
196 , then you could use the following command line to invoke 
197 .B wine:
198 .PP
199 .I wine --managed --dll riched32=n -- myapp.exe --display 3d somefile
200 .PP 
201 Note that in contrast to previous versions of 
202 .B wine, 
203 you must not pass 
204 program name and program option in one argument to 
205 .B wine. 
206 To run more
207 than one windows program, just execute 
208 .B wine 
209 once with the name of each program as argument. 
210 .SH ENVIRONMENT VARIABLES
211 .B wine
212 makes the environment variables of the shell from which
213 .B wine
214 is started accessible to the windows/dos processes started. So use the
215 appropriate syntax for your shell to enter environment variables you need.
216 .TP 
217 .I WINEPREFIX
218 If set, the content of this variable is taken as the name of the directory where
219 .B wine
220 stores its data (the default is 
221 .I $HOME/.wine
222 ). This directory contains also the socket, which is used to communicate with the
223 .I wineserver.
224 All 
225 .B wine
226 processes using the same 
227 .B wineserver
228 (i.e.: same user) share certain things like registry and shared memory.
229 By setting 
230 .I WINEPREFIX
231 to different values for different 
232 .B wine
233 processes, it is possible to run a number of truly independent 
234 .B wine
235 processes. 
236 .TP
237 .I WINESERVER
238 Specifies the path and name of the
239 .B wineserver
240 binary. If not set, a file named "wineserver" is searched in the
241 path and in a few other likely locations.
242 .TP
243 .I WINELOADER
244 Specifies the path and name of the
245 .B wine
246 binary to use to launch new Windows processes. If not set, a binary
247 named "wine" is searched in the path and in a few other likely
248 locations.
249 .TP
250 .I WINEDLLPATH
251 Specifies the path(s) in which to search for builtin dll files. This
252 is a list of directories separated by ":". Builtin dlls are also
253 searched in the directories specified by the standard
254 .I LD_LIBRARY_PATH
255 if they are not found in the directories listed in
256 .I WINEDLLPATH.
257 .TP
258 .I DISPLAY
259 Specifies the X11 display to use.
260 .SH CONFIGURATION FILE
261 .B wine
262 expects a configuration file (
263 .I @sysconfdir@/wine.conf
264 ), which must conform to the format specified in the
265 .BR wine.conf (5)
266 man page. A sample configuration file is documentation/samples/config in the 
267 .B wine 
268 source archive. Alternatively a configuration file with the name
269 .I config
270 in the ~/.wine directory of the user running 
271 .B wine 
272 can be used.
273 .SH AUTHORS
274 .B wine
275 is available thanks to the work of many developers. For a listing
276 of the authors, please see the file 
277 .B AUTHORS
278 in the top-level directory of the source distribution.
279 .SH COPYRIGHT
280 .B wine
281 can be distributed under the terms of the X11 license. A copy of the
282 license is in the file
283 .B LICENSE
284 in the top-level directory of the source distribution.
285 .SH BUGS
286 .PP
287 A status report on many applications is available from
288 .I http://www.winehq.com/Apps.
289 Please add entries to this list for applications you currently run.
290 .PP
291 Bug reports and successes may be posted to 
292 .I comp.emulators.ms-windows.wine.
293 If you want to post a bug report, please read the file
294 .I documentation/bugreports
295 in the 
296 .B wine 
297 source to see what information is necessary (FIXME: outdated).
298 .PP
299 For problems and suggestions with this manpage, please send a note to
300 James Juran <jrj120@psu.edu>.
301 .SH AVAILABILITY
302 The most recent public version of 
303 .B wine
304 can be obtained via FTP from ibiblio.org in the
305 /pub/Linux/ALPHA/Wine/development directory.  The releases are in the
306 format 'Wine-yyyymmdd.tar.gz', or 'Wine-yyyymmdd.diff.gz' for the
307 diff's from the previous release. The same directory holds the
308 pre-built contents of the documentation in various formats
309 (wine-doc.xxx.gz).
310 .PP
311 The latest snapshot of the code may be obtained via CVS.  For information
312 on how to do this, please see
313 .I
314 http://www.winehq.com/dev.html
315 .PP
316 WineHQ, the
317 .B wine
318 development headquarters, is at
319 .I http://www.winehq.com/.
320 This website contains a great deal of information about
321 .B wine.
322 .PP
323 The
324 .B wine 
325 newsgroup is 
326 .I comp.emulators.ms-windows.wine.
327 It is used for discussion of various 
328 .B wine end user aspects/help.
329 .PP
330 For further information about 
331 .B wine
332 development, you might want to subscribe to the 
333 .B wine 
334 "cvs", "devel" and "patches" mailing lists at
335 .I http://www.winehq.com/dev.html#ml.
336 .SH FILES
337 .PD 0
338 .TP
339 .I @prefix@/bin/wine
340 The 
341 .B wine 
342 program loader.
343 .TP
344 .I @prefix@/bin/dosmod
345 The DOS program loader.
346 .TP
347 .I @prefix@/bin/wineserver
348 The 
349 .B wine 
350 server 
351 .TP 
352 .I @prefix@/bin/winedbg
353 The 
354 .B wine 
355 debugger
356 .TP 
357 .I @prefix@/bin/wineclpsrv
358 The 
359 .B wine 
360 clipboard server
361 .TP 
362 .I @prefix@/lib/
363 Directory containing 
364 .B wine's
365 shared libraries 
366 .TP
367 .I @sysconfdir@/wine.conf
368 Global configuration file for 
369 .B wine.
370 .TP
371 .I ~/.wine/config
372 User-specific configuration file
373 .TP 
374 .I ~/.wine
375 Directory containing user specific data managed by 
376 .B wine. 
377
378 .SH "SEE ALSO"
379 .BR wine.conf (5)