📄 history.txt
字号:
Version 3.3.3 (VNC Version 3.3.3, revision 1)Release version, patched for HTML bug below. [The initial 3.3.3 release featured a bug in the rendering of HTML for the Java-based viewer. 3.3.3 was quickly withdrawn and 3.3.3R1 is now the base Version 3.3.3 release.] -=- NEW FEATURES: REGISTRY SETTINGS ARE NOW LOADED CORRECTLY FROM THE CURRENT_USER REGISTRY HIVE! When running as a service under Windows NT, WinVNC was unable to correctly load settings stored in the current user's HKEY_CURRENT_USER hive. As a workaround for this, a special helper-hook is installed when the service itself is installed. The helper-hook runs when a user logs in and passes enough information to the WinVNC service for it to locate their preferences correctly. If the helper hook fails to install or isn't run for some reason, then WinVNC will continue to operate based on ALL the WinVNC HKEY_LOCAL_MACHINE settings. A new command-line option, -defaultsettings, has been added, which will cause the running WinVNC server to show a Default Properties dialog, through which the default local properties can be editted. (While the dialog is displayed, the properties used will be the default ones. When it dissappears, WinVNC reverts to the user's settings.) Nagle's algorithm is now disabled on all WinVNC connections, decreasing latency considerably. Timestamp information is now added in the debug log output. Limited client IP-address based filtering of connections is now supported. The new Machine-Local registry setting "AuthHosts" may be specified, and should be of type "string". Match terms look like: +<ip-address-template> -<ip-address-tamplate> where ip-address-template is the leftmost bytes of the stringified IP-address, e.g. 158.97 would match both 158.97.54.1 and 158.97.128.6, for example. Multiple Match terms may be specified, delimited by the ':' character. Match terms later in the list take precedence over earlier ones. e.g. -:+158.97: [This scheme does not currently filter by DNS name] In addition to the above, incoming connections may be restricted on a server-wide basis to being accepted only on the local-loopback interface. This is controlled through the LoopbackOnly registry setting, which overrides the AllowLoopback and AuthHosts settings when active. The WinVNC priority is now increased while processing its message queue and put back to normal while preparing updates for sending. This results in apparent increase in performance, particularly when used in conjunction with some common applications. The machine's name is now included in the title of the web page used to access the Java version of the VNC client. -=- BUG FIXES: - Major: Under Windows NT, a handle was leaked whenever the SelectDesktop function was called to move a thread into a different desktop. In practice, this meant a leak everytime someone logged in, connected remotely, or used C-A-D to access security features in NT. Not pretty. Related to the above fix: When simulating Ctrl-Alt-Del, WinVNC would switch a dedicated thread into the WinLogon desktop to achieve the desired effect. When the thread quit, the handle to the WinLogon desktop was not properly freed by WinNT. This is now worked around by WinVNC internally. When killing the vncServer object, a race condition occurred because WaitUntilAuthEmpty() was used to wait for ALL clients being removed - potentially, there could have been active, unauthorised clients connected to the vncServer object, which would crash if the server object was deleted before they had quit. A new function, WaitUntilUnauthEmpty, is now used as well as WaitUntilAuthEmpty, to remove this race condition. - Minor: The LockSetting option was not correctly loaded by the Properties class in some common cases. This is now fixed. WinVNC was using ExitWindows but specifying parameters according to the specification of ExitWindowsEx. ExitWindowsEx is now used instead. -=- OTHER MODIFICATIONS: When starting up without a password set, WinVNC will first check whether the Properties dialog has been disabled with AllowProperties=0 before attempting to open it for the user to set one. Instead a dialog indicating the problem will be displayed. -=- NOTES: BUGLET:PLANAR vs CHUNKY. It transpires that problems encountered with WinVNC and 16-colour Windows 95 displays are due to Win95 VGA drivers giving a "planar" view of the world. Internally, Win95 is very bad at handling planar pixels and is also very bad at making them chunky. WinNT does not have this problem. A new error dialog has been added to warn about this problem on Win95.Version 3.3.2 (VNC Version 3.3.2, revision 8)Changes from revision 7: Fix in VNCHooks.cpp (part of the WinVNC hooks library) to place the hook handles in a shared segment of DLL memory, so that they are correctly accessed by the hook code itself. Fix in vncKeymap.cpp which should sort out the CapsLock on connect problem. Added an Initiate Outgoing Connection (Add New Client) dialog. If a machine is running a vncviewer with the -listen option then WinVNC can be made to export the display it is managing to this listening viewer. NOTE : Outgoing connections are treated as 'non-shared'. NOTES ON BUILDING UNDER VC6: For compatibility reasons, WinVNC will remain a VC5 distribution for the moment. However, some problems arise when compiling WinVNC under VC6. - vncControl.idl is not supplied in the distribution and is ONLY USED INTERNALLY at the AT&T Labs Cambridge. It is disabled in the VC5 version of the project but conversion to VC6 format re-enables it. Solution : remove vncControl.idl from the project once it is imported into Visual C++ 6, before compilation. Fixed minor bug in Log.cpp code relating to invalid handles being returned by file open callVersion 3.3.2 (VNC Version 3.3.2, revision 7)Changes from revision 6: Fixed HANDLE to HINSTANCE casting problem in VNCHooks.cpp, which prevented WinVNC from compiling under Microsoft Visual C++ 6.0 Tray icon is now refreshed every five seconds. This may help detect dynamically added IP addresses correctly Every five seconds, WinVNC will re-attempt to add the tray icon, even under Win95. If Explorer crashes or Windows 95 is being run then this should ensure the icon appears.Version 3.3.2 (VNC Version 3.3.2, revision 6)Changes from revision 5: Fixed minor protocol non-compliance bug with regard to clients which fail to send SetPixelFormat messages. Fixed DOS-prompt polling under Windows 95. DOS boxes are now polled correctly.Version 3.3.2 (VNC Version 3.3.2, revision 5)Changes from revision 4: Prepared WinVNC for release. Fixed AuthRequired race condition. Fixed AutoPortSelect bug.Version 3.3.2 (VNC Version 3.3.2, revision 4)Changes from revision 3: Fixed a tray icon bug, in which the tray icon was being produced before the menu had been loaded. Replaced the thread package with the latest version, which fixes a few resource leaks. Mouse events are now produced to reflect those sent on the wire, regardless of whether the mouse buttons would locally be swapped by the OS. This means that left- or right- handedness is a client-side feature.Version 3.3.2 (VNC Version 3.3.2, revision 3)Changes from revision 2: SETTINGS REORGANIZED! The WinVNC registry settings have now been reorganized and improved to allow better control over individual user's capabilities when running it, whether as an application or as a service. Local machine settings are stored under HKEY_LOCAL_MACHINE/Software/ORL/WinVNC3 Local per user settings are stored under HKEY_LOCAL_MACHINE/Software/ORL/WinVNC3/<username> Local default user settings are stored under HKEY_LOCAL_MACHINE/Software/ORL/WinVNC3/Default Local no-user settings are stored under HKEY_LOCAL_MACHINE/Software/ORL/WinVNC3/SYSTEM Global per user settings are stored under HKEY_CURRENT_USER/Software/ORL/WinVNC3 These groups of settings have the following priority: 1. Machine settings are always read, from the machine settings location. Not overridable. 2. Default user settings are read. 3. Local-machine, per-user settings are read for the current user, or for SYSTEM if there is no current user. These override the Default settings. 4. If AllowProperties is not zero, the global per-user settings are read. These override both the Default settings & the local-machine, per-user settings. - Local Only, Machine Settings : DebugMode, DebugLevel, AllowLoopback, AuthRequired, ConnectPriority. - Local Only, Per User Settings : AllowShutdown, AllowProperties. - Local/Global, Per User Settings : SocketConnect, AutoPortSelect, PortNumber, Password, CORBAConnect, InputsEnabled, LockSetting, PollUnderCursor, PollForeground, PollFullScreen, OnlyPollConsole, OnlyPollOnEvent UPDATE ROUTINES FIXED! If a client chose to send multiple update requests to the server without waiting for the update data, then the server would only consider the last request. This behaviour was incorrect and has now been fixed. As a result, WinVNC will now work properly with the PalmVNC viewer. HTTP SERVER FIXED! The HTTP server section of WinVNC could end up listening on the wrong port number when automatic display number selection was in use. This is now fixed. MEMORY LEAK FIXED! A small memory leak in the WinNT side of the vncService::CurrentUser function has been fixed. Although the amount lost on each execution was small, the function is called often enough for this to cause problems over long periods of use. Established that the Ctrl-Alt-Del problem under NT 3.51 is because GetAsyncKeyState for ctrl and alt ALWAYS returns zero. Don't know why... Fixed a potential lockup when the Properties dialog is closed by the OS rather than by the Ok or Cancel buttons.Version 3.3.2 (VNC Version 3.3.2, revision 2)Changes from revision 1: CTRL-ALT-DEL IMPROVED! Ctrl-Alt-Del will now work both with the Delete key and with the keypad Del key, from Unix clients. Unix clients treat these two keys differently but Windows doesn't, so WinVNC now maps both on to VK_DELETE internally. MENU UPDATES IMPROVED! Extra hook code has been added to the VNCHooks library to catch the messages used to update the contents of pop-up menus, etc. As a result, menus tend to suffer much less from the characteristic colour-smear effect. Code is now in place to perform automatic locking or logoff of the workstation when all remote clients have closed, for security reasons. Unfortunately, the LockWorkstation function doesn't work on pre-NT5 machines, so only the logoff functionality is implemented. The new ConnectPriority option is available, on a per-machine basis. The HKEY_LOCAL_MACHINE/Software/ORL/WinVNC3/ConnectPriority setting can take one of three values: 0 - new, non-shared incoming connections kick off existing ones. 1 - all incoming connections are treated as shared, regardless of the -shared viewer option. 2 - new, non-shared incoming connections will be refused if a current connection exists. Automatic display number selection is now available. This option is set through the WinVNC properties dialog. When this option is used, the display number parameter in the dialog is ignored and the display number to use is instead allocated on the fly by WinVNC.Version 3.3.2 (VNC Version 3.3.2, revision 1)Changes from base 3.3.2 release: PALETTE-BASED CLIENTS SUPPORTED! Clients which request 8-bit palette-based data are now supported by WinVNC. Palette-based clients will get the best results from 8-bit palette mode servers, due to the way in which truecolour is culled into 8-bit palettes. svncviewer will now work with 8-bit WinVNC desktops as well as Xvnc ones. LOGGING SUPPORTED! Run-time logging of all internal debug messages is now supported. Log data may be output to a file or a console window (or the MSVC debugger if the program was compiled with debugging active.) Two registry keys under HKEY_LOCAL_MACHINE/Software/ORL/WinVNC3 are used: DebugMode indicates which logging methods to use. [1 = MSVC debugger] 2 = Output to log file Winvnc.log in the WinVNC directory 4 = Output to a console window, displayed on-screen Any combination of the above values may be used. DebugLevel indicates how much debug information to present. Any positive
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -