【发布时间】:2020-08-01 03:05:45
【问题描述】:
我正在使用 .Net Core 和 Microsoft.Management.Infrastructure nuget 包来查询 SCCM 集合并成功获取设备。
using Microsoft.Management.Infrastructure;
...
string Namespace = @"root\cimv2";
string Query = "SELECT * FROM SCCM_collection where name ='$param'";
CimSession mySession = CimSession.Create("Computer_B");
IEnumerable<CimInstance> queryInstance = mySession.QueryInstances(Namespace, "WQL", Query);
但是,我需要以编程方式将成员资格规则添加/删除到 SCCM 集合,以便我可以操作 SCCM 集合中的设备,如 blog 中所述。
我知道我们可以使用 .net 框架包 microsoft.configurationmanagement.managementprovider 操作 SCCM 集合,但由于我使用的是 .NET Core,因此无法使用此包。
有没有一种方法可以使用 .Net Core 在 SCCM 集合中添加/删除设备?
【问题讨论】:
-
managementprovider 包只是一个包装器,因此您可以轻松地在 .net 中使用旧的 vbscript wmi 代码,但 afaik 命令都是纯 wmi。所以你应该可以用标准的 wmi 代码来做到这一点。我从未在 .net 核心中做过任何与 sccm 相关的事情,但如果我理解正确,所有基本内容都是相同的,所以如果我向您展示一个不使用管理提供程序的 .net 4.7 代码示例,它也应该在核心中工作对吗?
标签: c# .net-core wmi sccm configurationmanager