So, the part of code goes like this:
try { New-AdGroup -Path "OU=Printers,OU=Groups,DC=XYZ,dc=org" -Name $PrinterGroupName -GroupScope DomainLocal -GroupCategory Security -Description $Description -OtherAttributes @{Info=$Comment} } catch { $_ }
There is a line above that code to get all printers on the Print Server:
Get-Printer -ComputerName $PrintServer ## Available on Win8+
Then this code retrieves Printer Group Name, Printer Location as Description 'AND' a comment field out of 'Get-Printer' cmdlet results and populates relevant fields in the new group.
This code was failing to create some groups and the error message was quite unhelpful: "The server is unwilling to process the request"
I looked at the groups and realized that New-ADGroup was not happy when $comment did not include anything.
So, I added a couple of lines before try/catch block to make sure I would have something for both Active Directory Group's Description and Notes fields to fix the issue:
$Description = $Comment = $printer.name if ($printer.location) { $Description = $printer.location } If ($Printer.Comment) { $Comment = $Printer.Comment }
No comments:
Post a Comment