A few cmdlets in PowerShell support accessing information on a remote system. These cmdlets have a – ComputerName parameter. For example the following cmdlets support the computername parameter and hence can be used to access information from a remote computer.
- Get-WmiObject
- Invoke-WmiMethod
- Limit-EventLog
- Set-Service
- Set-WmiInstance
- Show-EventLog
- Stop-Computer
- Clear-EventLog
- Get-Counter
- New-EventLog
- Register-WmiEvent
- Remove-EventLog
- Remove-WmiObject
- Restart-Computer
- Get-EventLog
- Get-HotFix
- Get-Process
- Get-Service
- Get-WinEvent
The remoting capability of these cmdlets is independent of PowerShell. It is up to the cmdlet author to implement the remote access using methods such as remote procedure call (RPC), etc. This method of remoting can be called traditional remoting or classic remoting.
One obvious disadvantage is that not all PowerShell cmdlets implement this type of remoting. So, for example, if you want to execute Get-PSDrive or Get-ChildItem remotely on a different computer, it is not possible. This is where the new PowerShell 2.0 remoting feature plays an important role. So, throughout this guide, whenever we refer to remoting, we refer to the new remoting technology but not traditional or classic remoting methods.