Capa.PowerShell.Module.PowerPack.Sys.psm1
# TODO: #286 Add help for Show-PpMessageBox function Show-PpMessageBox { [CmdletBinding()] param ( [Parameter(Mandatory = $true)] [string]$Title, [Parameter(Mandatory = $true)] [string]$Message, [Parameter(Mandatory = $false)] [ValidateSet('OK', 'OKCancel', 'YesNo', 'YesNoCancel')] [string]$Buttons = 'OK', [Parameter(Mandatory = $true)] [string]$DefaultButton, [Parameter(Mandatory = $false)] [ValidateSet('Information', 'Warning', 'Error', 'Question')] [string]$Icon = 'Information', [Parameter(Mandatory = $false)] [int]$TimeoutSeconds = 30, [Parameter(Mandatory = $false)] [bool]$Async = $false ) return $Global:InputObject.ShowMessageBox($Title, $Message, $Buttons, $DefaultButton, $Icon, $TimeoutSeconds, $Async) } # TODO: #103 Update and add tests <# .SYNOPSIS Checks if a process exists. .PARAMETER ProcessName The name of the process to check. .EXAMPLE PS C:\> Sys_ExistProcess -ProcessName "notepad.exe" .NOTES For more information, please visit https://capasystems.atlassian.net/wiki/spaces/CI65DOC/pages/19462456074/cs.Sys+ExistProcess #> function Sys_ExistProcess { param ( [Parameter(Mandatory = $true)] [string]$ProcessName ) $Value = $Global:cs.Sys_ExistProcess($ProcessName) return $Value } # TODO: #104 Update and add tests <# .SYNOPSIS Gets the free disk space of a drive. .PARAMETER Drive The drive to get the free disk space from, default is 'C:'. .EXAMPLE PS C:\> Sys_GetFreeDiskSpace .EXAMPLE PS C:\> Sys_GetFreeDiskSpace -Drive "D:" .NOTES For more information, please visit https://capasystems.atlassian.net/wiki/spaces/CI65DOC/pages/19462456057/cs.Sys+GetFreeDiskSpace #> function Sys_GetFreeDiskSpace { param ( [string]$Drive = 'C:' ) $Value = $Global:cs.Sys_GetFreeDiskSpace($Drive) return $Value } # TODO: #105 Update and add tests <# .SYNOPSIS Checks if a minimum required disk space is available. .PARAMETER Drive The drive to check, default is 'C:'. .PARAMETER MinimumRequiredDiskspaceInMb The minimum required disk space in bytes. .EXAMPLE PS C:\> Sys_IsMinimumRequiredDiskspaceInMbAvailable -MinimumRequiredDiskspaceInMb 1000 .EXAMPLE PS C:\> Sys_IsMinimumRequiredDiskspaceInMbAvailable -Drive "D:" -MinimumRequiredDiskspaceInMb 1000 .NOTES For more information, please visit https://capasystems.atlassian.net/wiki/spaces/CI65DOC/pages/19462456108/cs.Sys+IsMinimumRequiredDiskspaceAvailable #> function Sys_IsMinimumRequiredDiskspaceAvailable { param ( [string]$Drive = 'C:', [Parameter(Mandatory = $true)] [int]$MinimumRequiredDiskspaceInMb ) $Value = $Global:cs.Sys_IsMinimumRequiredDiskspaceAvailable($Drive, $MinimumRequiredDiskspaceInMb) return $Value } # TODO: #404 Create tests for Sys_isUserLoggedOn <# .SYNOPSIS Checks if a user is logged on to the system. .DESCRIPTION This function checks if a user is logged on to the system. .EXAMPLE if (Sys_isUserLoggedOn) { Write-Host "User is logged on." } else { Write-Host "User is not logged on." } #> function Sys_isUserLoggedOn { return $Global:cs.Sys_isUserLoggedOn() } # TODO: #106 Update and add tests <# .SYNOPSIS Kills a process. .PARAMETER ProcessName The name of the process to kill. .EXAMPLE PS C:\> Sys_KillProcess -ProcessName "notepad.exe" .NOTES For more information, please visit https://capasystems.atlassian.net/wiki/spaces/CI65DOC/pages/19462456091/cs.Sys+KillProcess #> function Sys_KillProcess { param ( [Parameter(Mandatory = $true)] [string]$ProcessName ) $Global:cs.Sys_KillProcess($ProcessName) } # TODO: #405 Create tests for Sys_Sleep function <# .SYNOPSIS Sleeps for a specified number of seconds. .DESCRIPTION Sleeps for a specified number of seconds. .PARAMETER Seconds The number of seconds to sleep, shall be bigger than 0 and less than 14400. #> function Sys_Sleep { param ( [Parameter(Mandatory = $true)] [int]$Seconds ) $Global:cs.Sys_Sleep($Seconds) } # TODO: #107 Update and add tests <# .SYNOPSIS Waits for a process to finish. .PARAMETER ProcessName The name of the process to wait for. .PARAMETER MaxWaitSec The maximum time to wait in seconds. .PARAMETER IntervalSec The interval to check in seconds. .EXAMPLE PS C:\> Sys_WaitForProcess -ProcessName "notepad.exe" -MaxWaitSec 10 -IntervalSec 1 .NOTES For more information, please visit https://capasystems.atlassian.net/wiki/spaces/CI65DOC/pages/19462456125/cs.Sys+WaitForProcess #> function Sys_WaitForProcess { param ( [Parameter(Mandatory = $true)] [string]$ProcessName, [Parameter(Mandatory = $true)] [int]$MaxWaitSec, [Parameter(Mandatory = $true)] [int]$IntervalSec ) $Global:cs.Sys_WaitForProcess($ProcessName, $MaxWaitSec, $IntervalSec) } # TODO: #108 Update and add tests <# .SYNOPSIS Waits for a process to exist. .PARAMETER ProcessName The name of the process to wait for. .PARAMETER MaxWaitSec The maximum time to wait in seconds. .PARAMETER IntervalSec The interval to check in seconds. .EXAMPLE PS C:\> Sys_WaitForProcessToExist -ProcessName "notepad.exe" -MaxWaitSec 10 -IntervalSec 1 .NOTES For more information, please visit https://capasystems.atlassian.net/wiki/spaces/CI65DOC/pages/19462456142/cs.Sys+WaitForProcessToExist #> function Sys_WaitForProcessToExist { param ( [Parameter(Mandatory = $true)] [string]$ProcessName, [Parameter(Mandatory = $true)] [int]$MaxWaitSec, [Parameter(Mandatory = $true)] [int]$IntervalSec ) $Global:cs.Sys_WaitForProcessToExist($ProcessName, $MaxWaitSec, $IntervalSec) } |