function EVTasks { param([System.String[]] $args) $public = $null $vault = $null $requestedAttributes ="Name, TaskEntryId" add-type -path ($path+$dco) $public = new-object KVS.EnterpriseVault.Interop.DirectoryConnectionObjectClass $vault = $public.EnumTasksByComputerID($ComputerID,$requestedAttributes) for($flag = $vault.SetFirstRecord(); $flag; $flag = !$vault.MoveNextRecord()) { $sV = $vault.GetStringValue("Name") $slV = $vault.GetStringValue("TaskEntryId") $res = $t.GetTaskState($slv,[ref]$s) if ($res -eq 1) {write-host $sV "is Running"} elseif ($res -eq 0) {write-host $sV "is Stopped"} } } # Nathan's 32bit PS to call various Interops. # The usual ‘unsupported’, ‘subject to change’ not for redistribution caveats and disclaimers apply. #$sig = "TmF0aGFuIENsYXJrIC0gU3ltYW50ZWMgKGMp" # Change these Variables: ############################################### $Path = "C:\Program Files (x86)\Enterprise Vault\" # from [EnterpriseVaultDirectory].ComputerEntry table $ComputerID = "1A442443FB7538F42A2FC555C9222B76F1410000nathanev.AIO.LOCAL" ######################################################################### $dco = "KVS.EnterpriseVault.Interop.DirectoryConnection.dll" $tco = "KVS.EnterpriseVault.Interop.TaskController.dll" $tskcntrl = Get-Service "EnterpriseVaultTaskControllerService" if ($tskcntrl.Status -ne "Running") {"EnterpriseVaultTaskControllerService Not Running So Cannot check Task Status's";exit } add-type -path ($path+$tco) $t = new-object -com "TaskController.TaskConnector" $s = [KVS.EnterpriseVault.Interop.EV_TASK_STATE]::EV_TASK_STATE_STOPPED EVTasks