Posts

Showing posts from January, 2015

Monitor Window Registry Key value change ashynchronously Javascript

Here is sample code to monitor registry value change without hanging the thread. Its sample code so use properly. var g_DefaultTimeOutForRegMonitoring = 15000; MonitoRegistryValue: function (szRegKeyVal, val) { // Key value path and value to watch var intervalID; var regKey = szRegKeyVal; var value = val; intervalID = setInterval(function (regKey, value) { try { var ret; ret = g_objRegUtil.ReadValueFromRegistry(szRegKeyVal);                 if (ret == value)                 // Check ret value and make decision } } catch (err) { } }, 5); // We will wait for certain time else break the watch setTimeout(function () { clearInterval(intervalID); }, g_DefaultTimeOutForRegMonitoring); }

Get correct OS version on win 8.1 without using GetVesionEx API (deprecated )

NTSTATUS (WINAPI *RtlGetVersion)(LPOSVERSIONINFOEXW); OSVERSIONINFOEXW osInfo; *(FARPROC*)&RtlGetVersion = GetProcAddress(GetModuleHandleA( "ntdll" ), "RtlGetVersion" ); if (NULL != RtlGetVersion) {    osInfo.dwOSVersionInfoSize = sizeof (osInfo);    RtlGetVersion(&osInfo); } Use above method on all  platform and it will work fine. Where GetOSVersionEx API deprecated by MS and gives wrong result on WIN 8.1.   Tested above sample on XP to 8,1 and works for me. There is another  alternative of manifest to use GetOSversionEx. Source: CodeProject