Jump to content

JensGoro

Members
  • Gesamte Inhalte

    3
  • Registriert seit

  • Letzter Besuch

Letzte Besucher des Profils

Der "Letzte Profil-Besucher"-Block ist deaktiviert und wird anderen Benutzern nicht angezeit.

Fortschritt von JensGoro

Rookie

Rookie (2/14)

  • Einen Monat dabei
  • Eine Woche dabei
  • Erste Antwort
  • Erster eigener Beitrag

Neueste Abzeichen

0

Reputation in der Community

  1. Vielleicht frage ich anders ;) Hatjemand ein Script, welches ich nutzen kann, um AD-Usern einen Standard Drucker zu setzen? :) Würde mich sehr freuen.
  2. Vielen lieben dank erst einmal an alle, es ist korrekt, dass das Script nicht von mir stammt, ich habe es auch nur übernommen und habe nur eingeschränkt erfahrung mit Scripten. Könnte mir jemand den Code ggf. überarbeiten? Ich weiß, es klingt frech, aber ich bin etwas hilflos :(
  3. Hi zusammen, wir haben ein Script zum auswählen eines Standard Drucker, welches leider mittlerweile einen Fehler auswirft. Fehler: <# Automatisierung Export. Werte aus der Active Directory in die config_file exportieren. Syntax config_file [username];[printername] #> ### Parameter ### $config_file = "\\SERVER\NETLOGON\default_printers\default_printer.txt" $config_file_temp = "\\SERVER\NETLOGON\default_printers\default_printer_temp.txt" $ADAttribut = "extensionAttribute13" ### Code ### import-module ActiveDirectory $t = ';' $Users = get-aduser -Filter * foreach($User in $Users) { $attribut = Get-ADUser $User.SamAccountName -Properties * | select -Property $ADAttribut $username = $User.SamAccountName $parameter = $username + $t + $attribut $parameter = $parameter.TrimEnd('}') $parameter = $parameter -replace ‘@{extensionAttribute13=’,'' If(!$parameter.Split(";")[1]) { $parameter = "" } else { $parameter | Out-File -FilePath $config_file_temp -Append } } Copy-Item $config_file_temp $config_file Remove-Item $config_file_temp Exit Anbei der Code: <# GUI für die Automatisierung des Standarddruckers #> ### Parameter ### $printer_list_file = "\\SERVER\NETLOGON\default_printers\printers.txt" $dir = "\\SERVER\NETLOGON\default_printers\" ### LOAD ### [void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") [void] [System.Reflection.Assembly]::LoadWithPartialName("System.Drawing") import-module ActiveDirectory $printers = Get-Content -Path $printer_list_file -Encoding UTF8 ### CODE ### #------------------------------------------------------------------------------------------- # Fenster 1 $objForm = New-Object System.Windows.Forms.Form $objForm.Text = "Standarddrucker setzten" $objForm.Size = New-Object System.Drawing.Size(300,600) $objForm.StartPosition = "CenterScreen" $objForm.KeyPreview = $True $objForm.Add_KeyDown({if ($_.KeyCode -eq "Enter") {$x=$objListBox.SelectedItem;$objForm.Close()}}) $objForm.Add_KeyDown({if ($_.KeyCode -eq "Escape") {$objForm.Close()}}) $OKButton = New-Object System.Windows.Forms.Button $OKButton.Location = New-Object System.Drawing.Size(60,540) $OKButton.Size = New-Object System.Drawing.Size(75,23) $OKButton.Text = "OK" $OKButton.Add_Click({$username=$objListBox.SelectedItem;$objForm.Close()}) $objForm.Controls.Add($OKButton) $CancelButton = New-Object System.Windows.Forms.Button $CancelButton.Location = New-Object System.Drawing.Size(150,540) $CancelButton.Size = New-Object System.Drawing.Size(75,23) $CancelButton.Text = "Abbrechen" $CancelButton.Add_Click({$objForm.Close() $username = ""}) $objForm.Controls.Add($CancelButton) $objLabel = New-Object System.Windows.Forms.Label $objLabel.Location = New-Object System.Drawing.Size(10,20) $objLabel.Size = New-Object System.Drawing.Size(280,20) $objLabel.Text = "Bitte einen Benutzer auswählen:" $objForm.Controls.Add($objLabel) $objListBox = New-Object System.Windows.Forms.ListBox $objListBox.Location = New-Object System.Drawing.Size(10,40) $objListBox.Size = New-Object System.Drawing.Size(260,20) $objListBox.Height = 480 # Fenster 1 CODE $Users = get-aduser -Filter * foreach($User in ($Users|sort)) { $username_blank = $User.Name $username_logon = $User.SamAccountName [void] $objListBox.Items.Add($username_blank + " " +"(" + $username_logon + ")") } $objForm.Controls.Add($objListBox) $objForm.Topmost = $True $objForm.Add_Shown({$objForm.Activate()}) [void] $objForm.ShowDialog() #------------------------------------------------------------------------------------------- # Fenster 2 $objForm = New-Object System.Windows.Forms.Form $objForm.Text = "Standarddrucker setzten" $objForm.Size = New-Object System.Drawing.Size(300,600) $objForm.StartPosition = "CenterScreen" $objForm.KeyPreview = $True $objForm.Add_KeyDown({if ($_.KeyCode -eq "Enter") {$x=$objListBox.SelectedItem;$objForm.Close()}}) $objForm.Add_KeyDown({if ($_.KeyCode -eq "Escape") {$objForm.Close()}}) $OKButton = New-Object System.Windows.Forms.Button $OKButton.Location = New-Object System.Drawing.Size(60,540) $OKButton.Size = New-Object System.Drawing.Size(75,23) $OKButton.Text = "OK" $OKButton.Add_Click({$printername=$objListBox.SelectedItem;$objForm.Close()}) $objForm.Controls.Add($OKButton) $CancelButton = New-Object System.Windows.Forms.Button $CancelButton.Location = New-Object System.Drawing.Size(150,540) $CancelButton.Size = New-Object System.Drawing.Size(75,23) $CancelButton.Text = "Abbrechen" $CancelButton.Add_Click({$objForm.Close() $printername = ""}) $objForm.Controls.Add($CancelButton) $objLabel = New-Object System.Windows.Forms.Label $objLabel.Location = New-Object System.Drawing.Size(10,20) $objLabel.Size = New-Object System.Drawing.Size(280,20) $objLabel.Text = "Bitte einen Drucker auswählen:" $objForm.Controls.Add($objLabel) $objListBox = New-Object System.Windows.Forms.ListBox $objListBox.Location = New-Object System.Drawing.Size(10,40) $objListBox.Size = New-Object System.Drawing.Size(260,20) $objListBox.Height = 480 # Fenster 2 CODE [void] $objListBox.Items.Add("< Löschen >") $Users = get-aduser -Filter * foreach($printer in ($printers|sort)) { [void] $objListBox.Items.Add($printer) } $objForm.Controls.Add($objListBox) $objForm.Topmost = $True $objForm.Add_Shown({$objForm.Activate()}) [void] $objForm.ShowDialog() #------------------------------------------------------------------------------------------- # CODE $username = $username.TrimEnd(')') $username_blank = $username.Split("(")[0] $username_blank = $username_blank.Trim() $username = $username.Split("(")[1] If($username -and $printername) { $switch = 1 } If($printername -eq "< Löschen >") { $switch = 2 } If(!$username -or !$printername) { $switch = 3 } switch ($switch) { 1 { Set-ADUser $username –replace @{extensionAttribute13=$printername} $dir = $dir + "default_printer_Export.ps1" & $dir $ausgabe = "Der Standardrucker des Benutzers $username_blank wurde auf den Drucker `"$printername`" geändert." } 2 { Set-ADUser $username –replace @{extensionAttribute13="0"} Set-ADUser $username –remove @{extensionAttribute13="0"} $dir = $dir + "default_printer_Export.ps1" & $dir $ausgabe = "Der Standardrucker des Benutzers $username_blank wurde gelöscht." } 3 { $ausgabe = "Kein Wert angegeben" } default { $ausgabe = "Fehler" } } #------------------------------------------------------------------------------------------- # Fenster 3 $objForm = New-Object System.Windows.Forms.Form $objForm.Text = "Standarddrucker setzten" $objForm.Size = New-Object System.Drawing.Size(300,160) $objForm.StartPosition = "CenterScreen" $objForm.KeyPreview = $True $objForm.Add_KeyDown({if ($_.KeyCode -eq "Enter") {$x=$objListBox.SelectedItem;$objForm.Close()}}) $objForm.Add_KeyDown({if ($_.KeyCode -eq "Escape") {$objForm.Close()}}) $OKButton = New-Object System.Windows.Forms.Button $OKButton.Location = New-Object System.Drawing.Size(108,100) $OKButton.Size = New-Object System.Drawing.Size(75,23) $OKButton.Text = "OK" $OKButton.Add_Click({$objForm.Close()}) $objForm.Controls.Add($OKButton) $objLabel = New-Object System.Windows.Forms.Label $objLabel.Location = New-Object System.Drawing.Size(10,20) $objLabel.Size = New-Object System.Drawing.Size(280,60) $objLabel.Text = $ausgabe $objForm.Controls.Add($objLabel) $objForm.Topmost = $True $objForm.Add_Shown({$objForm.Activate()}) [void] $objForm.ShowDialog() Exit Kann mir jemand helfen, den Fehler zu fixen? :)
×
×
  • Neu erstellen...