Пример #1
0
        static MouseHider()
        {
            cursorIds       = Enums.Values <User32Types.CursorName>().Cast <uint>().ToArray();
            OriginalCursors = new IntPtr[cursorIds.Length];
            blankCursors    = new IntPtr[cursorIds.Length];
            int i     = 0;
            var blank = User32.CreateCursor(IntPtr.Zero, 0, 0, 32, 32, ((byte)0xFF).Repeat(32 * 4).ToArray(), ((byte)0x00).Repeat(32 * 4).ToArray());

            foreach (var cursor in cursorIds)
            {
                var hc = User32.LoadCursor(IntPtr.Zero, (IntPtr)cursor);
                OriginalCursors[i] = User32.CopyImage(hc, 2, 0, 0, 0);
                blankCursors[i]    = blank;
                i++;
            }

            AppDomain.CurrentDomain.ProcessExit += OnProcessExit;
        }