Public/Get-ADSIDomainMode.ps1
Function Get-ADSIDomainMode { [cmdletbinding()] PARAM ( [Alias('RunAs')] [System.Management.Automation.Credential()] $Credential = [System.Management.Automation.PSCredential]::Empty, $DomainName = [System.DirectoryServices.ActiveDirectory.Domain]::Getcurrentdomain() ) PROCESS { TRY { IF ($PSBoundParameters['Credential'] -or $PSBoundParameters['DomainName']) { Write-Verbose '[PROCESS] Credential or DomainName specified' $Splatting = @{ } IF ($PSBoundParameters['Credential']) { $Splatting.Credential = $Credential } IF ($PSBoundParameters['DomainName']) { $Splatting.DomainName = $DomainName } (Get-ADSIDomain @splatting).DomainMode } ELSE { (Get-ADSIDomain).DomainMode } } CATCH { Write-Warning -Message '[PROCESS] Something wrong happened!' Write-Warning -Message $error[0].Exception.Message } } } |