- Loaded
assembliesinPowershellsession
PS C:\> [AppDomain]::CurrentDomain.GetAssemblies()
GAC Version Location
--- ------- --------
True v2.0.50727 C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\Microsoft.PowerShell.ConsoleHost\1.0.0.0__31bf3856ad364e35\Micros...
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\System\2.0.0.0__b77a5c561934e089\System.dll
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\System.Management.Automation\1.0.0.0__31bf3856ad364e35\System.Man...
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\Microsoft.PowerShell.Commands.Diagnostics\1.0.0.0__31bf3856ad364e...
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\System.Core\3.5.0.0__b77a5c561934e089\System.Core.dll
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\System.Configuration.Install\2.0.0.0__b03f5f7f11d50a3a\System.Con...
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\Microsoft.WSMan.Management\1.0.0.0__31bf3856ad364e35\Microsoft.WS...
True v2.0.50727 C:\Windows\assembly\GAC_32\System.Transactions\2.0.0.0__b77a5c561934e089\System.Transactions.dll
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\Microsoft.PowerShell.Commands.Utility\1.0.0.0__31bf3856ad364e35\M...
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\Microsoft.PowerShell.Commands.Management\1.0.0.0__31bf3856ad364e3...
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\Microsoft.PowerShell.Security\1.0.0.0__31bf3856ad364e35\Microsoft...
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\System.Xml\2.0.0.0__b77a5c561934e089\System.Xml.dll
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\System.Management\2.0.0.0__b03f5f7f11d50a3a\System.Management.dll
True v2.0.50727 C:\Windows\assembly\GAC_MSIL\System.DirectoryServices\2.0.0.0__b03f5f7f11d50a3a\System.Directo...
True v2.0.50727 C:\Windows\assembly\GAC_32\System.Data\2.0.0.0__b77a5c561934e089\System.Data.dll
PS C:\>- Get the
typeof theAssembly
PS C:\> [AppDomain]::CurrentDomain.GetAssemblies() | ForEach-Object {$_.GetType()}
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
PS C:\>AssemblieswhereIsPublicisTrue
PS C:\> [AppDomain]::CurrentDomain.GetAssemblies() | ForEach-Object {$_.GetType()} | Where-Object {$_.IsPublic -eq "True"}
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
True True Assembly System.Object
PS C:\>- Use
.Netclass to printprocesseson theMachine
PS C:\> $Classes = [AppDomain]::CurrentDomain.GetAssemblies() | ForEach-Object {$_.GetType()} | Where-Object {$_.IsPublic -eq "True"}PS C:\> $Classes | Where-Object {$_.Name -eq "Process"}PS C:\> $ProcClass = $Classes | Where-Object { $_.Name -eq "Process" }List methods / properties of an object
PS C:\> $ProcClass | Get-MemberPS C:\> $ProcClass | Get-Member -MemberType MethodPS C:\> $ProcClass | Get-Member -MemberType Method -StaticPS C:\> $ProcClass::GetCurrentProcess()PS C:\> $ProcClass.FullName
System.Diagnostics.Process
PS C:\>PS C:\> [System.Diagnostics.Process]::GetCurrentProcess()PS C:\> [System.Diagnostics.Process]::GetProcesses()PS C:\> $ProcClass | Get-Member | Format-List *