D
David Solomon
If you run Regmon (from www.sysinternals.com), you'll see
the Spyware processes doing LOTS and LOTS of regular
registry queries. This is inefficient (wastes CPU time,
memory, and processor time) -- one really obvious bad
example (see below for extract of Regmon log) is the
continuous checking of
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState.
GcasServ.exe opens that key, queries the value 4 (FOUR!)
times in a row, then closes the key, and then does it
again, and again, and again.
A more efficient mechanism to be notified of registry
changes it to call RegNotifyChangeKeyValue to declare
change notification on the key(s) of interest.
Just a suggestion for improvement...
--Dave Solomon - http://www.solsem.com
co-author, Windows Internals 4th edition (MS Press)
and Inside Windows 2000, 3rd edition
=======================
3:01:01 PM gcasServ.exe:19888 OpenKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
Access: 0x2000000
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 CloseKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
3:01:01 PM gcasServ.exe:19888 OpenKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
Access: 0x2000000
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 CloseKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
3:01:01 PM gcasServ.exe:19888 OpenKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
Access: 0x2000000
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 CloseKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
the Spyware processes doing LOTS and LOTS of regular
registry queries. This is inefficient (wastes CPU time,
memory, and processor time) -- one really obvious bad
example (see below for extract of Regmon log) is the
continuous checking of
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState.
GcasServ.exe opens that key, queries the value 4 (FOUR!)
times in a row, then closes the key, and then does it
again, and again, and again.
A more efficient mechanism to be notified of registry
changes it to call RegNotifyChangeKeyValue to declare
change notification on the key(s) of interest.
Just a suggestion for improvement...
--Dave Solomon - http://www.solsem.com
co-author, Windows Internals 4th edition (MS Press)
and Inside Windows 2000, 3rd edition
=======================
3:01:01 PM gcasServ.exe:19888 OpenKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
Access: 0x2000000
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 CloseKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
3:01:01 PM gcasServ.exe:19888 OpenKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
Access: 0x2000000
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 CloseKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
3:01:01 PM gcasServ.exe:19888 OpenKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS
Access: 0x2000000
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 QueryValue
HKCU\SOFTWARE\GIANTCompany\AntiSpyware\ServState
SUCCESS "1"
3:01:01 PM gcasServ.exe:19888 CloseKey
HKCU\SOFTWARE\GIANTCompany\AntiSpyware SUCCESS