Wednesday, February 1, 2012

Detect OS Architecture with Specops Deploy

Problem: Specops Deploy CSE has problem installing applications on Windows XP 32bit.
But working fine on Windows 7 x86 and x64.

This is logged in Event Log:

   at System.Management.ManagementObjectCollection.get_Count()
   at SpecopsSoft.GroupPolicy.Targets.WqlTargetCriterionItem.IsSatisfied(WindowsIdentity user)
   at SpecopsSoft.GroupPolicy.Targets.TargetCriterionBase.IsSatisfied(WindowsIdentity user)
   at SpecopsSoft.SpecopsDeploy.GpExtension.SpecopsDeployGpExtensionClient.CreateActiveDeploymentList(GpExtensionDataBase[] changedOrNewGpos)
   at SpecopsSoft.SpecopsDeploy.GpExtension.SpecopsDeployGpExtensionClient.ProcessGpos(GroupPolicyObject[] deletedGpos, GpExtensionDataBase[] changedExtensionDatas, WindowsIdentity currentUserIdentity, GpoFlags currentGpoFlags, ManagementScope rsopWmiNamespace)
   at SpecopsSoft.GroupPolicy.GroupPolicyProcessor.ProcessGroupPolicy()




And this information can be found in Specops Debug Logs: 

1/24/2012 4:36:26 PM    1864:1             sogpproc: [EXCEPTION]: An error occurred while processing Group Policy Object, the following is the error message | | | | System.Management.ManagementException: Invalid query |    at System.Management.ManagementException.ThrowWithExtendedInfo(ManagementStatus errorCode)|    at System.Management.ManagementObjectCollection.ManagementObjectEnumerator.MoveNext()|    at System.Management.ManagementObjectCollection.get_Count()|    at SpecopsSoft.GroupPolicy.Targets.WqlTargetCriterionItem.IsSatisfied(WindowsIdentity user)|    at SpecopsSoft.GroupPolicy.Targets.TargetCriterionBase.IsSatisfied(WindowsIdentity user)|    at SpecopsSoft.SpecopsDeploy.GpExtension.SpecopsDeployGpExtensionClient.CreateActiveDeploymentList(GpExtensionDataBase[] changedOrNewGpos)|    at SpecopsSoft.SpecopsDeploy.GpExtension.SpecopsDeployGpExtensionClient.ProcessGpos(GroupPolicyObject[] deletedGpos, GpExtensionDataBase[] changedExtensionDatas, WindowsIdentity currentUserIdentity, GpoFlags currentGpoFlags, ManagementScope rsopWmiNamespace)|    at SpecopsSoft.GroupPolicy.GroupPolicyProcessor.ProcessGroupPolicy()
1/24/2012 4:36:26 PM    1864:1    sogpproc: Sending _FAILED

Cause: Customer was using a WMI Query that's not supported on Windows XP.
SELECT *
FROM Win32_OperatingSystem
WHERE OSArchitecture = '64-bit'

The OsArchitecture class was not added until Windows Vista according to Microsoft MSDN

Solution: Change the Target so it's using the built-in OS Architecture control to target either x86 or x64 Operating Systems as seen in this picture.




No comments:

Post a Comment