Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I would like to know how to read, via vbscript, WMI, Powershell etc -the new Windows 7 Action center messages that the user normally gets informed of.

I want to read all those messages on each machine and store then in a central database, then disable the messages from displaying to the user on the local machines.

EDIT: - Once i can read the messages i know how to deal with storing them, my question is how do i programatically read those messages from each Win7 PC

share|improve this question

Does Windows 7 log the messages in the Event Viewer? I don't know if Microsoft has provided any sort of interface to the Action Center directly, so if there are equivalent Event Viewer events, I believe there are ways to query information out of there instead.

EDIT: Here's a WMI script to pull data from a computer's event log that might get you started.

share|improve this answer
thanks for the script, i already have similar code to read the event logs and i have not seen any of the action center stuff stored in the event logs – Khalid Rahaman Nov 3 '09 at 5:26

You may have been misled by the MS marketing hype calling it Action Center. The original name which is found in the documentation is actually Security Center.

From Security Center API:

I've managed to find these links:

Windows Security Center

"You have some Non Disclosure Agreement document to sign before you get the access to the security center. The interface is not likely availble publicly. The contact information can be found at Implementing the Teredo Security Model"

And there is WMI interface:

Code Snippet:

Set oWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\.\root\SecurityCenter")
Set colItems = oWMI.ExecQuery("Select * from AntiVirusProduct")
For Each objAntiVirusProduct In colItems
msg = msg & "companyName: " & objAntiVirusProduct.companyName & vbCrLf
msg = msg & "displayName: " & objAntiVirusProduct.displayName & vbCrLf
msg = msg & "instanceGuid: " & objAntiVirusProduct.instanceGuid & vbCrLf
msg = msg & "onAccessScanningEnabled: " & objAntiVirusProduct.onAccessScanningEnabled & vbCrLf
msg = msg & "productUptoDate: " & objAntiVirusProduct.productUptoDate & vbCrLf
msg = msg & "versionNumber: " & objAntiVirusProduct.versionNumber & vbCrLf
msg = msg & vbCrLf
WScript.Echo msg

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .