summaryrefslogtreecommitdiffstats
path: root/src/detection/cursor/cursor_windows.c
diff options
context:
space:
mode:
authorsumuel <samuel@yakubos.org>2026-08-17 20:44:55 +0000
committersumuel <samuel@yakubos.org>2026-08-17 20:44:55 +0000
commit76424950e373d3b04ac3dd13019151bfba3e8423 (patch)
tree4c3cfdbda039e592b9186be3e28f8d7cfd439e8a /src/detection/cursor/cursor_windows.c
Add the files
Diffstat (limited to 'src/detection/cursor/cursor_windows.c')
-rw-r--r--src/detection/cursor/cursor_windows.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/detection/cursor/cursor_windows.c b/src/detection/cursor/cursor_windows.c
new file mode 100644
index 0000000..a6814ec
--- /dev/null
+++ b/src/detection/cursor/cursor_windows.c
@@ -0,0 +1,17 @@
+#include "cursor.h"
+
+#include "common/io.h"
+#include "common/windows/registry.h"
+
+void ffDetectCursor(FFCursorResult* result) {
+ FF_AUTO_CLOSE_FD HANDLE hKey = NULL;
+ if (ffRegOpenKeyForRead(HKEY_CURRENT_USER, L"Control Panel\\Cursors", &hKey, &result->error)) {
+ if (ffRegReadStrbuf(hKey, NULL, &result->theme, &result->error)) {
+ uint32_t cursorBaseSize;
+ if (ffRegReadUint(hKey, L"CursorBaseSize", &cursorBaseSize, NULL)) {
+ // Not available on Windows 8.1
+ ffStrbufAppendUInt(&result->size, cursorBaseSize);
+ };
+ }
+ }
+}