Cursor Node has excellent compatibility for most programs and games. Whether a program uses a "native" hardware mouse
pointer or a software mouse pointer, Cursor Node provides some means to work with it.
Programs are interfaced by Cursor Node individually. Once a program receives focus,
Cursor Node will interface it and override its mouse pointer using the cn cursor chosen by the user.
The interfacing occurs only when Cursor Node is running, whether minimized or not doesn't matter.
To interface a program successfully, Cursor Node must be running on the same or greater UAC privilege level
than the target program to be used. If the target program is running in administrator mode, so must Cursor
Node. While running in administrator mode, Cursor Node is fully compatible with programs not running in
administrator mode. The exception being the Microsoft Store Apps, and Store-App like programs such as Windows
10 Calculator, Windows 10 Start Menu, etc. The Store App programs are sandboxed by an impenetrable security
barrier and cannot be fully interfaced by Cursor Node.
To run Cursor Node in administrator mode, the right-click context menu of the program shortcut provides the
"Run as administrator" option.
The default mouse pointer used by Windows is a "native" mouse pointer. It is "native" in the sense that it is
a natural part of Windows. The native mouse pointer can be changed by programs within their own confines to
achieve customized appearances and sizes. This is how most games implement their distinctive-looking mouse
All programs and games that use and manipulate the native mouse pointer in the normal way are
compatible with Cursor Node. Vast majority of programs out there are like that. For all these programs, their
mouse pointers can be overridden by the cursors made available by Cursor Node.
Games running in exclusive full-screen mode, as opposed to windowed or windowed full-screen mode, are
restricted in the size of native mouse pointer they can use. In our estimation, this is very likely to be a
limitation of the graphics engine they use. When interfacing a program running in exclusive full-screen mode,
cn cursor size is restricted by the same limitation. To find out precisely what cn cursor size can be used in a
program, the user can start with a small size and change up until the cursor stops showing up in the
program. On our test
systems, we have found 64 x 64 pixels being the largest cursor dimension usable in exclusive full-screen mode.
Other systems may differ.
In windowed and windowed full-screen mode, the native mouse pointer used by programs can be overridden by
cn cursors of all sizes. However, be aware that just because a program is running in windowed or windowed
full-screen mode, it doesn't mean the native mouse pointer is in use !
Not all programs use the native mouse pointer. Some disable the native mouse pointer and implement a separate pointer
using custom code. A pointer created in this way is a software mouse pointer. From
the perspective of an external program such as Cursor Node, a software mouse pointer used by a program is just one
graphics sprite indistinguishable from all other sprites in the program.
For this reason, it is impossible to override a software
mouse pointer using Cursor Node or using any other third-party program. However, for most programs that use a
software mouse pointer,
they nevertheless rely on the coordinates of the native mouse pointer (disabled and invisible) to track the position
of their software pointer. So long as the native mouse pointer coordinates are in use, Cursor Node can improve
the visibility of a software mouse pointer through using synthetic cursors.
Cursor Node provides synthetic cursors that track the position of the native mouse pointer, even when it
is invisible. This will often indirectly track the software mouse pointer used by a program. The synthetic
cursor is used on top of the software mouse pointer to highlight the position of the latter hence attaining
increased visibility for it. The synthetic cursor is compatible with programs
running in windowed and windowed full-screen modes only.
If Cursor Node is to be used purely for normal applications on the Windows desktop, best results can be
obtained by selecting
a cursor size that is same or smaller than the standard size permitted by Windows. The standard
Windows cursor size is typically 32 x 32 pixels and is determined by the SM_CXCURSOR and SM_CYCURSOR system
metrics. On systems classified by Windows as high DPI, the standard cursor size is 64 x 64.
Currently, Cursor Node is incompatible with any of the "Modern UI" aka "Metro" aka "Universal Windows Apps"
applications. These applications run at a lower integrity/privilege level than Cursor Node and therefore are
unable to take advantage of the capability offered by Cursor Node. Typical Universal Apps include the Windows
Microsoft Edge, Windows 10 Start Menu, etc. For these applications, the cursor cannot exceed the
standard size or flickering may result.
On these platforms, cursors larger than 64 pixels in dimension may be rendered without hardware
acceleration. Consequently, the rendering performance of large cursors may be poor. Therefore,
it is recommended that 64 pixels or smaller cursors be used.
Rendering performance of large cursors is significantly improved from Windows 8, which opens up greater
choices for the user.
On Windows Vista, it is only possible to use Cursor Node after disabling User Account Control (UAC). This
is due to Vista's security system being different to later Windows.
Virtual machines do not have the performance to accurately reproduce the normal running characteristics
of Cursor Node in a real machine. On Windows 7 or later based VM's, a double cursor may be shown for
large cursors. This is caused by limitations of VM's. To properly evaluate Cursor Node, the use of a real
machine is recommended.