SCCM Application Details

SCCM Application Details yazımızda sizlere SCCM Applicationlarda bulunan tüm applicationların detaylı bilgileri yer almaktadır.

Powershell code ile hazırlanmış olan scriptte;

  • Application Name
  • Package ID
  • Enabled
  • Expired
  • Superseded
  • Deployed
  • Number of Device\Users Installed or Failed
  • Task Sequence bulunup/bulunmadığı
  • Hangi Task Sequence’de olduğu

gibi bilgileri içeren powershell script hazırlanmıştır. Çıktı olarak Aşağıdaki gibi gözükmektedir. Buradaki en önemli amaç app sayısı arttıkça tüm applicationlar konusunda bilgi sahibi olmak. Özelliklede Task Sequence references larda bulunup bulunmadığıdır.

SCCM Application Details
Write-host "Starting Application Details" -ForegroundColor Blue
$ExportPath=Read-Host -Prompt "Export Path"
if(Test-Path -Path $ExportPath){
Write-host "Path Exist" -ForegroundColor Green

}
else {
        Write-Host "The path does not exist. Creating it now..." -ForegroundColor Green
        try {
            New-Item -Path $ExportPath -ItemType Directory -Force
            Write-Host "The path was successfully created." -ForegroundColor Green
        } catch {
            Write-Host "Failed to create the path. Error: $_" -ForegroundColor Red
        }}
$Applications = Get-CMApplication -WarningAction SilentlyContinue
$TaskSequences = Get-CMTaskSequence -WarningAction SilentlyContinue | Where-Object { $_.References -ne $null } 
$ApplicationDetails = foreach ($App in $Applications) {
  
    $ReferencedTaskSequences = @()
    foreach ($TS in $TaskSequences) {
        if ($TS.References.Package -contains $App.ModelName) {
            $ReferencedTaskSequences += $TS.Name
        }
    }
    [PSCustomObject] @{
        AppName                   = $App.LocalizedDisplayName
        AppID                     = $App.PackageID
        IsEnabled                 = $App.IsEnabled
        IsExpired                 = $App.IsExpired
        IsSuperseded              = $App.IsSuperseded
        IsDeployed                = $App.IsDeployed
        NumberOfDevicesWithApp    = $App.NumberOfDevicesWithApp
        NumberOfDevicesWithFailure = $App.NumberOfDevicesWithFailure
        NumberOfUsersWithApp      = $App.NumberOfUsersWithApp
        NumberOfUsersWithFailure  = $App.NumberOfUsersWithFailure
        IsInTaskSequence          = $ReferencedTaskSequences.Count -gt 0
        WhichTaskSequence         = $ReferencedTaskSequences -join ', '
    }
}

$ApplicationDetails | Export-Csv -Path "$ExportPath\ApplicationDetails.csv" -NoTypeInformation

Write-host "All Done" -ForegroundColor Blue
Write-host "---Written By Koray Can Karaduman" -ForegroundColor Green

SCCM Application Details yazımızdaki script ile tüm applicationlar konusunda bilgi sahibi olabilirsiniz. Diğer yazılarımı aşağıdaki kategorilerden takip edebilirsiniz.