2010-09-09 34 views
0

Wmi任務是MSBuild Extension Pack的一部分。在我們的開發機器之一上,它拋出ManagementException未找到。這裏的目標:什麼可能導致Wmi自定義MSBuild任務拋出「ManagementException not found」?

<Target Name="Clean"> 
    <ItemGroup> 
     <WmiProps Include="State"/> 
     <WmiProps Include="DisplayName"/> 
    </ItemGroup> 

    <!-- Create list of services that are currently running. --> 
    <Wmi TaskAction="Query" Class="Win32_Service WHERE DisplayName LIKE '%ServiceName%'" Properties="@(WmiProps)" Namespace="\root\CIMV2" MachineName="$(LocalDbServer)"> 
     <Output TaskParameter="Info" ItemName="Info"/> 
    </Wmi> 

    <Wmi TaskAction="Execute" Class="Win32_Service" Method="StopService" Instance="Name='%(Info.DisplayName)'" Namespace="\root\CIMV2"> 
     <Output TaskParameter="ReturnValue" PropertyName="Rval1"/> 
    </Wmi> 
</Target> 

第二WMI任務是拋出異常的一個。

回答

2

錯誤是非常簡單的(類沒有找到)。我相信這是因爲你試圖通過它的顯示名稱來查詢服務,而不是實際的名稱。將第二項任務切換爲

Instance="Name='%(Info.Name)'" 

應該可以做的。

希望這有助於,

+0

我會試試這個。 – 2010-09-09 23:04:49

+0

謝謝!我們的服務之前完成的方式是,顯示名稱和名稱相同(以前的目標是在該假設下運行的)。最近似乎發生了變化,這打破了目標。將名稱添加到WmiProps並將屬性更新爲您在答案中的所有內容。 – 2010-09-10 15:24:37

相關問題