1 function Run([string]$name,$var,[bool]$wait_exp){
 2     $startclass = Get-CimClass -ClassName Win32_ProcessStartup
 3     $startinfo = New-CimInstance -CimClass $startclass -Property @{ShowWindow = $var} -ClientOnly
 4     $class = Get-CimClass -ClassName Win32_Process
 5     [int]$r=Invoke-CimMethod -CimClass $class -MethodName Create -Arguments @{
 6     Commandline = $name;
 7     ProcessStartupInformation = [CimInstance]$startinfo
 8     }|Select-Object -Property ProcessId|%{[regex]::Matches([string]$_,'(\d+)').Value}
 9     if ($wait_exp -eq $true)
10     {
11       Wait-Process -Id $r        
12     }
13 }
14 Run cmd 1 0
15 # 参数说明
16 # 启动cmd,1表示normal正常窗口,【1是否等待进程结束/0表示不等待】