O SMS 2003 continha um ótimo recurso para automação através da excelente dll:
Microsoft.SystemsManagementServer.Automation.dll . Permitia automatizar o SMS usando objetos, propriedades e métodos intuitivos, como:
SMSProvider.Packages.Create("NewPackage");
No SCCM 2007 , parece que esta grande dll foi descontinuada em favor de mais código de estilo "WMI breakfast" do estilo WMI:
var conn = new WMIConnection(@"\Server\root\sms\site_a", usr, pass);
var queryResults = conn.ExecuteQuery("SELECT * FROM SMS_Package WHERE
Name='" + packageName + "'");
foreach (ManagementObject obj in queryResults)
{
packageID = (string)obj.GetPropertyValue("PackageID");
}
Estou tentado a escrever minhas próprias aulas de esqueleto em torno dessas chamadas wmi. Tudo o que parece necessário para a automação básica parece ser: SccmServer , SccmPackage , SccmProgram e SccmTaskSequence .
A questão é : alguém tem wrapper, classes esqueleto como esta disponível, ou sabe de algum projeto de código aberto que eu possa usar ou adaptar? Eu odeio reinventar a roda para coisas mundanas como essa.