Index
Getting Started - Installing and Running
Installation
Using PMVNCD
Command-line options
System Tray Support
VNCPASS utility
PMVNCD Properties
Hidden settings
Limitations/Known problems
Getting Started - Installing and Running
PMVNCD is a VNC server that will allow you to view your OS/2 (or eCS) desktop
from any VNC viewer. Because standard versions of OS/2 only
support a single graphical user being logged in at any one time, PMVNC
makes the existing desktop of the PC available remotely, rather than
creating
a separate desktop as happens with the Unix server. VNC does not
make a OS/2 machine into a multi-user
server in the same way that Citrix-based software or Windows Terminal
Server, for example, does. A
single OS/2 machine can therefore be accessed by multiple users, but
if they
all connect at the same time they will all see the same desktop!
PMVNCD is known to work on OS/2 Warp 3/4, Warp
Server for e-Business, MCP/ACP and eComStation.
Note: PMVNCD requires at least Warp 3 with FixPak 32,
or Warp 4 with FixPak 5 installed.
Installation
Unpack zip into a directory of your choice, and run install.cmd -
folder with name "PM VNC Server" will be created on your desktop. No
reboot required.
Using PMVNCD
Just run pmvncd.exe or click on "PM VNC Server" object. On
first run it
will show properties dialog, where you must specify password. Use
objects in desktop folder for terminating PMVNCD or calling properties
dialog. You can connect to the server from another machine using a VNC
viewer.
Also, you can use command-line options:
Command-line options
- -help
- Shows message about cmdline options.
- -settings
- Tells a running copy of PMVNCD to show the Properties
box.
- -connect [host]
- Tells a running copy of PMVNCD to initiate an outgoing
connection to a listening viewer running on the specified machine.
This is the equivalent of the 'Add New Client' menu option. You can put
multiple -connect options on one command line to connect to multiple
viewers at once. If no host name is specified then the Add New Client
dialog will be displayed.
- -kill
- Kills a running copy of PMVNC.
- -about
- Tells a running copy of PMVNCD to
show its About box.
If no options are given then PMVNCD runs normally.
System Tray Support
If you have SysTray/WPS or XCenter/eCenter with SysTray
widget installed, you can control PMVNCD through tray icon. On
startup, PMVNCD will add a VNC icon into the system tray area.

Clicking on this icon with the
right mouse button will cause a menu to be displayed.
- Properties - This
will cause the Properties dialog to be displayed, allowing the user to
change various PMVNCD parameters.
- Add New Client -
This allows
outgoing connections to be made from the server to any "listening"
viewer. The name or IP address of the target viewer machine can be
entered in the dialog. The server will connect to the default
listening viewer port, 5500. A different port
number can be specified by adding :portnumber after the name or
IP
address. Connections created this way are treated as shared. See
also the -connect option.
- Disconnect All Clients
- This will
disconnect all currently connected clients from the server.
- About PMVNCD - This
should be
obvious!
- Close VNC -
Shutdown
the server.
Moving the mouse over the icon should cause the IP address of the
local machine to be displayed, if it can be discovered at that
time. Tray icon becomes gray when client(s) is connected.
VNCPASS utility
Using vncpass.exe you
can set
password for PMVNCD from command line. It may be useful when you manage
remote PC using telnet/ssh and want run PMVNC. Usage: vncpass
<password>.
PMVNCD Properties
The following options are available from the Properties dialog, shown
here with the default installation settings.
Incoming Connections
- Accept Socket Connections
- (default) The server
normally accepts direct, socket-based connections from the vncviewer
program.
Clearing this will disable any incoming
connections.
- Display Number -
This
allows the user to
specify the display number which the server will use. There is
normally
no need to change this from the default of zero.
- Password - Incoming
connections must be
authenticated to verify that the person connecting is allowed to
connect
to this machine. This text box allows your password to be specified for
authentication.
- Auto - This tick
box
indicates to PMVNCD whether it should use the display number specified in the Display
Number box, or whether it should use the first display number not already in
use on the server machine.
- Enable built-in HTTP daemon
- PMVNCD can optionally run a simple web server on port 5800+display
number, which will serve a web page allowing the machine to be
accessed from any Java-enabled browser. If this box is not ticked then
the machine will not be accessible via the standard web interface.
- When Last Client Disconnects
- This catchily-named option determines the VNC server's behaviour when
the last client connection to it is closed. The available settings are:
- Do Nothing (default).
- Lock Workstation - The desktop will be automatically
locked on disconnect.
- Logoff Workstation - (not supported).
Connection Settings
- Disable Remote Keyboard &
Pointer -
Any new incoming connections will be able to view the screen but not
send
any input.

Update Handling
Note that clicking in a window will generally cause it to
be updated,
so if you have certain applications which don't update very well, try
this!
The default update handling settings should be the right ones for most
people, and in general you will slow things down by changing them, so
don't
do this unless you have applications which cause problems.
- Poll Full Screen-
Some applications are
incompatible with the methods currently used in PMVNCD to trap screen
updates.
For this reason, it is sometimes useful to be able to poll the entire
screen
in order to check for changes, sacrificing performance for
accuracy.
- Poll Foreground Window
- (default) Polling only the
currently selected window for changes is less CPU intensive than
full-screen
polling and often gives similar results, for example when using the VIO
windows, which is not normally compatible with PMVNCD.
- Poll Window Under Cursor-
A variation on
Poll Foreground Window, this option causes the window under the mouse
cursor
to be polled for changes. Both options may be enabled simultaneously if
required.
- Poll Console Windows Only-
(default) When this option
is set, the only windows which will be ever be polled are VIO windows.
This works well in conjunction with Poll Window Under Cursor, to use
polling
only when the cursor is over a console window.
- Poll On Event Received Only-
When this
option is set, the screen will only be polled for updates when a mouse
or keyboard event is received from the remote client. This is provided
for low bandwidth networks, where it may be useful to control how often
the screen is polled and changes sent.
- Handle timer messages-
A number of PM applications, most notably the Clock-like programs, use
WM_TIMER events to trigger updates to their displays, rather than
WM_PAINT
messages. When this option is set, WM_TIMER messages
will trigger PMVNCD updates. However, many programs use timer events for
purposes other than
updating
the screen, so using this option may cause higher CPU load.
- Deferred updates-
This option comes from a Windows version of the VNC server, and looks
like it not have sense for Presentation Manager which use single queue
for all messages, so posted messages will deferred anyway. Enabling
this option will set additional deferring for updates, which a). not
needed, and b). interfere with Odin-bases applications (them load CPU).
Original description from WinVNC documentation: "The VNCHooks library
catches messages sent to windows before
they are dealt with by the window. As a result, sending an update
message
to WinVNC to indicate the potential change can result in WinVNC sending
the updated area to the client before it has actually been redrawn by
the
application! This is a common problem, especially on multiprocessor
versions
of NT/2000/XP, so deferred updates are used by default. Deferred
updates are handled
by posting a custom message back into the window's own message queue
rather
than posting to WinVNC directly. By the time this custom message is
seen
again by the VNCHooks library, the message that caused it will have
been
handled and the update can then be forwarded to WinVNC without danger
of
being handled prematurely. A few programs don't handle these extra
messages
in their queue very well, so this optimisation is optional."

Advanced
- Password required
-
By default, all PMVNCD servers will not accept incoming connections
unless the server has had its password field set to a non-null
value.
This restriction was placed to ensure that misconfigured servers would
not open security loopholes without the user realising. If a
server is only to be used on a secure LAN, however, it may be desirable to
forego such checking and allow machines to have a null password. Uncheck
this option to disable null-password checking by PMVNCD.
-
Accept connections from the local machine
By default, the VNC server will disallow any vncviewer connections from
the same machine, but sometimes it is required set this setting to enabled.
By activating the checkbox PMVNCD will allow local-loopback
connections.
- AuthHosts - The
AuthHosts setting used to specify a set of IP address templates which
incoming
connections
must match in order to be accepted. By default, the template is empty
and
connections from all hosts are accepted. The template is of the
form:
+[ip-address-template]
?[ip-address-template]
-[ip-address-template]
In the above, [ip-address-template] represents the leftmost bytes of
the
desired stringified IP-address. For example, +158.97 would match
both
158.97.12.10 and 158.97.14.2. Multiple match terms may be
specified,
delimited by the ":" character. Terms appearing later in the template
take
precedence over earlier ones. e.g. -:+158.97: would filter out all
incoming connections except those beginning with 158.97. Terms
beginning with
the "?" character are treated by default as indicating hosts from whom
connections
must be accepted at the server side via a dialog box. The QuerySetting
option
determines the precise behaviour of the three AuthHosts options.
- Logging, LogLevel, Log filname,
Append - LogLevel
indicates how much debug information to
present in log file. Use values from zero (minimum) to 10 (full
debugging output). Append
indicates that information will be appended to log file, otherwise log
file will be truncated on every PMVNCD start.

Misc
- Connection idle timeout-
This setting tells PMVNCD how many seconds a connected VNC client may
remain idle for (no input events or update requests) before being
disconnected. Default is 60 minutes. Note:
timeout works correctly only with TCP/IP version 4.1 or higher. With
TCP/IP version 4 or lower idle timeout disabled.
- 15bit color depth-
Try this option if you get incorrect colors in viewer.
PMVNCD - Hidden Settings
Some advanced options not present in properties dialog, but
may be
changed by editing profile. PMVNCD store settings in User profile file
under the ER_PMVNCD key. Use INI-editor or regedit2 to alter these
options. All options are string type, even if represents numeric values.
ConnectPriority
By default, all PMVNCD servers will disconnect any existing connections
when an incoming, non-shared connection is authenticated. This
behaviour
is undesirable when the server machine is being used as a shared
workstation
by several users or when remoting a single display to multiple clients
for vewing, as in a classroom situation.
ConnectPriority indicates what PMVNCD should do when
a non-shared
connection is received:
0 = Disconnect all existing connections.
1 = Don't disconnect any existing connections.
2 = Refuse the new connection.
LoopbackOnly
By default, PMVNCD servers accept incoming connections on any network
adapter address, since this is the easiest way of coping with
multihomed machines.
In some cases, it is preferable to listen only for connections
originating
from the local machine and aimed at the "localhost" adapter - a
particular
example is the use of VNC over SSH to provide secure VNC.
Setting this registry entry to 1 will cause PMVNCD to only accept local
connections - this overrides the AllowLoopback and AuthHosts
settings.
Setting this entry to zero causes PMVNCD to accept connections on any
adapter
and is the default setting.
QuerySetting
The QuerySetting allows individual users to tailor the degree of
paranoia
expressed by the per-machine AuthHosts setting. This value
may be in range from
zero (maximum availability) to four (maximum security). The following
table
indicates how the value affects the AuthHosts behaviour:
0 - +:Accept, ?:Accept, -:Query
1 - +:Accept, ?:Accept, -:Reject
2 - +:Accept, ?:Query, -:Reject [Default]
3 - +:Query, ?:Query, -:Reject
4 - +:Query, ?:Reject, -:Reject
By default, value 2 (Obey AuthHosts) will be assumed.
QueryTimeout
The QueryTimeout setting indicates the number of seconds for which the
Accept Connection dialog (see AuthHosts and QuerySetting options) will
be
displayed before rejecting the incoming connection automatically.
Limitations/Known problems
- PMVNCD doesn't work with native Matrox display driver. Use
SDD/SNAP.
- Shift + <Function keys/Cursor keys> not work in OS/2
VIO.
- Ctrl + <char> may send <char> to PM programs.
- Some messageboxes may leave garbage on desktop.
|