###Setze Umgebungsvariablen anhand einer Gruppenmitgliedschaft / richard 2017### #setenv.ps1 -Group AUTODESKGRP -var ADSK_CLM_WPAD_PROXY_CHECK -val TRUE -typ User #$Zertifikat = dir cert:\ -recurse –codesign #Set-AuthenticodeSignature C:\scripte\powershell\setEnv.ps1 $Zertifikat param( [string]$group, [string]$var, [string]$val, [string]$typ ) $strName = $env:username $strDomain = $env:userdomain $ErrorActionpreference = "silentlycontinue" ################################################################################ #Hilfsfunktion für Gruppenmitgliedschaftsermittlung über WINNT-Mechanismus function Get-GroupMembership($DNName, $group) { $objgrp = [ADSI]"WinNT://$strDomain/$group,group" $Members= @($objgrp.psbase.Invoke("Members")) | foreach{([adsi]$_).InvokeGet("Name")} if ($Members -contains $DNName) { return $TRUE } else { return $FALSE } } #################################################################################### $result = get-groupMembership $strName $group if ($result -eq $TRUE) { #write-host "Mitglied von $group" [Environment]::SetEnvironmentVariable($var, $val, $typ) # Get-ChildItem Env: }