Tigger installation in software center using SCCM 2012 & Powershell

1

I would need some directions where to look for an solution.

I need to trigger install on a few programs in SCCM 2012 software center on Windows 10 clients through Powershell. I guess some of those are User Based Packages(not sure about this at all) but when i run the following.

$Application = Get-CimInstance -Namespace "root\ccm\clientSDK" -ClassName CCM_application
$Application

I get some of the programs, but many of them is missing. If I open software center and click install on any programs manually it will then appear when I use the command above.

I've been reading about CCM-Application I found something about you only get device based packages.

I cannot access any servers so accessing CMApplicationCatalog is not possible. Like in the links below.

Trigger available application catalog

install-user-based-application-or-packages

In my case using CCM_Application Client WMI Class seems to be hard, I've not found any other solutions then creating New-WebServiceProxy to do this, and I´m not allowed/have permissions to.

I've tried to get the needed parameters for one of the programs that don't appear with the code above from a computer I've installed it on through Software Center.

When I try to run it with the needed parameters on an new installed computer.

$Program = @{"EnforcePreference"=[UInt32]0
"Id" = [String]"ScopeId_MyScopeID, will leave this out for company rules."
"IsMachineTarget" = [Boolean]$false                                                                                                                                                            
"IsRebootIfNeeded" = [Boolean]$false
"Priority" = [String]"High"                                                                                                                                                             
"Revision" = [String]"7"                                                                                                                                                                                                                         
}

Invoke-CimMethod -Namespace Root\ccm\clientSDK -ClassName CCM_application  -MethodName "Install" -Arguments $Program 

I then get error below

Invoke-CimMethod : Not found At line:1 char:1 + Invoke-CimMethod -Namespace Root\ccm\clientSDK -ClassName CCM_applica ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (Root\ccm\clientSDK:CCM_application:String) [Invoke-CimMethod], CimException + FullyQualifiedErrorId : HRESULT 0x80041002,Microsoft.Management.Infrastructure.CimCmdlets.InvokeCimMethodCommand

Maybe I am doing something wrong or what I am trying to do is not possible.

I've also tried uiresource.uiresourcemgr but It returns empty. I used this much in SCCM 2007 and it worked great. But now it's not giving me anything.

$RunAdvProg = New-Object -ComObject uiresource.uiresourcemgr $RunAdvProg.GetAvailableApplications();

With this said, Is there anyway way around this or does it exist another function/Method from another class or DLL?

powershell
sccm
asked on Stack Overflow Feb 15, 2019 by Turpa

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0