[gptalk] Re: I Need The Perfect Desktop WMI Filter

  • From: "Jakob H. Heidelberg" <jakob@xxxxxxxxxxxxxxx>
  • To: <gptalk@xxxxxxxxxxxxx>
  • Date: Sun, 10 Feb 2008 21:01:57 +0100

Hi Darren,


I have to turn it around somehow - have been there (just selecting the
class) - the thing is the query will return FALSE on a desktop (have tested
with you WMI TEST tool too). So, a desktop will not load the GPO.


Select * from Win32_Battery is OK for spotting a laptop though. But, I'm
basically looking for something like:



A) Select * from Win32_SomeClassOnlyDesktopsHave




B )Select * from Win32_SomeClass.SomeValue = "SomeValueOnlyDesktopsHave"




C) Some way of saying "if you don't know the class (eg. Battery), apply the
GPO anyway" (Brainstorm: On Error, NULL return etc. - just not possible with



The "quest" is to find the perfect, *universal*, way of spotting
"Non-laptops" or Desktops - it can be done by looking for some special
computer Manufacturer, computer Model, BIOS version or whatever - but that's
different from environment to environment.



Any ideas?



Regards & thanks



From: gptalk-bounce@xxxxxxxxxxxxx [mailto:gptalk-bounce@xxxxxxxxxxxxx] On
Behalf Of Darren Mar-Elia
Sent: 10. februar 2008 20:34
To: gptalk@xxxxxxxxxxxxx
Subject: [gptalk] Re: I Need The Perfect Desktop WMI Filter



I think you were close when you were using Win32_Battery. That is the one
thing that you can reliably say that laptops have, but desktops don't. So,
have you tried the following:


Select * from Win32_Battery


Just that. Nothing else. What that does is determine if there are any
instances of that class. If not (i.e., on a desktop machine) it returns
false. If so, on a laptop, it returns true. 


Waddya think?




From: gptalk-bounce@xxxxxxxxxxxxx [mailto:gptalk-bounce@xxxxxxxxxxxxx] On
Behalf Of Jakob H. Heidelberg
Sent: Sunday, February 10, 2008 8:36 AM
To: gptalk@xxxxxxxxxxxxx
Subject: [gptalk] I Need The Perfect Desktop WMI Filter


Hi all,


I'm in desperate need of *the perfect WMI filter for spotting DESKTOP
computers only* - have been thinking about this for some days now.


I've been around solutions looking for ChassisType before - which basically
doesn't work because that's an Array. Have tried PowerSupplyState,
DesktopMonitor, DisplayConfiguration and others - just haven't found the
perfect "this is definitely a desktop WMI value"...


I've also been around using Battery/PortableBattery
/PCMCIAController/POTSModem - which all work fine to spot LAPTOPS...
However, desktops don't know the CLASS at all, so they return FALSE no
matter what. I can't even say things like "Select * From Win32_Battery Where
Availability != 2" or "Where Not X Like Y" or whatever - a desktop doesn't
handle the Win32_Battery class at all, so it's gonna say "Heck, I don't know
anything about that class *Panic* - I'm out!" - or just "False" J.


The thing is, that normally it's the LAPTOPS that have special hardware -
like Batteries and built-in Modems, PCMCIA slots etc. - so they are pretty
easy to find. With desktop computers it's another story for my part - hope
you can help me out here.


Please - I know lot's of "workarounds", but what I need is a *WMI filter*
and it has to return *TRUE* for *DESKTOPS* (or let's call the NON-LAPTOPS,
it doesn't matter). Also, if the customer had used computer names like
"DESKxxx" for desktops and "LAPTxxx" for laptops, I know I could have used
WMI filters for computer name - but unfortunately that's not the case. You
could say I'm looking for a global solution for spotting DESKTOPS using WMI
filter - I know lots of cases where this could come in handy.



Hope to hear from you soon! J



Best regards
Jakob H. Heidelberg


Other related posts: