Skip to content

Instantly share code, notes, and snippets.

@stowler
Created April 1, 2014 19:54
Show Gist options
  • Save stowler/9921780 to your computer and use it in GitHub Desktop.
Save stowler/9921780 to your computer and use it in GitHub Desktop.
# It looks like -multiwindow mode triggers the static color visual in both the internal x2go xserver and the external vcxsrv
# But it also looks like -multiwindow mode is how x2go client allows resizing of the remote desktop
# ...so I'm looking for a way to allow resizing of remote desktop w/out triggering static color visual.
#
# ...output of vcxsrv.exe's usage note:
Usage...
Vcxsrv [:<display>] [option]
:display-number
Vcxsrv runs as the given display-number, which defaults to 0.
To run multiple instances, use unique display-numbers.
-a # default pointer acceleration (factor)
-ac disable access control restrictions
-audit int set audit trail level
-auth file select authorization file
-br create root window with black background
+bs enable any backing store support
-bs disable any backing store support
-cc int default color visual class
-nocursor disable the cursor
-core generate core dump on fatal error
-dpi [auto|int] screen resolution set to native or this dpi
-dpms disables VESA DPMS monitor control
-deferglyphs [none|all|16] defer loading of [no|all|16-bit] glyphs
-f # bell base (0-100)
-fc string cursor font
-fn string default font name
-fp string default font path
-help prints message with these options
-I ignore all remaining arguments
-nolisten string don't listen on protocol
-noreset don't reset after last client exists
-background [none] create root window with no background
-reset reset after last client exists
-pn accept failure to listen on all ports
-nopn reject failure to listen on all ports
-r turns off auto-repeat
r turns on auto-repeat
-render [default|mono|gray|color] set render color alloc policy
-retro start with classic stipple
-seat string seat to run on
-t # default pointer threshold (pixels/t)
-terminate terminate at server reset
-to # connection time out
-tst disable testing extensions
-wm WhenMapped default backing-store
-wr create root window with white background
+xinerama Enable XINERAMA extension
-xinerama Disable XINERAMA extension
-dumbSched Disable smart scheduling, enable old behavior
-schedInterval int Set scheduler interval in msec
+extension name Enable extension
-extension name Disable extension
-query host-name contact named host for XDMCP
-broadcast broadcast for XDMCP
-multicast [addr [hops]] IPv6 multicast for XDMCP
-indirect host-name contact named host for indirect XDMCP
-port port-num UDP port number to send messages to
-from local-address specify the local address to connect from
-once Terminate server after one session
-class display-class specify display class to send in manage
-cookie xdm-auth-bits specify the magic cookie for XDMCP
-displayID display-id manufacturer display ID for request
[+-]accessx [ timeout [ timeout_mask [ feedback [ options_mask] ] ] ]
enable/disable accessx key sequences
-ardelay set XKB autorepeat delay
-arinterval set XKB autorepeat interval
VcXsrv Device Dependent Usage:
-[no]clipboard
Enable [disable] the clipboard integration. Default is enabled.
-[no]clipboardprimary
[Do not] map the PRIMARY selection to the windows clipboard.
The CLIPBOARD selection is always mapped if -clipboard is enabled.
Default is mapped.
-clipupdates num_boxes
Use a clipping region to constrain shadow update blits to
the updated region when num_boxes, or more, are in the
updated region.
-depth bits_per_pixel
Specify an optional bitdepth to use in fullscreen mode
with a DirectDraw engine.
-[no]emulate3buttons [timeout]
Emulate 3 button mouse with an optional timeout in
milliseconds.
-engine engine_type_id
Override the server's automatically selected engine type:
1 - Shadow GDI
2 - Shadow DirectDraw
4 - Shadow DirectDraw4 Non-Locking
-fullscreen
Run the server in fullscreen mode.
-hostintitle
In multiwindow mode, add remote host names to window titles.
-ignoreinput
Ignore keyboard and mouse input.
-[no]keyhook
Grab special Windows keypresses like Alt-Tab or the Menu key.
-lesspointer
Hide the windows mouse pointer when it is over any
VcXsrv window. This prevents ghost cursors appearing when
the Windows cursor is drawn on top of the X cursor
-logfile filename
Write log messages to <filename>.
-logverbose verbosity
Set the verbosity of log messages. [NOTE: Only a few messages
respect the settings yet]
0 - only print fatal error.
1 - print additional configuration information.
2 - print additional runtime information [default].
3 - print debugging and tracing information.
-[no]multimonitors or -[no]multiplemonitors
Use the entire virtual screen if multiple
monitors are present.
-multiwindow
Run the server in multi-window mode.
-nodecoration
Do not draw a window border, title bar, etc. Windowed
mode only.
-nounicodeclipboard
Do not use Unicode clipboard even if on a NT-based platform.
-refresh rate_in_Hz
Specify an optional refresh rate to use in fullscreen mode
with a DirectDraw engine.
-resize=none|scrollbars|randr In windowed mode, [don't] allow resizing of the window. 'scrollbars'
mode gives the window scrollbars as needed, 'randr' mode uses the RANR
extension to resize the X screen. 'randr' is the default.
-rootless
Run the server in rootless mode.
-screen scr_num [width height [x y] | [[WxH[+X+Y]][@m]] ]
Enable screen scr_num and optionally specify a width and
height and initial position for that screen. Additionally
a monitor number can be specified to start the server on,
at which point, all coordinates become relative to that
monitor. Examples:
-screen 0 800x600+100+100@2 ; 2nd monitor offset 100,100 size 800x600
-screen 0 1024x768@3 ; 3rd monitor size 1024x768
-screen 0 @1 ; on 1st monitor using its full resolution (the default)
-silent-dup-error
If another instance of VcXsrv with the same display number is running
exit silently and don't display any error message.
-swcursor
Disable the usage of the Windows cursor and use the X11 software
cursor instead.
-[no]trayicon
Do not create a tray icon. Default is to create one
icon per screen. You can globally disable tray icons with
-notrayicon, then enable it for specific screens with
-trayicon for those screens.
-[no]unixkill
Ctrl+Alt+Backspace exits the X Server.
-[no]wgl
Enable the GLX extension to use the native Windows WGL interface for hardware-accelerated OpenGL
-swrastwgl
Enable the GLX extension to use the native Windows WGL interface based on the swrast interface for accelerated OpenGL
-[no]winkill
Alt+F4 exits the X Server.
-xkblayout XKBLayout
Equivalent to XKBLayout in XF86Config files.
For example: -xkblayout de
-xkbmodel XKBModel
Equivalent to XKBModel in XF86Config files.
-xkboptions XKBOptions
Equivalent to XKBOptions in XF86Config files.
-xkbrules XKBRules
Equivalent to XKBRules in XF86Config files.
-xkbvariant XKBVariant
Equivalent to XKBVariant in XF86Config files.
For example: -xkbvariant nodeadkeys
(EE) Server terminated successfully (0). Closing log file.
@Swivelgames
Copy link

How did you find this? I haven't been able to find it, and running vcxsrv.exe -help doesn't produce this; neither does running it without commands. Documentation is quite literally non-existent on the project's SourceForge, and all I can find are these Gist's here and there by different people like yourself. Any ideas where I might be able to get an updated list for v1.20.6.0 (the latest version)?

@opsroller
Copy link

% strings -n 8 $(which vcxsrv.exe)

@ZRobison
Copy link

Thanks. Some of the options have change in my version which results in a crash if you use the wrong ones.

-[no]clipboard Enable [disable] the clipboard integration. Default is enabled. -noprimary Do not map the PRIMARY selection to the windows clipboard. The CLIPBOARD selection is always mapped if -clipboard is enabled. Default is mapped. -clipupdates num_boxes Use a clipping region to constrain shadow update blits to the updated region when num_boxes, or more, are in the updated region. Diminished effect on current Windows versions because they already group GDI operations together in a batch, which has a similar effect. -[no]compositewm Enable [Disable] Composite extension. Default is enabled. Used in -multiwindow mode. Use Composite extension redirection to maintain a bitmap image of each top-level X window, so window contents which are occluded show correctly in Taskbar and Task Switcher previews. -[no]compositealpha X windows with per-pixel alpha are composited into the Windows desktop. -[no]compositewm Use the Composite extension to keep a bitmap image of each top-level X window, so window contents which are occluded show correctly in task bar and task switcher previews. -depth bits_per_pixel Specify an optional bitdepth to use in fullscreen mode with a DirectDraw engine. -[no]emulate3buttons [timeout] Emulate 3 button mouse with an optional timeout in milliseconds. -engine engine_type_id Override the server's automatically selected engine type: 1 - Shadow GDI 4 - Shadow DirectDraw4 Non-Locking -fullscreen Run the server in fullscreen mode. -[no]hostintitle In multiwindow mode, add remote host names to window titles. -icon icon_specifier Set screen window icon in windowed mode. -ignoreinput Ignore keyboard and mouse input. -[no]keyhook Grab special Windows keypresses like Alt-Tab or the Menu key. -lesspointer Hide the windows mouse pointer when it is over any VcXsrv window. This prevents ghost cursors appearing when the Windows cursor is drawn on top of the X cursor -logfile filename Write log messages to <filename>. -logverbose verbosity Set the verbosity of log messages. [NOTE: Only a few messages respect the settings yet] 0 - only print fatal error. 1 - print additional configuration information. 2 - print additional runtime information [default]. 3 - print debugging and tracing information. -[no]multimonitors or -[no]multiplemonitors Use the entire virtual screen if multiple monitors are present. -multiwindow Run the server in multiwindow mode. Not to be used together with -rootless or -fullscreen. -nodecoration Do not draw a window border, title bar, etc. Windowed mode only i.e. ignored when -fullscreen specified. -nounicodeclipboard Disable Unicode in the clipboard. -[no]primary When clipboard integration is enabled, map the X11 PRIMARY selection to the Windows clipboard. Default is enabled. -refresh rate_in_Hz Specify an optional refresh rate to use in fullscreen mode with a DirectDraw engine. -resize=none|scrollbars|randr In windowed mode, [don't] allow resizing of the window. 'scrollbars' mode gives the window scrollbars as needed, 'randr' mode uses the RANR extension to resize the X screen. 'randr' is the default. -rootless Use a transparent root window with an external window manager (such as openbox). Not to be used with -multiwindow or with -fullscreen. -screen scr_num [width height [x y] | [[WxH[+X+Y]][@m]] ] Enable screen scr_num and optionally specify a width and height and initial position for that screen. Additionally a monitor number can be specified to start the server on, at which point, all coordinates become relative to that monitor. Examples: -screen 0 800x600+100+100@2 ; 2nd monitor offset 100,100 size 800x600 -screen 0 1024x768@3 ; 3rd monitor size 1024x768 -screen 0 @1 ; on 1st monitor using its full resolution (the default) -swcursor Disable the usage of the Windows cursor and use the X11 software cursor instead. -[no]trayicon Do not create a notification area icon. Default is to create one icon per screen. You can globally disable notification area icons with -notrayicon, then enable them for specific screens with -trayicon for those screens. -[no]unixkill Ctrl-Alt-Backspace exits the X Server. The Ctrl-Alt-Backspace key combo is disabled by default. -[no]wgl Enable the GLX extension to use the native Windows WGL interface for hardware-accelerated OpenGL -swrastwgl Enable the GLX extension to use the native Windows WGL interface based on the swrast interface for accelerated OpenGL -[no]winkill Alt+F4 exits the X Server. -xkblayout XKBLayout Set the layout to use for XKB. This defaults to a layout matching your current layout from Windows or us (i.e. USA) if no matching layout was found. For example: -xkblayout de -xkbmodel XKBModel Set the model to use for XKB. This defaults to pc105. -xkboptions XKBOptions Set the options to use for XKB. This defaults to not set. -xkbrules XKBRules Set the rules to use for XKB. This defaults to xorg. -xkbvariant XKBVariant Set the variant to use for XKB. This defaults to not set. For example: -xkbvariant nodeadkeys

@tziady
Copy link

tziady commented Apr 9, 2021

I realize that this was posted some time ago. However, I was having issues using -screen 0 @2 to try and display the X11 screen on my second monitor. However, when I do that; the full screen still appears to take over my primary screen.

This produced the following error in log file (with the attached popup screen):

fatelError

Welcome to the VcXsrv X Server
Vendor: The VcXsrv Project
Release: 1.20.9.0

OS: Windows NT 6.2 build 9200 (64-bit)
Contact: [email protected]

LoadPreferences: C:\Users\nero\AppData\Roaming.XWinrc not found
LoadPreferences: Loading C:\Program Files\VcXsrv\system.XWinrc
winAllocateFBShadowDDNL - Could not set full screen display mode: 80004001
winAllocateFBShadowDDNL - Using default driver refresh rate
winAllocateFBShadowDDNL - Could not set default refresh rate full screen display mode: 80004001
winFinishScreenInitFB - Could not allocate framebuffer
winScreenInit - winFinishScreenInit () failed
(EE)
Fatal server error:
(EE) InitOutput - Couldn't add screen 0(EE)
(EE) Server terminated with error (1). Closing log file.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment