PowerShell рдФрд░ рд╕рдореВрд╣ рдиреАрддрд┐ рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдВ рдЬрдм рдкреНрд░рд┐рдВрдЯрд░ рд╕реИрдХрдбрд╝реЛрдВ рддрдХ рдЧрд┐рдирддреА рдХрд░рддреЗ рд╣реИрдВ



рдХрдИ рдкреНрд░рддрд┐рдпрд╛рдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЯреВрдЯ рдЬрд╛рддреА рд╣реИрдВред рдЕрд╕рд▓ рдореЗрдВ, рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рдХреЛ рджреЛ рд╢рд┐рд╡рд┐рд░реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛: рд▓реЙрдЧрдСрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рдмреИрдЯ / рд╡реАрдмреАрдПрд╕) рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рдирд╛ рдФрд░ рдЬреАрдкреАрдкреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ред рджреЛрдиреЛрдВ рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЗ рдЕрдкрдиреЗ рдлрд╛рдпрджреЗ рд╣реИрдВ: рд╕реНрдХреНрд░рд┐рдкреНрдЯ рддреЗрдЬреА рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛрддреА рд╣реИрдВ, рдФрд░ рдЬреАрдкреАрдкреА рдЕрдзрд┐рдХ рд▓рдЪреАрд▓рд╛ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рд░рд┐рдмреВрдЯ рдХрдВрдкреНрдпреВрдЯрд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЬрдм рд╕реМ рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рд┐рдВрдЯрд░ рд╣реИрдВ рдФрд░ рд╡реЗ рджрд░реНрдЬрдиреЛрдВ рдХрд╛рд░реНрдпрд╛рд▓рдпреЛрдВ рдФрд░ рд╢рд╣рд░реЛрдВ рдореЗрдВ рдмрд┐рдЦрд░реЗ рд╣реБрдП рд╣реИрдВ, рддреЛ рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдХрдард┐рдирд╛рдЗрдпрд╛рдБ рд╣реЛрдВрдЧреАред

рдпрд╣ рди рдХреЗрд╡рд▓ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рд╕рд╣реА рд╕реЗрдЯ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдмрд▓реНрдХрд┐ рдЙрд╕рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд╛рди рдХреЛ рднреА рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рднреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рднреВрд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдпрджрд┐ рдХрднреА-рдХрднреА рди рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдмрд▓реНрдХрд┐ рд╕реНрд╡рдпрдВ рдкреНрд░рд┐рдВрдЯрд░ рднреА рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ ...

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореИрдВрдиреЗ рдФрд░ рдореЗрд░реЗ рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рдиреЗ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЕрдкрдиреЗ рд▓рд┐рдП рдЬреАрдкреАрдкреА рдХреЛ рдЪреБрдирд╛, рддрд╛рдХрд┐ рдЕрдЧреНрд░рдгреА рдкреНрд░рд╢рд╛рд╕рдХреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЬреАрдкреАрдПрдорд╕реА рд░рд┐рдкреЛрд░реНрдЯ рдХреЛ рджреЗрдЦрдХрд░ рдХреЗрд╡рд▓ рд╡рд░реНрддрдорд╛рди рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЬреЛ рдХреЛрдИ рднреА рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдЙрд╕рдХрд╛ рдорд╛рдирдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ 100+ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ - рдкрд╣рд▓реЗ рдПрдХ рдкрддреНрдерд░ рдХреЛ рдореБрдЭ рдкрд░ рдлреЗрдВрдХ рджреЛред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдЧрд▓реЗ рдмреИрдЪ рдХреЗ рдХрдореАрд╢рди рдХреЗ рджреМрд░рд╛рди, рдЖрдкрдХреЛ рдиреЗрдЯрд╡рд░реНрдХ рд╕реНрдХреИрдирд┐рдВрдЧ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдФрд░ рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реА рджрд┐рдирдЪрд░реНрдпрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдФрд░ рд╕рдм рдХреБрдЫ рдЬреЛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рд╡рд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ!

рдЖрдЬ рд╣рдо рдХреНрдпрд╛ рдХрд░реЗрдВрдЧреЗ?

  • рд╕рднреА рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░рд┐рдВрдЯрд░ рдХрд╛ рд░рд┐рдХреЙрд░реНрдб рд░рдЦреЗрдВ;
  • рдЬреАрдкреАрдкреА (рдкреАрдПрд╕ / рдПрдХреНрд╕рдПрдордПрд▓) рдХреЗ рд▓рд┐рдП рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░реЗрдВ;
  • рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░, рдФрд░ рдХреНрд▓рд╕реНрдЯрд░ (рдмреИрдЯ / рд╡реАрдмреАрдПрд╕) рдХреЗ рд▓рд┐рдП рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░реЗрдВ!

рддреЛ рдЪрд▓рд┐рдП рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред

1. рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рд▓рд┐рдП рд▓реЗрдЦрд╛рдВрдХрди


рдХрд┐рд╕реА рднреА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддреЗ рд╕рдордп рдкрд╣рд▓реА рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИред рдЗрд╕рдХреЗ рдмрд┐рдирд╛, рдпрд╣ рдХрд╣рд╛рдБ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдХрд┐рд╕рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рднреНрд░рдорд┐рдд рд╣реЛрдирд╛ рдЖрд╕рд╛рди рд╣реИред
рд╕рдмрд╕реЗ рд╕рд░рд▓ рдФрд░ рд╕рдмрд╕реЗ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд╕рдорд╛рдзрд╛рди CSV рд╣реИред рдЕрдВрдд рдореЗрдВ, рдХрд┐рд╕реА рднреА рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рд╕рд┐рд╕реНрдЯрдо рд╕реЗ, ServiceDesk рдпрд╛ Excel рд╕реНрдкреНрд░реЗрдбрд╢реАрдЯ рдХреЛ CSV рдкрд░ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдЖрд╕рд╛рдиреА рд╕реЗ PowerShell рдореЗрдВ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рдЖрдЧреЗ рдХрд░реЗрдВрдЧреЗред

рд╣рдорд╛рд░рд╛ рдЙрддрд╛рд░рдирд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

рдЫрд╡рд┐

рдореИрдВ рдЕрднреА рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдЗрддрдиреЗ рд╕рд╛рд░реЗ рдХреНрд╖реЗрддреНрд░ рдХреНрдпреЛрдВ рд╣реИрдВ:

  • рдирд╛рдо - рдкреНрд░рд┐рдВрдЯрд░ рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдирд╛рдо, рдпрд╣ DNS рдФрд░ рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ
  • ByGroup - рдлрд╝реАрд▓реНрдб рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рд┐рдВрдЯрд░ рдХреЛ рдЙрди рд╕рднреА рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рд╣реИ рдЬреЛ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдмрдиреЗрдЯ рдкрд░ рд╣реИрдВ рдпрд╛ рдХреЗрд╡рд▓ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ AD рд╕рдореВрд╣ рдХреЗ рд╕рджрд╕реНрдп рд╣реИрдВред рд╕рдореВрд╣ рдПрд╕реАрдПрд▓ рдХреЛ рднреА рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
  • рд╕рдмрдиреЗрдЯ - рд╕рдмрдиреЗрдЯ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
  • рд╕реНрдерд╛рди - рдкреНрд░рд┐рдВрдЯрд░ рдХреА рд╕реНрдерд╛рди рд░реЗрдЦрд╛ рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдВрдбреЛрдЬ рдкреНрд░рд┐рдВрдЯрд░ рдЬреЛрдбрд╝реЗрдВ рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдЦреЛрдЬрддрд╛ рд╣реИ
    рд╕реНрдерд╛рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреНрд░рд┐рдВрдЯрд░ рдХреА рдЦреЛрдЬ рдХреИрд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИ
    рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдЬрдм рдХреЛрдИ рдкреНрд░рд┐рдВрдЯрд░ рдорд╛рдирдХ рдкреНрд░рд┐рдВрдЯрд░ рд╕реЗрдЯрдЕрдк рд╡рд┐рдЬрд╝рд╛рд░реНрдб рдХреА рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИред рдФрд░ рдпрд╣реА рд╣реЛрддрд╛ рд╣реИред рд╡рд┐рдЬрд╝рд╛рд░реНрдб, AD рдореЗрдВ рдХрдВрдкреНрдпреВрдЯрд░ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рд╕реЗ рд╕реНрдерд╛рди рдлрд╝реАрд▓реНрдб рд▓реЗрддрд╛ рд╣реИ, рдФрд░ AD рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдкреНрд░рд┐рдВрдЯрд░ рд╕реЗ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╕рднреА рд╕реНрдерд╛рди рдПрдХ рд╣реА рдкрдВрдХреНрддрд┐ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рдЕрдЧрд░ "рдУрдореНрд╕реНрдХ / рдСрдлрд┐рд╕ рдСрди рд▓реЗрдирд┐рдирд╛ /", "рдУрдореНрд╕реНрдХ / рдСрдлрд┐рд╕ рд▓реЗрдирд┐рди / рдСрдлрд┐рд╕ 404" рдФрд░ "рдУрдореНрд╕реНрдХ / рдСрдлрд┐рд╕ рдСрди" рд▓реЗрдирд┐рди / рд░рд┐рд╕реЗрдкреНрд╢рди ┬╗
  • рдбреНрд░рд╛рдЗрд╡рд░ - рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдирд╛рдо рдЬреЛ рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░ рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╕рдордп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдбреНрд░рд╛рдЗрд╡рд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдорддреМрд░ рдкрд░, рдЕрдзрд┐рдХ рдпрд╛ рдХрдо рдЧрдВрднреАрд░ рдкреНрд░рд┐рдВрдЯрд┐рдВрдЧ рдЙрдкрдХрд░рдг рдХреА рдЖрдкреВрд░реНрддрд┐ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдирд┐рд░реНрдорд╛рддрд╛рдУрдВ рдХреЗ рдкрд╛рд╕ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдбреНрд░рд╛рдЗрд╡рд░ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рд╡реЗ рдкреНрд░рддрд┐ рдмреИрдЪ рдореЗрдВ рдПрдХ рдмрд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдпрджрд┐ рд╡рд┐рдХреНрд░реЗрддрд╛ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рддреЛ рдореИрдВрдиреЗ рдЗрд╕ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ред
  • рдкреНрд░рдХрд╛рд░ рдХреЗрд╡рд▓ рдкреНрд░рд┐рдВрдЯрд░ рдХрд╛ рд╡рд┐рд╡рд░рдг рд╣реИ рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЕрдкрдиреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреНрд░рд┐рдВрдЯрд░ рдХрд╛ рдЪрдпрди рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд░ рд╕рдХреЗрдВред
  • рдореЙрдбрд▓ - рдкреНрд░рд┐рдВрдЯрд░ рдпрд╛ рдПрдордПрдлрдкреА рдХрд╛ рдореЙрдбрд▓ред рдпрд╣рд╛рдВ, рд╕рд╣рд╛рдпрдХ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рдорджрдж рд╕реЗ, рдкрд┐рдЫрд▓реЗ рджреЛ рдХреЛ рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд▓рд┐рдП рднрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдпреВрдЖрдИрдбреА - рдФрд░ рдпрд╣ рдЖрдЬ рдХреЗ рдХреЗрдХ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рдпрд╣ рдпреВрдЖрдИрдбреА рдЬреАрдкреАрдкреА рдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддрд╛ рд╣реИ, рд╕рд░рд▓реАрдХреГрдд - рддрд╛рдХрд┐ рдкреНрд░рд┐рдВрдЯрд░ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рдмрд╛рд░ рд╕рдореВрд╣ рдиреАрддрд┐ рдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИред

рдпрд╣ рдбреЗрдЯрд╛рд╕реЗрдЯ рдЙрдиреНрд╣реЗрдВ Powershell рдореЗрдВ рд╣рд╛рд░реНрдбрдХреЛрдб рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдЖрдк рдорд╕реНрддреА рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

2. рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЬреАрдкреАрдкреА


рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, GPP рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдкреНрд░рд┐рдВрдЯрд░.xml рдлрд╝рд╛рдЗрд▓ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ:

<?xml version="1.0" encoding="utf-8"?> <Printers clsid="{1F577D12-3D1B-471e-A1B7-060317597B9C}"> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-BARAB-061" status="PRN-BARAB-061" image="2" uid="{43231EA0-A4A3-4F1A-8A25-95BC4FEFBCC6}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-BARAB-061" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="0" name="COMDOM\PRN-BARAB-061" sid="S-1-5-21-210359847-7924152125-768726458-48993" userContext="1" /> <FilterIpRange bool="AND" not="0" min="192.168.142.1" max="192.168.142.254" /> </Filters> </SharedPrinter> </Printers> 

рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╕реНрд░реЛрдд рдХрд╛ рдЕрдзреНрдпрдпрди рдпрд╣рд╛рдБ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: [MS-GPPREF]: рдкреНрд░рд┐рдВрдЯрд░ рдФрд░ рдпрд╣рд╛рдБ: [MS-GPPREF]: рд╕рд╛рдорд╛рдиреНрдп XML рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ ред

рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рдЖрдк рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреАрдкреАрдкреА рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдЪреЗрдХрдмреЙрдХреНрд╕ рдХреЗ рд╕рд╛рде рдлрд╝реАрд▓реНрдб рдирд╛рдореЛрдВ рдХреА рддреБрд▓рдирд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдореБрдЦреНрдп рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдиреЛрдЯ рдХрд░реВрдБрдЧрд╛

clsid рд╕рдореВрд╣ рдиреАрддрд┐ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╡рд░реНрдЧ рдХреЗ рдирд┐рд╢реНрдЪрд┐рдд рдореВрд▓реНрдп рд╣реИрдВ, рд╡реЗ (рдФрд░) рдХреЗ рд░реВрдк рдореЗрдВ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдирд╛рдо / рд╕реНрдерд┐рддрд┐ GPP рдХрдВрд╕реЛрд▓ рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдирд╛рдо рд╣реИрдВред
uid - рд▓реЗрдХрд┐рди рдпрд╣ рдЙрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдкрдиреЗ рдКрдкрд░ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджреЗрдЦрд╛ рдерд╛ред

рдпрджрд┐ рдпрд╣ рд╣рд░ рдмрд╛рд░ рдкреНрд░рд┐рдВрдЯрд░ рдХреА рд╕реВрдЪреА рдЕрдкрдбреЗрдЯ рд╣реЛрдиреЗ рдкрд░ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкреНрд░рд┐рдВрдЯрд░ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░ рджреЗрдЧрд╛, рдЬрд┐рд╕рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рджреБрд╖реНрдкреНрд░рднрд╛рд╡ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдкрде - рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рд▓рд┐рдП UNC рдкрде
FilterGroup, FilterIpRange - рд╡рд┐рдЬреНрдЮрд╛рдкрди рд╕рдореВрд╣ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рджрд╕реНрдпрддрд╛ рджреНрд╡рд╛рд░рд╛ рддрддреНрд╡реЛрдВ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рдирд╛ рдФрд░ рдЖрдИрдкреА рдкрддреЗ рдХреА рд╕реАрдорд╛ рдореЗрдВ рдХрдВрдкреНрдпреВрдЯрд░ рдХреЛ рдвреВрдВрдврдирд╛ред

2.1ред рд╣рдо рдбреЗрдЯрд╛ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ XML рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреА рдореВрд▓ рд╕рдВрд░рдЪрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ:


рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рд┐рд╕реНрдЯрдо рдХреНрд▓рд╛рд╕ [System.Xml.XmlDocument] рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

 $PrintersCSV = Import-Csv -Delimiter ";" ".\Printers.csv" -Encoding Default [System.Xml.XmlDocument]$PrintersGPP = New-Object System.Xml.XmlDocument $PrintersGPP.PrependChild($PrintersGPP.CreateXmlDeclaration("1.0", "utf-8", $null)) | Out-Null $Printers = $PrintersGPP.AppendChild($PrintersGPP.CreateElement("Printers")) $Printers.SetAttribute("clsid","{1F577D12-3D1B-471e-A1B7-060317597B9C}") 

2.2ред рдЖрд╡рд╢реНрдпрдХ XML рддрддреНрд╡реЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдФрд░ рдЙрдирдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рд╣рд╛рдпрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝реЗрдВ


рдкреНрд░рд┐рдВрдЯрд░ рдЖрдЗрдЯрдо рдмрдирд╛рдирд╛:

 Function NewSharedPrinter { [CmdletBinding()] param ( $SharedPrinter, $clsid = "{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}", $uid, $name, $action ) $image switch ($action){ "C" {$image = 0} "R" {$image = 1} "U" {$image = 2} "D" {$image = 3} } $SharedPrinter.SetAttribute("clsid",$clsid) $SharedPrinter.SetAttribute("name",$name) $SharedPrinter.SetAttribute("status",$name) $SharedPrinter.SetAttribute("image",$image) $SharedPrinter.SetAttribute("uid",$uid) $SharedPrinter.SetAttribute("userContext",1) $SharedPrinter.SetAttribute("bypassErrors",1) $SharedPrinterProperties = $SharedPrinter.AppendChild($PrintersGPP.CreateElement("Properties")) $SharedPrinterProperties.setattribute("action",$action) $SharedPrinterProperties.setattribute("comment","") $SharedPrinterProperties.setattribute("path","\\print-cluster-1.common.domain\$name") $SharedPrinterProperties.setattribute("default",0) $SharedPrinterProperties.setattribute("port","") } 

рд╕рдореВрд╣ рджреНрд╡рд╛рд░рд╛ рдФрд░ рд╕рдмрдиреЗрдЯ рджреНрд╡рд╛рд░рд╛ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ (рд▓рдХреНрд╖реНрдпреАрдХрд░рдг) рддрддреНрд╡ рдмрдирд╛рдирд╛:
 Function NewFilterGroup{ [CmdletBinding()] param ( $FilterGroup, $bool = "AND", $not = 0, $name, $sid ) $FilterGroup.SetAttribute("bool",$bool) $FilterGroup.SetAttribute("not",$not) $FilterGroup.SetAttribute("name","COMDOM\"+$name) $FilterGroup.SetAttribute("sid",$sid) $FilterGroup.SetAttribute("userContext",1) } Function NewFilterSubnet{ [CmdletBinding()] param ( $FilterIPRange, $bool = "AND", $not = 0, $start, $end ) $FilterIPRange.SetAttribute("bool",$bool) $FilterIPRange.SetAttribute("not",$not) $FilterIPRange.SetAttribute("min",$start) $FilterIPRange.SetAttribute("max",$end) } 

рд╕рднреА рддреАрди рдХрд╛рд░реНрдп рд╕реАрдзреЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдкреАрдПрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВред рдкреВрд░реНрдгрддрд╛рд╡рд╛рджрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рджреЗрдВ: рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рдордп рдпрд╣ рдЖрд╕рд╛рди рдФрд░ рддреЗрдЬрд╝ рдерд╛, рдореИрдВрдиреЗ рд╕рд╣реА рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреА, рдореБрдЭреЗ рдмрд╕ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдереАред рддреЛ рд╣рд╛рдБ, рдХреЛрдб рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд - рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!

2.3ред рдФрд░ рдЕрдВрдд рдореЗрдВ, рдореБрдЦреНрдп рд▓реВрдк, рдкреНрд░рд┐рдВрдЯрд░ рдирд┐рдпрдВрддреНрд░рдг рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реИ


рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рд▓рд┐рдП рджреЛ рддрддреНрд╡ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ: рдПрдХ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ рд╕рдореВрд╣ рдФрд░ рдПрдХ рд╕рдмрдиреЗрдЯ рдореЗрдВ рд╣реИ, рдФрд░ рдПрдХ рдкреНрд░рд┐рдВрдЯрд░ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдореВрд╣ рдХрд╛ рд╕рджрд╕реНрдп рдирд╣реАрдВ рд╣реИ рдпрд╛ рдПрдХ рдЕрд▓рдЧ рд╕рдмрдиреЗрдЯ рдкрд░ рд╣реИред

рдпрджрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ CSV рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЛрдИ рдкреНрд░рд┐рдВрдЯрд░ UID рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдЬреЗрдирд░реЗрдЯ рдФрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрдЧрд╛ред

CIDR рдиреЛрдЯреЗрд╢рди рд╕реЗ рд╕рдмрдиреЗрдЯ рдХреЛ рдПрдбреНрд░реЗрд╕ рд░реЗрдВрдЬ рдореЗрдВ рдЯреНрд░рд╛рдВрд╕рд▓реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрджреНрднреБрдд PSipcalc cmdlet рдЙрдзрд╛рд░ рд▓рд┐рдпрд╛ред

 ForEach ($PrinterItem in ($PrintersCSV | Sort-Object Name)) { if (!$PrinterItem.uid){ $uid = "{"+([guid]::NewGuid()).Guid.ToUpper()+"}" Write-Host "Printer $($PrinterItem.Name) is new. Policy item ID: $uid" } else { $uid = $PrinterItem.uid } $SharedPrinter = $PrintersGPP.CreateElement("SharedPrinter") NewSharedPrinter -SharedPrinter $SharedPrinter -name $PrinterItem.Name -action "U" -uid $uid $Filters = $SharedPrinter.AppendChild($PrintersGPP.CreateElement("Filters")) if ($PrinterItem.ByGroup -ieq "yes") { try { Get-ADGroup -Identity $PrinterItem.Name | Out-Null } catch { Write-Host "Creating group $($PrinterItem.Name)" New-ADGroup -Name $PrinterItem.Name ` -Path "OU=    ,OU=User Groups,DC=DOM,DC=COM" -GroupScope DomainLocal } $FilterGroup = $PrintersGPP.CreateElement("FilterGroup") NewFilterGroup -FilterGroup $FilterGroup -name $PrinterItem.Name -sid (Get-ADGroup -Identity $PrinterItem.Name).SID.Value $Filters.AppendChild($FilterGroup) | Out-Null } $FilterNetwork = .\PSipcalc.ps1 -NetworkAddress $PrinterItem.Subnet $FilterIPRange = $PrintersGPP.CreateElement("FilterIpRange") NewFilterSubnet -FilterIPRange $FilterIPRange -start $FilterNetwork.HostMin -end $FilterNetwork.HostMax $Filters.AppendChild($FilterIPRange) | Out-Null $Printers.AppendChild($SharedPrinter) | Out-Null $RevertSharedPrinter = $PrintersGPP.CreateElement("SharedPrinter") NewSharedPrinter -SharedPrinter $RevertSharedPrinter -name $PrinterItem.Name -action "D" -uid $uid if ($PrinterItem.ByGroup -ieq "yes") { $bool = "OR" } else { $bool = "AND" } $Filters = $RevertSharedPrinter.AppendChild($PrintersGPP.CreateElement("Filters")) if ($PrinterItem.ByGroup -ieq "yes") { $FilterGroup = $PrintersGPP.CreateElement("FilterGroup") NewFilterGroup -FilterGroup $FilterGroup -name $PrinterItem.Name -sid (Get-ADGroup -Identity $PrinterItem.Name).SID.Value -bool "AND" -not 1 $Filters.AppendChild($FilterGroup) | Out-Null } $FilterIPRange = $PrintersGPP.CreateElement("FilterIpRange") NewFilterSubnet -FilterIPRange $FilterIPRange -start $FilterNetwork.HostMin -end $FilterNetwork.HostMax -bool $bool -not 1 $Filters.AppendChild($FilterIPRange) | Out-Null $Printers.AppendChild($RevertSharedPrinter) | Out-Null } 

2.4ред рдФрд░ рдЕрдм рд╣рдо рдкрд░рд┐рдгрд╛рдо рдХреЛ рдПрдХ рдлрд╛рдЗрд▓ рдореЗрдВ рдкреНрд░рд┐рдВрдЯ рдХрд░рддреЗ рд╣реИрдВ


рдореБрдЭреЗ рдХреБрдЫ рдорд┐рдирдЯреЛрдВ рдХреА рдмрдЪрдд рдФрд░ рдкреЙрд▓рд┐рд╕реА рдореЗрдВ рддреБрд░рдВрдд рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рдЧрд▓рдд рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИ:

 $PrintersGPP.Save("\\COMDOM\SysVol\COMMON.DOMAIN\Policies\{f985a9ae-cb71-468b-8a99-e2c7f428aa2f}\User\Preferences\Printers\Printers.xml") 

3. рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░ рдореЗрдВ рдкреНрд░рд┐рдВрдЯрд░ рдЬреЛрдбрд╝рдирд╛


рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП vbs рд▓рд┐рдкрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рдмрд╣реБрдд рдХрдо рдЬреНрдЮрд╛рдд рд╕реЗрдЯ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рднреА рд╣реИред рдпрд╣ %SystemRoot%\System32\Printing_Admin_Scripts\en-US рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред рдЖрдк рдпрд╣рд╛рдВ рдореБрд░рдЬрд╝рд┐рд▓рдХрд╛ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдо рд╕реЗрдЯ рд╕реЗ рддреАрди рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ:

prnport.vbs - рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рдкреНрд░рд┐рдВрдЯрд░ рдкреЛрд░реНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП
prnmngr.vbs - рдЦреБрдж рдкреНрд░рд┐рдВрдЯрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП
prncnfg.vbs - рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдФрд░ рдкреНрд░рд┐рдВрдЯрд░ рд╕рд╛рдЭрд╛рдХрд░рдг рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рд╣рдореЗрдВ рдкреНрд░рд┐рдВрдЯрд░ рдХреЗ рдПрдХреНрд╕реЗрд╕ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП SetACL рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

3.1ред рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рдкреНрд░рд┐рдВрдЯрд░ рдмрдирд╛рдПрдБ


рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, CreateRemotePrinter.bat рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдБред

рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ, рдЗрд╕реЗ рдХреНрд░рдо рдореЗрдВ рд▓рд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:
% 1 - рдкреНрд░рд┐рдВрдЯрд░ рдХрд╛ рдирд╛рдо;
% 2 - рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдирд╛рдо;
% 3 - рд╕реНрдерд╛рди
4% - рдкреНрд░рд┐рдВрдЯрд░ рдХрд╛ рд╡рд┐рд╡рд░рдгред

 @echo off SET PRTOOLS="c:\Windows\System32\Printing_Admin_Scripts\en-US" SET SETACL="SetACL.exe" cscript /nologo %PRTOOLS%\prnport.vbs -s print-cl-node-1 -a -r %1 -h %1.common.domain -t -o raw -me cscript /nologo %PRTOOLS%\prnmngr.vbs -s print-cl-node-1 -a -p %1 -m %2 -r %1 cscript /nologo %PRTOOLS%\prncnfg.vbs -s print-cl-node-1 -t -p %1 -h %1 -l %3 -m %4 +shared %SETACL% -on \\print-cl-node-1\%1 -ot prn -actn ace -ace "n:STN-TN\%1;p:man_docs,print" 

рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рд▓реЗрдХрд┐рди рд╣рдорд╛рд░рд╛ рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░ MSCS рдХреНрд▓рд╕реНрдЯрд░ рдкрд░ рд╕реНрдерд┐рдд рд╣реИ, рдФрд░ vbs рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рдХреЗ рдКрдкрд░ рд╕реЗрдЯ рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдХреБрдЫ рдФрд░ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред

3.2ред рдПрдХ рдирд┐рдпрдорд┐рдд рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░ рд╕реЗ рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдПрдХ рдкреНрд░рд┐рдВрдЯрд░ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛


рдХреНрд▓рд╕реНрдЯрд░ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рддреЗ рд╕рдордп, рдКрдкрд░ рдХреЗ рд╕реЗрдЯ рд╕реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗрд╡рд▓ рд╡рд░реНрддрдорд╛рди рд╕рдХреНрд░рд┐рдп рдиреЛрдб рдкрд░ рдкреЛрд░реНрдЯ рдФрд░ рдкреНрд░рд┐рдВрдЯрд░ рдмрдирд╛рддреЗ рд╣реИрдВ, рдФрд░ рд╡реЗ рдХреНрд▓рд╕реНрдЯрд░ рдкрд░ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВред рдмрд╕ рдРрд╕реЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП, Microsoft рдХреЗ рдкрд╛рд╕ рдПрдХ рдФрд░ рдЙрдкрдХрд░рдг рд╣реИ - PrintBRM (рдкреНрд░рд┐рдВрдЯ рдХрддрд╛рд░ рдмреИрдХрдЕрдк / рд░рд┐рдХрд╡рд░реА / рдорд╛рдЗрдЧреНрд░реЗрд╢рди)ред рдореБрдЭреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рдирд╣реАрдВ рдорд┐рд▓рд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдпрд╣ рд╕рд╛рдЭрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рд╣реИ: SS64 рдкрд░ рдорд╛рдкрджрдВрдбреЛрдВ рдкрд░ рд╕рд╣рд╛рдпрддрд╛ ред

CreateRemotePrinter.bat рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЬрд╛рд░реА рд░рдЦрдирд╛ред

PrintBRM рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рдкреНрд░рд┐рдВрдЯрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХреЙрдкреА рдХрд░ рд╕рдХрддреА рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрджрд┐ рдЖрдк рд╕рд┐рд░реНрдл рдПрдХ рдХреЙрдкреА (-b рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рд╢реБрд░реВ) рдФрд░ рд░рд┐рд╕реНрдЯреЛрд░ (-r) рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХреЛрдИ рдЪрдорддреНрдХрд╛рд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рддреЛ рдЕрдм рдереЛрдбрд╝рд╛ рдЬрд╛рджреВ рд╣реЛрдЧрд╛ред рдпрд╣ рдПрдордПрд╕ рдкреНрд░рджрд░реНрд╢рди рдЯреАрдо рдмреНрд▓реЙрдЧ рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрд┐рдд рд╣реИред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдкреНрд░рд┐рдВрдЯрд░ рдХреЛ temp.printerexport рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡рд╛рдкрд╕ рдХрд░рддреЗ рд╣реИрдВред

рдлрд┐рд░ рд╣рдо рдкреНрд░рд┐рдВрдЯрд░рдПрдХреНрд╕рдкреЛрд░реНрдЯ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЕрдирдкреИрдХ рдХрд░рддреЗ рд╣реИрдВ, LMONS рдФрд░ PRTPROCS рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдХрдИ XML рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рднреА рд╢реВрдиреНрдп рдХрд░рддреЗ рд╣реИрдВред рдореИрдВ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдКрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдЗрди рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИ рдФрд░ рдкреНрд░рд┐рдВрдЯрд░ рдХреА рд╡рд╕реВрд▓реА рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реЗ рд╕рд░реНрд╡рд░, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХреНрд▓рд╕реНрдЯрд░ рдПрдХ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рдирд╛ рд╣реИред

рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рд╕рдВрдкрд╛рджрд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╡рд╛рдкрд╕ temp.printerexport рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреИрдХ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ:

 SET PRNBRM="C:\Windows\System32\spool\tools\PrintBrm.exe" %PRNBRM% -b -nobin -s print-cl-node-1 -f temp.printerexport %PRNBRM% -r -d printerexport -f temp.printerexport del /f /q temp.printerexport del /s /f /q printerexport\LMONS printerexport\PRTPROCS echo ^<SpoolerAttrib /^> > printerexport\BrmSpoolerAttrib.xml echo ^<PPROCS /^> > printerexport\PProcs.xml echo ^<PRINTERDRIVERS /^> > printerexport\BrmDrivers.xml echo ^<LMONS Arch="Windows x64"/^> > printerexport\BRMLMons.xml %PRNBRM% -b -d printerexport -f temp.printerexport del /s /f /q printerexport %PRNBRM% -r -s print-cluster-1 -f temp.printerexport -p all -o force del /f /q temp.printerexport cscript /nologo %PRTOOLS%\prnmngr.vbs -s print-cl-node-1 -d -p %1 cscript /nologo %PRTOOLS%\prnport.vbs -s print-cl-node-1 -d -r %1 

3.3ред GPP рдФрд░ рд╕рд░реНрд╡рд░ / рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдПрдХ рд╕рд╛рде рдкреНрд░рд┐рдВрдЯрд░ рдЬреЛрдбрд╝реЗрдВ


рдЕрдм рдЖрдкрдХреЛ рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкреНрд░рд┐рдВрдЯрд░ рдХреА CSV рд╕реВрдЪреА рдореЗрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдлрд┐рдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореБрдЦреНрдп рд▓реВрдк рд╕реЗ рдкрд╣рд▓реЗ рд╕рд░реНрд╡рд░ рдкрд░ рдореМрдЬреВрджрд╛ рд▓реЛрдЧреЛрдВ рдХреА рд╕реВрдЪреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрд░реЛрдз рдЬреЛрдбрд╝реЗрдВ:

 $ActualPrintersList = Get-WmiObject -Class win32_share -computer print-cluster-1 | Where-Object Name -like "*PRN*" | Select-Object -ExpandProperty Name 

рдФрд░ рд▓реВрдк рдХреЗ рд╢рд░реАрд░ рдореЗрдВ, рд╣рдорд╛рд░реЗ рдмреИрдЯ-рдЙрдкрдирд╛рдо рдХреЛ рдЪрд▓рд╛рдПрдВ:

  if ("\\print-cluster-1\$($PrinterItem.Name)" -NotIn $ActualPrintersList) { Write-Host "Adding printer $($PrinterItem.Name) to print-cluster-1..." Start-Process -FilePath .\CreateRemotePrinter.bat -ArgumentList "$($PrinterItem.Name) `"$($PrinterItem.Driver)`" `"$($PrinterItem.Location)`" `"$($PrinterItem.Type)`"" -Wait } 

4. рд╕рднреА рдХреЛ рдПрдХ рд╕рд╛рде рд░рдЦрдирд╛, рдЗрд╕реЗ рд▓реЙрдиреНрдЪ рдХрд░рдирд╛, рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛


рд╕реАрдПрд╕рд╡реА рдореЗрдВ рд╕реНрд░реЛрдд рдбреЗрдЯрд╛
Name;ByGroup;Subnet;Location;Driver;Type;Model;uid
PRN-NALTA-028;yes;192.168.192.0/24;/;HP Universal Printing PCL 6 (v5.6.0); 4 тАФ HP LaserJet Pro M425dn;HP LaserJet Pro M425dn;{35F6CF36-2A24-4A81-B061-8BE71CEC27EA}
PRN-TARUS-002;yes;192.168.128.0/23;/;HP Universal Printing PCL 6 (v5.6.0); 4 тАФ HP LaserJet M3027 MFP;HP LaserJet M3027 MFP;{398F4A94-530C-4E3B-8A30-4288D5E8854D}
PRN-KIRILL-081;;192.168.196.0/24;/;HP Universal Printing PCL 6 (v5.6.0); 4 тАФ HP LaserJet 3390;HP LaserJet 3390;{421FC2DE-2E97-49FC-AEB0-3070B0166AD5}
PRN-BARAB-061;yes;192.168.142.0/24;/;HP Universal Printing PCL 6 (v5.6.0); 4 тАФ HP LaserJet Pro M425dn;HP LaserJet Pro M425dn;{43231EA0-A4A3-4F1A-8A25-95BC4FEFBCC6}
PRN-PYSHM-004;;192.168.143.0/24; /;KX DRIVER for Universal Printing; 4 тАФ Kyocera ECOSYS M2540dn;Kyocera ECOSYS M2540dn;{45509B48-E7BC-4497-9665-86D4E1E96FE1}
PRN-BUY---001;yes;192.168.44.0/24;/;HP Universal Printing PCL 6 (v5.6.0); 4 тАФ HP LaserJet Pro M402dn;HP LaserJet Pro M402dn;{457DB3FE-E35F-450E-B1D6-912F0D831573}
PRN-BATAY-042;yes;192.168.128.0/23;/;HP Universal Printing PCL 6 (v5.6.0); 4 тАФ HP LaserJet P2015 Series;HP LaserJet P2015 Series;{4740604B-C403-4511-91B0-689A197260F3}
PRN-EMPTY-002;yes;192.168.199.0/24;/;HP Universal Printing PCL 6 (v5.6.0); 4 тАФ HP LaserJet Pro M425dn;HP LaserJet Pro M425dn;{475578CB-689F-463B-9710-AE207973146C}
PRN-LIPKI-003;;192.168.44.0/24;/;KX DRIVER for Universal Printing; 4 тАФ Kyocera ECOSYS M2540dn;Kyocera ECOSYS M2540dn;{4794D22E-6586-4A81-A85D-A21FB8B209CF}
PRN-KOTOV-013;yes;192.168.128.0/23;/;HP Universal Printing PCL 6 (v5.6.0); 4 тАФ HP LaserJet Pro M425dn;HP LaserJet Pro M425dn;{4DFFBA1F-48D2-4824-B2EB-0AAD12B6A9D6}
PRN-ELAB-064;;192.168.140.0/24;/;HP Universal Printing PCL 6 (v5.6.0); 4 тАФ HP LaserJet Pro M425dn;HP LaserJet Pro M425dn;{52069D45-EF86-442D-A157-368D7510A1CF}
GeneratePrintersXml.ps1
 $PrintersCSV = Import-Csv -Delimiter ";" ".\Printers.csv" -Encoding Default [System.Xml.XmlDocument]$PrintersGPP = New-Object System.Xml.XmlDocument $PrintersGPP.PrependChild($PrintersGPP.CreateXmlDeclaration("1.0", "utf-8", $null)) | Out-Null $Printers = $PrintersGPP.AppendChild($PrintersGPP.CreateElement("Printers")) $Printers.SetAttribute("clsid","{1F577D12-3D1B-471e-A1B7-060317597B9C}") $DelPrinters = $Printers.AppendChild($PrintersGPP.CreateElement("SharedPrinter")) NewSharedPrinter -SharedPrinter $DelPrinters -name "Delete All" -action "D" -uid "{21097DBD-285D-48C3-B042-7746D7E6DA1B}" $Filters = $DelPrinters.AppendChild($PrintersGPP.CreateElement("Filters")) $FilterRunOnce = $Filters.AppendChild($PrintersGPP.CreateElement("FilterRunOnce")) $FilterRunOnce.SetAttribute("id","{F2537B78-C7D7-43DF-98D6-B32E90644825}") $FilterRunOnce.SetAttribute("hidden",1) $FilterRunOnce.SetAttribute("not",0) $FilterRunOnce.SetAttribute("bool","AND") Function NewSharedPrinter { [CmdletBinding()] param ( $SharedPrinter, $clsid = "{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}", $uid, $name, $action ) $image switch ($action){ "C" {$image = 0} "R" {$image = 1} "U" {$image = 2} "D" {$image = 3} } $SharedPrinter.SetAttribute("clsid",$clsid) $SharedPrinter.SetAttribute("name",$name) $SharedPrinter.SetAttribute("status",$name) $SharedPrinter.SetAttribute("image",$image) $SharedPrinter.SetAttribute("uid",$uid) $SharedPrinter.SetAttribute("userContext",1) $SharedPrinter.SetAttribute("bypassErrors",1) $SharedPrinterProperties = $SharedPrinter.AppendChild($PrintersGPP.CreateElement("Properties")) $SharedPrinterProperties.setattribute("action",$action) $SharedPrinterProperties.setattribute("comment","") $SharedPrinterProperties.setattribute("path","\\print-cluster-1.common.domain\$name") $SharedPrinterProperties.setattribute("default",0) $SharedPrinterProperties.setattribute("port","") } Function NewFilterGroup{ [CmdletBinding()] param ( $FilterGroup, $bool = "AND", $not = 0, $name, $sid ) $FilterGroup.SetAttribute("bool",$bool) $FilterGroup.SetAttribute("not",$not) $FilterGroup.SetAttribute("name","COMDOM\"+$name) $FilterGroup.SetAttribute("sid",$sid) $FilterGroup.SetAttribute("userContext",1) } Function NewFilterSubnet{ [CmdletBinding()] param ( $FilterIPRange, $bool = "AND", $not = 0, $start, $end ) $FilterIPRange.SetAttribute("bool",$bool) $FilterIPRange.SetAttribute("not",$not) $FilterIPRange.SetAttribute("min",$start) $FilterIPRange.SetAttribute("max",$end) } $ActualPrintersList = Get-WmiObject -Class win32_share -computer print-cluster-1 | Where-Object Name -like "*PRN*" | Select-Object -ExpandProperty Name ForEach ($PrinterItem in ($PrintersCSV | Sort-Object Name)) { if (!$PrinterItem.uid){ $uid = "{"+([guid]::NewGuid()).Guid.ToUpper()+"}" Write-Host "Printer $($PrinterItem.Name) is new. Policy item ID: $uid" } else { $uid = $PrinterItem.uid } $SharedPrinter = $PrintersGPP.CreateElement("SharedPrinter") NewSharedPrinter -SharedPrinter $SharedPrinter -name $PrinterItem.Name -action "U" -uid $uid $Filters = $SharedPrinter.AppendChild($PrintersGPP.CreateElement("Filters")) if ($PrinterItem.ByGroup -ieq "yes") { try { Get-ADGroup -Identity $PrinterItem.Name | Out-Null } catch { Write-Host "Creating group $($PrinterItem.Name)" New-ADGroup -Name $PrinterItem.Name ` -Path "OU=    ,OU=User Groups,DC=DOM,DC=COM" -GroupScope DomainLocal } $FilterGroup = $PrintersGPP.CreateElement("FilterGroup") NewFilterGroup -FilterGroup $FilterGroup -name $PrinterItem.Name -sid (Get-ADGroup -Identity $PrinterItem.Name).SID.Value $Filters.AppendChild($FilterGroup) | Out-Null } $FilterNetwork = .\PSipcalc.ps1 -NetworkAddress $PrinterItem.Subnet $FilterIPRange = $PrintersGPP.CreateElement("FilterIpRange") NewFilterSubnet -FilterIPRange $FilterIPRange -start $FilterNetwork.HostMin -end $FilterNetwork.HostMax $Filters.AppendChild($FilterIPRange) | Out-Null $Printers.AppendChild($SharedPrinter) | Out-Null $RevertSharedPrinter = $PrintersGPP.CreateElement("SharedPrinter") NewSharedPrinter -SharedPrinter $RevertSharedPrinter -name $PrinterItem.Name -action "D" -uid $uid if ($PrinterItem.ByGroup -ieq "yes") { $bool = "OR" } else { $bool = "AND" } $Filters = $RevertSharedPrinter.AppendChild($PrintersGPP.CreateElement("Filters")) if ($PrinterItem.ByGroup -ieq "yes") { $FilterGroup = $PrintersGPP.CreateElement("FilterGroup") NewFilterGroup -FilterGroup $FilterGroup -name $PrinterItem.Name -sid (Get-ADGroup -Identity $PrinterItem.Name).SID.Value -bool "AND" -not 1 $Filters.AppendChild($FilterGroup) | Out-Null } $FilterIPRange = $PrintersGPP.CreateElement("FilterIpRange") NewFilterSubnet -FilterIPRange $FilterIPRange -start $FilterNetwork.HostMin -end $FilterNetwork.HostMax -bool $bool -not 1 $Filters.AppendChild($FilterIPRange) | Out-Null $Printers.AppendChild($RevertSharedPrinter) | Out-Null if ("\\print-cluster-1\$($PrinterItem.Name)" -NotIn $ActualPrintersList) { Write-Host "Adding printer $($PrinterItem.Name) to print-cluster-1..." Start-Process -FilePath .\CreateRemotePrinter.bat -ArgumentList "$($PrinterItem.Name) `"$($PrinterItem.Driver)`" `"$($PrinterItem.Location)`" `"$($PrinterItem.Type)`"" -Wait } } $PrintersGPP.Save("\\COMDOM\SysVol\COMMON.DOMAIN\Policies\{f985a9ae-cb71-468b-8a99-e2c7f428aa2f}\User\Preferences\Printers\Printers.xml") $PrintersGPP.Save(".\Printers.xml") 
CreateRemotePrinter.bat
 @echo off SET PRTOOLS="c:\Windows\System32\Printing_Admin_Scripts\en-US" SET SETACL="SetACL.exe" SET PRNBRM="C:\Windows\System32\spool\tools\PrintBrm.exe" cscript /nologo %PRTOOLS%\prnport.vbs -s print-cl-node-1 -a -r %1 -h %1.common.domain -t -o raw -me cscript /nologo %PRTOOLS%\prnmngr.vbs -s print-cl-node-1 -a -p %1 -m %2 -r %1 cscript /nologo %PRTOOLS%\prncnfg.vbs -s print-cl-node-1 -t -p %1 -h %1 -l %3 -m %4 +shared %SETACL% -on \\print-cl-node-1\%1 -ot prn -actn ace -ace "n:STN-TN\%1;p:man_docs,print" %PRNBRM% -b -nobin -s print-cl-node-1 -f temp.printerexport %PRNBRM% -r -d printerexport -f temp.printerexport del /f /q temp.printerexport del /s /f /q printerexport\LMONS printerexport\PRTPROCS echo ^<SpoolerAttrib /^> > printerexport\BrmSpoolerAttrib.xml echo ^<PPROCS /^> > printerexport\PProcs.xml echo ^<PRINTERDRIVERS /^> > printerexport\BrmDrivers.xml echo ^<LMONS Arch="Windows x64"/^> > printerexport\BRMLMons.xml %PRNBRM% -b -d printerexport -f temp.printerexport del /s /f /q printerexport %PRNBRM% -r -s print-cluster-1 -f temp.printerexport -p all -o force del /f /q temp.printerexport cscript /nologo %PRTOOLS%\prnmngr.vbs -s print-cl-node-1 -d -p %1 cscript /nologo %PRTOOLS%\prnport.vbs -s print-cl-node-1 -d -r %1 
рдкрд░рд┐рдгрд╛рдореА рдлрд╝рд╛рдЗрд▓ Mint.xml
 <?xml version="1.0" encoding="utf-8"?> <Printers clsid="{1F577D12-3D1B-471e-A1B7-060317597B9C}"> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="Delete All" status="Delete All" image="3" uid="{21097DBD-285D-48C3-B042-7746D7E6DA1B}" bypassErrors="1" disabled="1"> <Properties action="D" path="" default="0" deleteAll="1" port="" /> <Filters> <FilterRunOnce id="{F2537B78-C7D7-43DF-98D6-B32E90644825}" hidden="1" not="0" bool="AND" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-BARAB-061" status="PRN-BARAB-061" image="2" uid="{43231EA0-A4A3-4F1A-8A25-95BC4FEFBCC6}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-BARAB-061" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="0" name="COMDOM\PRN-BARAB-061" sid="" userContext="1" /> <FilterIpRange bool="AND" not="0" min="192.168.142.1" max="192.168.142.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-BARAB-061" status="PRN-BARAB-061" image="3" uid="{43231EA0-A4A3-4F1A-8A25-95BC4FEFBCC6}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-BARAB-061" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="1" name="COMDOM\PRN-BARAB-061" sid="" userContext="1" /> <FilterIpRange bool="OR" not="1" min="192.168.142.1" max="192.168.142.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-BATAY-042" status="PRN-BATAY-042" image="2" uid="{4740604B-C403-4511-91B0-689A197260F3}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-BATAY-042" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="0" name="COMDOM\PRN-BATAY-042" sid="" userContext="1" /> <FilterIpRange bool="AND" not="0" min="192.168.128.1" max="192.168.129.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-BATAY-042" status="PRN-BATAY-042" image="3" uid="{4740604B-C403-4511-91B0-689A197260F3}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-BATAY-042" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="1" name="COMDOM\PRN-BATAY-042" sid="" userContext="1" /> <FilterIpRange bool="OR" not="1" min="192.168.128.1" max="192.168.129.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-BUY---001" status="PRN-BUY---001" image="2" uid="{457DB3FE-E35F-450E-B1D6-912F0D831573}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-BUY---001" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="0" name="COMDOM\PRN-BUY---001" sid="" userContext="1" /> <FilterIpRange bool="AND" not="0" min="192.168.44.1" max="192.168.44.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-BUY---001" status="PRN-BUY---001" image="3" uid="{457DB3FE-E35F-450E-B1D6-912F0D831573}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-BUY---001" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="1" name="COMDOM\PRN-BUY---001" sid="" userContext="1" /> <FilterIpRange bool="OR" not="1" min="192.168.44.1" max="192.168.44.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-ELAB-064" status="PRN-ELAB-064" image="2" uid="{52069D45-EF86-442D-A157-368D7510A1CF}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-ELAB-064" default="0" port="" /> <Filters> <FilterIpRange bool="AND" not="0" min="192.168.140.1" max="192.168.140.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-ELAB-064" status="PRN-ELAB-064" image="3" uid="{52069D45-EF86-442D-A157-368D7510A1CF}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-ELAB-064" default="0" port="" /> <Filters> <FilterIpRange bool="AND" not="1" min="192.168.140.1" max="192.168.140.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-EMPTY-002" status="PRN-EMPTY-002" image="2" uid="{475578CB-689F-463B-9710-AE207973146C}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-EMPTY-002" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="0" name="COMDOM\PRN-EMPTY-002" sid="" userContext="1" /> <FilterIpRange bool="AND" not="0" min="192.168.199.1" max="192.168.199.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-EMPTY-002" status="PRN-EMPTY-002" image="3" uid="{475578CB-689F-463B-9710-AE207973146C}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-EMPTY-002" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="1" name="COMDOM\PRN-EMPTY-002" sid="" userContext="1" /> <FilterIpRange bool="OR" not="1" min="192.168.199.1" max="192.168.199.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-KIRILL-081" status="PRN-KIRILL-081" image="2" uid="{421FC2DE-2E97-49FC-AEB0-3070B0166AD5}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-KIRILL-081" default="0" port="" /> <Filters> <FilterIpRange bool="AND" not="0" min="192.168.196.1" max="192.168.196.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-KIRILL-081" status="PRN-KIRILL-081" image="3" uid="{421FC2DE-2E97-49FC-AEB0-3070B0166AD5}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-KIRILL-081" default="0" port="" /> <Filters> <FilterIpRange bool="AND" not="1" min="192.168.196.1" max="192.168.196.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-KOTOV-013" status="PRN-KOTOV-013" image="2" uid="{4DFFBA1F-48D2-4824-B2EB-0AAD12B6A9D6}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-KOTOV-013" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="0" name="COMDOM\PRN-KOTOV-013" sid="" userContext="1" /> <FilterIpRange bool="AND" not="0" min="192.168.128.1" max="192.168.129.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-KOTOV-013" status="PRN-KOTOV-013" image="3" uid="{4DFFBA1F-48D2-4824-B2EB-0AAD12B6A9D6}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-KOTOV-013" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="1" name="COMDOM\PRN-KOTOV-013" sid="" userContext="1" /> <FilterIpRange bool="OR" not="1" min="192.168.128.1" max="192.168.129.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-LIPKI-003" status="PRN-LIPKI-003" image="2" uid="{4794D22E-6586-4A81-A85D-A21FB8B209CF}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-LIPKI-003" default="0" port="" /> <Filters> <FilterIpRange bool="AND" not="0" min="192.168.44.1" max="192.168.44.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-LIPKI-003" status="PRN-LIPKI-003" image="3" uid="{4794D22E-6586-4A81-A85D-A21FB8B209CF}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-LIPKI-003" default="0" port="" /> <Filters> <FilterIpRange bool="AND" not="1" min="192.168.44.1" max="192.168.44.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-NALTA-028" status="PRN-NALTA-028" image="2" uid="{35F6CF36-2A24-4A81-B061-8BE71CEC27EA}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-NALTA-028" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="0" name="COMDOM\PRN-NALTA-028" sid="" userContext="1" /> <FilterIpRange bool="AND" not="0" min="192.168.192.1" max="192.168.192.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-NALTA-028" status="PRN-NALTA-028" image="3" uid="{35F6CF36-2A24-4A81-B061-8BE71CEC27EA}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-NALTA-028" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="1" name="COMDOM\PRN-NALTA-028" sid="" userContext="1" /> <FilterIpRange bool="OR" not="1" min="192.168.192.1" max="192.168.192.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-PYSHM-004" status="PRN-PYSHM-004" image="2" uid="{45509B48-E7BC-4497-9665-86D4E1E96FE1}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-PYSHM-004" default="0" port="" /> <Filters> <FilterIpRange bool="AND" not="0" min="192.168.143.1" max="192.168.143.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-PYSHM-004" status="PRN-PYSHM-004" image="3" uid="{45509B48-E7BC-4497-9665-86D4E1E96FE1}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-PYSHM-004" default="0" port="" /> <Filters> <FilterIpRange bool="AND" not="1" min="192.168.143.1" max="192.168.143.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-TARUS-002" status="PRN-TARUS-002" image="2" uid="{398F4A94-530C-4E3B-8A30-4288D5E8854D}" userContext="1" bypassErrors="1"> <Properties action="U" comment="" path="\\print-cluster-1.common.domain\PRN-TARUS-002" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="0" name="COMDOM\PRN-TARUS-002" sid="" userContext="1" /> <FilterIpRange bool="AND" not="0" min="192.168.128.1" max="192.168.129.254" /> </Filters> </SharedPrinter> <SharedPrinter clsid="{9A5E9697-9095-436d-A0EE-4D128FDFBCE5}" name="PRN-TARUS-002" status="PRN-TARUS-002" image="3" uid="{398F4A94-530C-4E3B-8A30-4288D5E8854D}" userContext="1" bypassErrors="1"> <Properties action="D" comment="" path="\\print-cluster-1.common.domain\PRN-TARUS-002" default="0" port="" /> <Filters> <FilterGroup bool="AND" not="1" name="COMDOM\PRN-TARUS-002" sid="" userContext="1" /> <FilterIpRange bool="OR" not="1" min="192.168.128.1" max="192.168.129.254" /> </Filters> </SharedPrinter> </Printers> 
рдкреНрд░рд┐рдВрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рдкрд░рд┐рдгрд╛рдо
рдЫрд╡рд┐

Source: https://habr.com/ru/post/hi421211/


All Articles