Hi,

 

                Thank you, I am getting confused. 

 

Can you explain in details like how to configure the SCCM server.

 

Regards

Rajan

 

From: [email protected] [mailto:[email protected]]
On Behalf Of Sherry Kissinger
Sent: 18 February 2015 04:14
To: [email protected]
Subject: Re: [mssms] mof file for Adobe Acrobat products

 

This isn't quite what you mean; but our license folk were interested in
this:
http://myitforum.com/myitforumwp/2012/06/13/gather-some-adobe-software-seria
l-numbers-using-configmgr-dcm-and-hardware-inventory/ 

 

 

 

On Tuesday, February 17, 2015 3:12 PM, "Murray, Mike" <[email protected]
<mailto:[email protected]> > wrote:

 

This

 

From: [email protected] <mailto:[email protected]>
[mailto:[email protected]] On Behalf Of Daniel Ratliff
Sent: Tuesday, February 17, 2015 11:50 AM
To: [email protected] <mailto:[email protected]> 
Subject: RE: [mssms] mof file for Adobe Acrobat products

 

Why do you need a .mof file? Just use hardware inventory or asset
intelligence. 

 

Daniel Ratliff

 

From: [email protected] <mailto:[email protected]>
[mailto:[email protected]] On Behalf Of Rajan Tri
Sent: Tuesday, February 17, 2015 2:34 PM
To: [email protected] <mailto:[email protected]> 
Subject: [mssms] mof file for Adobe Acrobat products

 

Hi,

 

                I am trying to enable Hardware inventory class for adobe
acrobat products, But unable to find the options.

 

                Anyone tried this option? How can we create mof file for
Acrobat products.

 

Regards

Rajan

 


The information transmitted is intended only for the person or entity to
which it is addressed
and may contain CONFIDENTIAL material. If you receive this
material/information in error,
please contact the sender and delete or destroy the material/information.

 

 

 

 



On Error Resume Next
'--------------------
'Based on 
http://blogs.adobe.com/oobe/2009/11/software_tagging_in_adobe_prod_1.html
'
'Steps to find Adobe Serial Numbers based on .swtag files.
'1. Target machines with Adobe software (but not Reader)
'2. These are the folders to look in:
'   If XP or Server03, then these two:  
'         %ALLUSERSPROFILE%\Application Data\Adobe\ISO-19770\
'         %ALLUSERSPROFILE%\Application Data\regid.1986-12.com.adobe\
'   If Vista or Server08 or 7 (and possibly Server8, but I'm not sure), then 
these two:  
'         %PROGRAMDATA%\Adobe\ISO-19770\
'         %PROGRAMDATA%\regid.1986-12.com.adobe\
'3. In those folders, look for and record for later opening and parsing with an 
xmlparser,
'   any files ending in .swtag
'   a.  inside the .xml, tages of interest:
'       <sat:Product_title> OR <product>
'       <swid:product_version>
'          <sat:name>  (this is actually the version)
'        OR <product_version> as the version
'       <sat:unique_id>
'       <sat:activation_status>
'       <sat:channel_type>
'       <sat:customer_type>
'       <sat:serial_number>
'4. using an xmlparser, open up each found .swtag file, and get the info into 
an array
'5. Dump that info into a custom wmi namespace or regkeys for later retrieval.
'6. Mof edit that information back. (remove the ' comment at the beginning of 
each line
'   before adding to the bottom of your sms_def.mof)
'   [ SMS_Report     (TRUE), 
'     SMS_Group_Name ("AdobeInfo"), 
'     SMS_CLASS_ID   ("CUSTOM|AdobeInfo|1.0") ]
'   class cm_AdobeInfo : SMS_Class_Template
'   {
'     [SMS_Report (TRUE), key] uint32 Counter;
'     [SMS_Report (TRUE)     ] string LicenseState;
'     [SMS_Report (TRUE)     ] string PartOfASuite;
'     [SMS_Report (TRUE)     ] string ScriptLastRan;
'     [SMS_Report (TRUE)     ] string SerialNumber;
'     [SMS_Report (TRUE)     ] string Title;
'     [SMS_Report (TRUE)     ] string Version;
'    };
'-----End of What the Script is Meant to Do, below is the actual script----
'Step 2: getOSBuild and figure out folders to look in.
'read win32_operatingsystem for osversion, 5.x are win2k, xp, and server03
'                                          6.x are vista and higher.
'-------------------------------------------------------------------------
strcomputer = "."
set sho = wscript.CreateObject("Wscript.Shell")
set fso = CreateObject("Scripting.FileSystemObject")
DIM StrFolder(1)
Set ObjWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
set colItems = objWMIService.ExecQuery("Select Version from 
win32_operatingSystem",,48)
For each objItem in colItems
  if left(objItem.Version,1)="5" then
     strBaseFolder=sho.ExpandEnvironmentStrings("%ALLUSERSPROFILE%") & 
"\Application Data\"
    else
     strBaseFolder=Sho.ExpandEnvironmentStrings("%PROGRAMDATA%") & "\"
  end if
Next
strFolder(0) = strBaseFolder & "Adobe\ISO-19770"
strFolder(1) = strBaseFolder & "regid.1986-12.com.adobe"
'wscript.echo strfolder(0)
'wscript.echo strfolder(1)
'------------------------
'Step 3: Look inside those folders for .swtag files
'------------------------
DIM StrFiles(30)
j=0
For i=0 to 1
 err.clear
 Set Folder = fso.GetFolder(strFolder(i))
 if err.number <> 0 then
'  wscript.echo "Error Number: " & err.number & ", " & err.Description
  else
  Set files = folder.Files
  For each File in Files
   if lcase(right(file.name,5))="swtag" or lcase(right(file.name,7))="swidtag" 
then
     strfiles(j) = strfolder(i) & "\" & file.Name
'     wscript.echo strfiles(j)
     j=j+1
   end if
  Next
 end if
Next
'-----------------------
'Step 4: xmlparse out the tag information of interest to us
'-----------------------
k=0
Dim Values(20,5)
for k=0 to j-1
 Set objXMLDoc = CreateObject("Microsoft.XMLDOM") 
 objXMLDoc.async = False
 objXMLdoc.load(strfiles(k))
 if objxmldoc.parseError.errorcode<>0 then
  'wscript.echo "Failed to get the xml file, with error: " & 
objxmldoc.parseerror.errorcode
 else
  Set ObjSerNum = objxmlDoc.GetElementsByTagName("serial_number")
  Values(k,0) = ObjSerNum.item(0).Text
   if len(values(k,0))=0 then
      Set ObjTitle = objxmlDoc.GetElementsByTagName("sat:serial_number")
        Values(k,0) = ObjTitle.item(0).Text
     if len(values(k,0))=0 then
      Set ObjTitle = objxmlDoc.GetElementsByTagName("swid:serial_number")
        Values(k,0) = ObjTitle.item(0).Text
     end if
   end if

  Set ObjlicState = objxmlDoc.GetElementsByTagName("license_state")
  Values(k,1) = ObjlicState.item(0).Text
   if len(values(k,1))=0 then
      Set ObjTitle = objxmlDoc.GetElementsByTagName("sat:activation_status")
        Values(k,1) = ObjTitle.item(0).Text
     if len(values(k,1))=0 then
      Set ObjTitle = objxmlDoc.GetElementsByTagName("swid:activation_status")
        Values(k,1) = ObjTitle.item(0).Text
     end if

   end if

  Set ObjSuitePart = objxmlDoc.GetElementsByTagName("part_of_suite")
  Values(k,2) = ObjSuitePart.item(0).Text
   if len(values(k,2))=0 then
      Set ObjTitle = objxmlDoc.GetElementsByTagName("sat:unique_id")
        Values(k,2) = ObjTitle.item(0).Text
     if len(values(k,2))=0 then
      Set ObjTitle = objxmlDoc.GetElementsByTagName("swid:unique_id")
        Values(k,2) = ObjTitle.item(0).Text
     end if
   end if

  Set ObjTitle = objxmlDoc.GetElementsByTagName("sat:product_title")
  Values(k,3) = ObjTitle.item(0).Text
   if len(values(k,3))=0 then
      Set ObjTitle = objxmlDoc.GetElementsByTagName("product")
        Values(k,3) = ObjTitle.item(0).Text
     if len(values(k,3))=0 then
      Set ObjTitle = objxmlDoc.GetElementsByTagName("swid:product_title")
        Values(k,3) = ObjTitle.item(0).Text
     end if
   end if

  Set ObjVersion = objxmlDoc.GetElementsByTagName("sat:name")
  Values(k,4) = ObjVersion.item(0).Text
   if len(values(k,4))=0 then
      Set ObjVersion = objxmlDoc.GetElementsByTagName("version")
        Values(k,4) = ObjVersion.item(0).Text

     if len(values(k,4))=0 then
      Set ObjTitle = objxmlDoc.GetElementsByTagName("swid:name")
        Values(k,4) = ObjTitle.item(0).Text
     end if


   end if

'  wscript.echo "SerNum:        " & Values(k,0)
'  wscript.echo "LicenseState:  " & Values(k,1)
'  wscript.echo "Part of Suite: " & Values(k,2)
'  wscript.echo "Title:         " & values(k,3) 
'  wscript.echo "Version:       " & values(k,4)

 end if
next
'-------------
'Step 5: Create and populate a custom WMI namespace
'-------------
Dim wbemCimtypeString
Dim wbemCimtypeUint32
wbemCimtypeString = 8
wbemCimtypeUint32 = 19

Set oLocation = CreateObject("WbemScripting.SWbemLocator")

'Remove classes
Set oServices = oLocation.ConnectServer(, "root\cimv2")
set oNewObject = oServices.Get("cm_AdobeInfo")
oNewObject.Delete_

'Create data class structure
Set oServices = oLocation.ConnectServer(, "root\cimv2")
Set oDataObject = oServices.Get
oDataObject.Path_.Class = "cm_AdobeInfo"
oDataObject.Properties_.add "Counter", wbemCimtypeUint32
oDataObject.Properties_.add "LicenseState", wbemCimtypeString
oDataObject.Properties_.add "PartOfASuite", wbemCimtypeString
oDataObject.Properties_.add "SerialNumber", wbemCimtypeString
oDataObject.Properties_.add "Title", wbemCimtypeString
oDataObject.Properties_.add "Version", wbemCimtypeString
oDataObject.Properties_.add "ScriptLastRan", wbemCimtypeString
oDataObject.Properties_("Counter").Qualifiers_.add "key", True
oDataObject.Put_

'Add instances
Set oServices = oLocation.ConnectServer(, "root\cimv2")

For m = 0 to j-1
        Set oNewObject = oServices.Get("cm_AdobeInfo").SpawnInstance_
        oNewObject.Counter = m
        oNewObject.LicenseState = Values(m,1)
        oNewObject.PartOfASuite = Values(m,2)
        oNewObject.SerialNumber = Values(m,0)
        oNewObject.Title = Values(m,3)
        onewObject.Version = Values(m,4)
        oNewObject.ScriptLastRan = Now
        oNewObject.Put_
Next
wscript.quit





Reply via email to