WinServer 2012R2 рдордзреАрд▓ RDP рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╕рддреНрд░рд╛рдВрд╢реА рдЧреИрд░-рдкреНрд░рд╢рд╛рд╕рдХрд╛рдЪреНрдпрд╛ рдорд╛рдирд╡реА рдЫрд╛рдпрд╛ рдХрдиреЗрдХреНрд╢рдирд╕рд╛рдареА рдЙрдкрдпреБрдХреНрддрддрд╛

рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЭрдЪреНрдпрд╛ рдЕрд▓рдЧ рдареЗрд╡рдгреНрдпрд╛рдЪреНрдпрд╛ рдХрд╛рд▓рд╛рд╡рдзреАрдд рд╕рдорд╕реНрдпрд╛ рдЦрд╛рд▓реАрд▓рдкреНрд░рдорд╛рдгреЗ рдмрдирд▓реА: рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░рдЪреА рд╕реЗрд╡рд╛ рдЖрдгрд┐ рд╕рд▓реНрд▓рд╛рдорд╕рд▓рдд рдХрд░рдгрд╛рд░реНрдпрд╛ рддрдЬреНрдЮрд╛рдВрдЪреНрдпрд╛ рдХрд╛рд░реНрдпрд╛рд▓рдпрд╛рдВрдирд╛ рднреЗрдЯреАрдВрдЪреА рд╕рдВрдЦреНрдпрд╛ рдХрдореА рдХрд░рдгреЗ рдЦрд░реЛрдЦрд░ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рдЖрдгрд┐ рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рд╕рд╛рдВрдЧрд╛рдпрдЪреЗ рддрд░, рд╡рд╛рдкрд░рдХрд░реНрддреЗ рдЕрдиреЗрдХрджрд╛ рддрдЬреНрдЮрд╛рдВрдЪреНрдпрд╛ рдорджрддреАрдЪрд╛ рдЧреИрд░рд╡рд╛рдкрд░ рдХрд░рддрд╛рдд. рд╕рдорд╕реНрдпрд╛ рд╕реНрд╡рддрдГрдЪ, рддреЗ рдореНрд╣рдгрддрд╛рдд "рддреЗ рдпреЗрддреАрд▓ - рддреЗ рдорджрдд рдХрд░рддреАрд▓ - рддреЗ рдХрд░рддреАрд▓, рдкрдг рдореА рдзреВрдореНрд░рдкрд╛рди/рдХреЙрдлреА рдкрд┐рдИрди рдЗ." рдЖрдкрдг рд░рд┐рдореЛрдЯ рд╕реНрдХреНрд░реАрди рдкрд╛рд╣рд┐рд▓реНрдпрд╛рд╕ рд╕рд░реНрд╡реНрд╣рд░ рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рддрд╛рдирд╛ рдЯреЗрд▓рд┐рдлреЛрди рд╕рд▓реНрд▓рд╛ рдЕрдзрд┐рдХ рдкреНрд░рднрд╛рд╡реА рдЖрд╣реЗ.

WinServer 2012R2 рдордзреАрд▓ RDP рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╕рддреНрд░рд╛рдВрд╢реА рдЧреИрд░-рдкреНрд░рд╢рд╛рд╕рдХрд╛рдЪреНрдпрд╛ рдорд╛рдирд╡реА рдЫрд╛рдпрд╛ рдХрдиреЗрдХреНрд╢рдирд╕рд╛рдареА рдЙрдкрдпреБрдХреНрддрддрд╛

рдЖрдордЪреНрдпрд╛ рд╕рд╛рдпрдХрд▓рдЪреНрдпрд╛ "рд╢реЛрдзрд╛" рдирдВрддрд░, рд▓реЗрдЦрд╛рдЪреНрдпрд╛ рд╡рд┐рд╖рдпрд╛рд╡рд░реАрд▓ рд╕рдордЬреВрддрджрд╛рд░ рдорд╛рд╣рд┐рддреА рдкреБрдвреЗ рдЖрд▓реА: RDS рд╕рд╛рд╡рд▓реА тАУ Windows Server 2012 R2 рдордзреАрд▓ RDP рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╕рддреНрд░рд╛рдВрд╕рд╛рдареА рдЫрд╛рдпрд╛ рдХрдиреЗрдХреНрд╢рди рдХрд┐рдВрд╡рд╛ рд╡рд┐рдВрдбреЛрдЬ рд╕рд░реНрд╡реНрд╣рд░рдордзреНрдпреЗ рдЕрдирдкреНрд░рд┐рд╡реНрд╣рд┐рд▓реЗрдЬреНрдб рдпреБрдЬрд░ рд╢реЕрдбреЛ рдореЛрдб рдХрд┐рдВрд╡рд╛ RDP рд╕рддреНрд░рд╛рдВрдЪреЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдирд┐рдпреБрдХреНрдд рдХрд░рдгреЗ. рддреНрдпрд╛ рд╕рд░реНрд╡рд╛рдВрдордзреНрдпреЗ рдХрдиреНрд╕реЛрд▓рдЪрд╛ рд╡рд╛рдкрд░ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ, рдЕрдЧрджреА рд╕рд╛рдзреНрдпрд╛ рд╕рдВрд╡рд╛рджрд╛рдЪреНрдпрд╛ рдШрдЯрдХрд╛рдВрд╕рд╣.

рдЦрд╛рд▓реАрд▓ рд╕рд░реНрд╡ рдорд╛рд╣рд┐рддреА рдЬреНрдпрд╛рдВрдЪреНрдпрд╛рд╕рд╛рдареА рдЖрд╣реЗ рд╕рд╛рдорд╛рдиреНрдпрдкрдгреЗ рдЕрд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдХреГрддреА рд╕рд╣рди рдХрд░рддреЗ рдЗрдЪреНрдЫрд┐рдд рдкрд░рд┐рдгрд╛рдо рдорд┐рд│рд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА, рдЕрдирд╛рд╡рд╢реНрдпрдХ рдкрджреНрдзрддреА рд╢реЛрдзреВрди рдХрд╛рдврдгреЗ.
"рдорд╛рдВрдЬрд░реАрд▓рд╛ рд╢реЗрдкрдЯреАрдиреЗ рдЦреЗрдЪреВ рдирдпреЗ" рдореНрд╣рдгреВрди, рдореА рд╢реЗрд╡рдЯрдЪреНрдпрд╛рдкрд╛рд╕реВрди рд╕реБрд░реБрд╡рд╛рдд рдХрд░реЗрди: рдмрд╛рдИрдХ рдпреБрдЯрд┐рд▓рд┐рдЯреА рд╡рд╛рдкрд░реВрди рд╕рд░рд╛рд╕рд░реА рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рд╕рд╛рдареА рдХрд╛рд░реНрдп рдХрд░рддреЗ AdmiLink, рдЬреНрдпрд╛рд╕рд╛рдареА рддреНрдпрд╛рдЪреНрдпрд╛ рд▓реЗрдЦрдХрд╛рдЪреЗ рдЖрднрд╛рд░.

I. рдХрдиреНрд╕реЛрд▓ рдЖрдгрд┐ рд╕рд╛рд╡рд▓реА RDP.

рд╕рд╣ рд╡рд╛рдкрд░рд▓реНрдпрд╛рдкрд╛рд╕реВрди рд╕рд░реНрд╡реНрд╣рд░ рдореЕрдиреЗрдЬрд░ рдХрдиреНрд╕реЛрд▓рдЪреЗ рдкреНрд░рд╢рд╛рд╕рдХ рдЕрдзрд┐рдХрд╛рд░ -> QuickSessionCollection -> рдЖрд╡рдбреАрдЪреНрдпрд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреНрдпрд╛ рд╕рддреНрд░рд╛рд╡рд░ рдХреНрд▓рд┐рдХ рдХрд░реВрди, рд╕рдВрджрд░реНрдн рдореЗрдиреВрдордзреВрди рд╕рд╛рд╡рд▓реА рдирд┐рд╡рдбреВрди рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рдХрд╕реЗ рд╡рд╛рдкрд░рд╛рд╡реЗ рдпрд╛рдЪреЗ рдирд┐рд░реНрджреЗрд╢ рджреЗрдгрд╛рд▒реНрдпрд╛ рдХрд░реНрдордЪрд╛рд▒реНрдпрд╛рдВрд╕рд╛рдареА, рд╣рд╛ рдкрд░реНрдпрд╛рдп рдирд╛рд╣реА, рджреБрд╕рд░реА "рд▓рд╛рдХрдбреА" рдкрджреНрдзрдд рдорд╛рдирд▓реА рдЧреЗрд▓реА, рдореНрд╣рдгрдЬреЗ:

1. рд╕рддреНрд░рд╛рдЪрд╛ RDP рдЖрдпрдбреА рд╢реЛрдзрд╛:

query user | findstr Administrator

рдХрд┐рдВрд╡рд╛:

qwinsta | findstr Administrator 

рд╢рд┐рд╡рд╛рдп "| Findstr рдкреНрд░рд╢рд╛рд╕рдХ"рдЬреЗрд╡реНрд╣рд╛ рддреБрдореНрд╣рд╛рд▓рд╛ рдирдХреНрдХреА рдХрд╛рдп рдорд╛рд╣рд┐рдд рдЕрд╕реЗрд▓ рддреЗрд╡реНрд╣рд╛рдЪ рддреЗ рд╕реЛрдпреАрдЪреЗ рд╣реЛрддреЗ рдкреНрд░рд╢рд╛рд╕рдХ рддреБрдореНрд╣рд╛рд▓рд╛ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдХрд┐рдВрд╡рд╛ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рд▓реЙрдЧ рдЗрди рдХреЗрд▓реЗрд▓реЗ рдкреНрд░рддреНрдпреЗрдХрдЬрдг рдкрд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА рдлрдХреНрдд рдкрд╣рд┐рд▓рд╛ рднрд╛рдЧ рд╡рд╛рдкрд░рд╛.

WinServer 2012R2 рдордзреАрд▓ RDP рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╕рддреНрд░рд╛рдВрд╢реА рдЧреИрд░-рдкреНрд░рд╢рд╛рд╕рдХрд╛рдЪреНрдпрд╛ рдорд╛рдирд╡реА рдЫрд╛рдпрд╛ рдХрдиреЗрдХреНрд╢рдирд╕рд╛рдареА рдЙрдкрдпреБрдХреНрддрддрд╛

2. рдбреЛрдореЗрдирдордзреНрдпреЗ рдкреНрд░рджрд╛рди рдХреЗрд▓реЗрд▓реНрдпрд╛ рдпрд╛ рд╕рддреНрд░рд╛рд╢реА рдХрдиреЗрдХреНрдЯ рд╡реНрд╣рд╛ рдЧрдЯ рдзреЛрд░рдгреЗ "рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд░рд┐рдореЛрдЯ рдбреЗрд╕реНрдХрдЯреЙрдк рд╕рд░реНрд╡реНрд╣рд┐рд╕реЗрд╕ рд╕рддреНрд░рд╛рдВрд╕рд╛рдареА рд░рд┐рдореЛрдЯ рдХрдВрдЯреНрд░реЛрд▓ рдирд┐рдпрдо рд╕реЗрдЯ рдХрд░рд╛" рдкрд░реНрдпрд╛рдп рдирд┐рд╡рдбрд▓рд╛ рдЖрд╣реЗ, рдХрд┐рдорд╛рди "рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдкрд░рд╡рд╛рдирдЧреАрд╕рд╣ рдореЙрдирд┐рдЯрд░ рд╕рддреНрд░" рдкрд░реНрдпрд╛рдп рдирд┐рд╡рдбрд▓рд╛ рдЖрд╣реЗ (рдЕрдзрд┐рдХ):

mstsc /shadow:127

рдХреГрдкрдпрд╛ рд▓рдХреНрд╖рд╛рдд рдШреНрдпрд╛ рдХреА рд╕реВрдЪреАрдордзреНрдпреЗ рдлрдХреНрдд рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд▓реЙрдЧрд┐рди рдЕрд╕рддреАрд▓.

рдореА рдкреБрдиреНрд╣рд╛ рд╕рд╛рдВрдЧрддреЛ рдХреА рдкреНрд░рд╢рд╛рд╕рдХ рдЕрдзрд┐рдХрд╛рд░рд╛рдВрд╢рд┐рд╡рд╛рдп рддреБрдореНрд╣рд╛рд▓рд╛ рдкреБрдвреАрд▓ рдЧреЛрд╖реНрдЯреА рдорд┐рд│рддреАрд▓:

WinServer 2012R2 рдордзреАрд▓ RDP рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╕рддреНрд░рд╛рдВрд╢реА рдЧреИрд░-рдкреНрд░рд╢рд╛рд╕рдХрд╛рдЪреНрдпрд╛ рдорд╛рдирд╡реА рдЫрд╛рдпрд╛ рдХрдиреЗрдХреНрд╢рдирд╕рд╛рдареА рдЙрдкрдпреБрдХреНрддрддрд╛

рдкрд░рдВрддреБ рдЬреНрдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд╡рд░ рдЪрд░реНрдЪрд╛ рдХреЗрд▓реА рдЬрд╛рдИрд▓ рддреНрдпрд╛рдЪреНрдпрд╛ рдкреНрд░рд╛рдердорд┐рдХ рдбреАрдмрдЧрд┐рдВрдЧрд╕рд╛рдареА, рдореА рдкреНрд░рд╢рд╛рд╕рдХ рдЕрдзрд┐рдХрд╛рд░рд╛рдВрд╕рд╣ рдЦрд╛рддреЗ рд╡рд╛рдкрд░рд▓реЗ.

II. рдХрд╛рд░реНрдпрдХреНрд░рдо

рддрд░ рдкреНрд░реЙрдмреНрд▓реЗрдо рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ: рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреНрдпрд╛ рд╕рд╛рд╡рд▓реАрдЪреНрдпрд╛ рд╕реЗрдиреНрд╕рд▓рд╛ рддреНрдпрд╛рдЪреНрдпрд╛ рдкрд░рд╡рд╛рдирдЧреАрдиреЗ рдЬреЛрдбрдгреНрдпрд╛рд╕рд╛рдареА рдХрд╛рд╣реА рд╕рд╛рдзреЗ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдЗрдВрдЯрд░рдлреЗрд╕ рддрдпрд╛рд░ рдХрд░рдгреЗ, рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рд▓рд╛ рд╕рдВрджреЗрд╢ рдкрд╛рдард╡рдгреЗ. рдирд┐рд╡рдбрд▓реЗрд▓реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╡рд╛рддрд╛рд╡рд░рдг рд▓рд╛рдЬрд░ рдЖрд╣реЗ.

1. рдЖрдореНрд╣рд╛рд▓рд╛ рдкреНрд░рд╢рд╛рд╕рдХрд╛рдХрдбреВрди рдХрд┐рдВрд╡рд╛ рдкреБрдиреНрд╣рд╛ рдХрдиреНрд╕реЛрд▓рджреНрд╡рд╛рд░реЗ "рд▓реЙрдЧрд┐рди" - "рдкреВрд░реНрдг рдирд╛рд╡" рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдЪреА рд╕рдВрдкреВрд░реНрдг рдбреЛрдореЗрди рд╕реВрдЪреА рдорд┐рд│рддреЗ:

wmic useraccount get Name,FullName 

рдХреЛрдгреАрд╣реА рдпрд╛рд▓рд╛ рдордирд╛рдИ рдХрд░рдд рдирд╛рд╣реА:

wmic useraccount get Name,FullName > c:testusername.txt

рдореА рд▓рдЧреЗрдЪ рдореНрд╣рдгреЗрди рдХреА рдпрд╛ рдлрд╛рдИрд▓рд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рдд рд▓рд╛рдЭрд╛рд░рд╕рд▓рд╛ рд╕рдорд╕реНрдпрд╛ рдЖрд▓реА рд╣реЛрддреА, рдХрд╛рд░рдг рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рддреНрдпрд╛рдЪреЗ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ UCS-2 рдЖрд╣реЗ, рдореНрд╣рдгреВрди рдорд▓рд╛ рддреЗ рдореЕрдиреНрдпреБрдЕрд▓реА рдирд┐рдпрдорд┐рдд UTF-8 рдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧрд▓реЗ. рдлрд╛рдЗрд▓ рд╕реНрдЯреНрд░рдХреНрдЪрд░рдордзреНрдпреЗ рдмрд░реЗрдЪ рдЯреЕрдм рдЖрд╣реЗрдд рдХрд┐рдВрд╡рд╛ рддреНрдпрд╛рдРрд╡рдЬреА рдмрд░реНтАНрдпрд╛рдЪ рдЬрд╛рдЧрд╛ рдЖрд╣реЗрдд, рдЬреНрдпрд╛рд╡рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдореЕрдЯрд┐рдХ рдкрджреНрдзрддреАрдиреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрдгреНрдпрд╛рдд рдЖрд▓рд╛ рдЖрд╣реЗ; рд▓рд╡рдХрд░рдЪ рдХрд┐рдВрд╡рд╛ рдирдВрддрд░ рдПрдиреНрдХреЛрдбрд┐рдВрдЧрдЪреА рд╕рдорд╕реНрдпрд╛ рд╕реЛрдбрд╡рд▓реА рдЬрд╛рдИрд▓ рдЖрдгрд┐ рдлрд╛рдЗрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдореЕрдЯрд┐рдХрд░рд┐рддреНрдпрд╛ рдЕрджреНрдпрддрдирд┐рдд рдХреЗрд▓реА рдЬрд╛рдИрд▓.

рдореНрд╣рдгреВрди, рдкреНрд░реЛрдЧреНрд░рд╛рдордЪреНрдпрд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрд╕рд╛рдареА рдПрдХ рдлреЛрд▓реНрдбрд░ рдкреНрд░рд╡реЗрд╢рдпреЛрдЧреНрдп рдЕрд╕рдгреНрдпрд╛рдЪреА рдХрд▓реНрдкрдирд╛ рдЖрд╣реЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде c:test, рдЬреНрдпрд╛рдордзреНрдпреЗ 2 рдлрд╛рдЗрд▓реНрд╕ рдЕрд╕рддреАрд▓: рдкреНрд░рдердо рд▓реЙрдЧрд┐рди рдЖрдгрд┐ рдкреВрд░реНрдгрдирд╛рд╡рд╛рд╕рд╣, рджреБрд╕рд░реА id_rdp рдЖрдгрд┐ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдЪреНрдпрд╛ рд▓реЙрдЧрд┐рдирд╕рд╣. рдкреБрдвреЗ, рдЖрдореНрд╣реА рд╢рдХреНрдп рддрд┐рддрдХреНрдпрд╛ рд╕рд░реНрд╡реЛрддреНрддрдо рдбреЗрдЯрд╛рд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддреЛ :).

рдпрд╛рджрд░рдореНрдпрд╛рди, рд╕рддреНрд░рд╛рдВрдЪреНрдпрд╛ рд╕реВрдЪреАрд╢реА рд╕рдВрдмрджреНрдз рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рд╣реА (рд▓реЙрдЧрд┐рди рдЖрдгрд┐ рдкреВрд░реНрдгрдирд╛рд╡) рд╕рд╛рдордЧреНрд░реА рдПрдХрд╛ рдЕреЕрд░реЗрдордзреНрдпреЗ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХрд░рддреЛ:

procedure Tf_rdp.UserF2Array;
var 
  F:TextFile;   i:integer;   f1, line1:String;   fL: TStringList;
begin //f_d ╨│╨╗╨╛╨▒╨░╨╗╤М╨╜╤Л╨╣ ╨┐╤Г╤В╤М ╨║ ╤А╨░╨╖╨╝╨╡╤Й╨╡╨╜╨╕╤О ╤Д╨░╨╣╨╗╨╛╨▓ 
f1:=f_d+'user_name.txt';     //╨╖╨░╨┤╨░╤З╨░ ╤Б╤З╨╕╤В╨░╤В╤М ╨▓ ╨╝╨░╤Б╤Б╨╕╨▓ ╤Б╨╛╨┤╨╡╤А╨╢╨╕╨╝╨╛╨╡ ╤Д╨░╨╣╨╗╨░
fL := TStringList.Create; // ╤Б╤В╤А╨╛╨║╤Г ╨┐╨╛╨┤╨▓╨╡╤А╨│╨╜╨╡╨╝ ╨╝╨╡╤В╨░╨╝╨░╤А╤Д╨╛╨╖╨░╨╝ ╤Б ╤А╨░╨╖╨┤╨╡╨╗╨╕╤В╨╡╨╗╤П╨╝╨╕
fL.Delimiter := '|'; fL.StrictDelimiter := True;
AssignFile(F,f1); 
try // ╨Ю╤В╨║╤А╤Л╤В╤М ╤Д╨░╨╣╨╗ ╨┤╨╗╤П ╤З╤В╨╡╨╜╨╕╤П
  reset(F); ReadLn(F,line1);
  i:=0;
while not eof(F) do // ╨б╤З╨╕╤В╤Л╨▓╨░╨╡╨╝ ╤Б╤В╤А╨╛╨║╨╕, ╨┐╨╛╨║╨░ ╨╜╨╡ ╨╖╨░╨║╨╛╨╜╤З╨╕╤В╤Б╤П ╤Д╨░╨╣╨╗
begin
ReadLn(F,line1);
line1:= StringReplace(line1, '  ', '|',[]); //╨╖╨░╨╝╨╡╨╜╤П╨╡╨╝ ╨┐╨╡╤А╨▓╤Л╨╣ ╨┐╨╛╨┐╨░╨▓╤И.2╨┐╤А╨╛╨▒╨╡╨╗╨░ ╤А╨░╨╖╨┤╨╡╨╗╨╕╤В╨╡╨╗╨╡╨╝ |
// ╤Г╨┤╨░╨╗╤П╨╡╨╝ ╨▓╤Б╨╡ ╨┤╨▓╨╛╨╣╨╜╤Л╨╡ ╨┐╤А╨╛╨▒╨╡╨╗╤Л
while pos('  ',line1)>0 do line1:= StringReplace(line1, '  ', ' ', [rfReplaceAll]);
begin
if (pos('|',line1)>0) then
begin //╨╡╤Б╨╗╨╕ ╤А╨░╨╖╨┤╨╡╨╗╨╕╤В╨╡╨╗╤М ╤Б╤Г╤Й╨╡╤Б╤В╨▓╤Г╨╡╤В ╨╖╨░╨╜╨╛╤Б╨╕╨╝ ╨╡╨│╨╛ ╨▓ ╨╝╨░╤Б╤Б╨╕╨▓
fL.DelimitedText :=line1; // ╤А╨░╨╖╨▒╨╕╨▓╨░╨╡╨╝ ╨╜╨░ ╤Б╤В╨╛╨╗╨▒╤Ж╤Л
if (fL[0]<>'') then //╨╡╤Б╨╗╨╕ ╤Г╤З╨╡╤В╨║╨░ ╨╕╨╝╨╡╨╡╤В ╨╕╨╝╤П
begin //╨▓╨╜╨╛╤Б╨╕╨╝ ╨╡╨╡ ╨▓ ╨╝╨░╤Б╤Б╨╕╨▓
 inc(i); // ╨╕╨╖╨▒╨░╨▓╨╗╤П╨╡╨╝╤Б╤П ╨╛╤В ╨▓╨╛╨╖╨╝╨╛╨╢╨╜╤Л╤Е ╨╛╨┤╨╕╨╜╨╛╤З╨╜╤Л╤Е ╨┐╤А╨╛╨▒╨╡╨╗╨╛╨▓ ╨▓ ╨╗╨╛╨│╨╕╨╜╨╡
 fam[0,i]:=StringReplace(fL[1],' ','',[rfReplaceall, rfIgnoreCase]);
 fam[1,i]:=fL[0];
 end;end;end;end; // ╨У╨╛╤В╨╛╨▓╨╛. ╨Ч╨░╨║╤А╤Л╨▓╨░╨╡╨╝ ╤Д╨░╨╣╨╗.
 CloseFile(F);
 Fl.Free;
 except
 on E: EInOutError do  ShowMessage('╨Ю╤И╨╕╨▒╨║╨░ ╨╛╨▒╤А╨░╨▒╨╛╤В╨║╨╕ ╤Д╨░╨╣╨╗╨░. ╨Ф╨╡╤В╨░╨╗╨╕: '+E.Message);
 end;end;

рдореА "рдмрд▒реНрдпрд╛рдЪ рдХреЛрдб" рд╕рд╛рдареА рджрд┐рд▓рдЧреАрд░ рдЖрд╣реЛрдд, рдЦрд╛рд▓реАрд▓ рдореБрджреНрджреЗ рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЕрд╕рддреАрд▓.

2. рдорд╛рдЧреАрд▓ рдкрд░рд┐рдЪреНрдЫреЗрджрд╛рддреАрд▓ рд╕рдорд╛рди рдкрджреНрдзрдд рд╡рд╛рдкрд░реВрди, рдЖрдореНрд╣реА рд╕реНрдЯреНрд░рд┐рдВрдЧрдЧреНрд░рд┐рдб рдШрдЯрдХрд╛рдордзреНрдпреЗ рд╕реВрдЪреАрд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкрд░рд┐рдгрд╛рдо рд╡рд╛рдЪрддреЛ, рддрд░ рдореА рдХреЛрдбрдЪрд╛ рдПрдХ "рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг" рднрд╛рдЧ рджреЗрдИрди:

2.1 рдЖрдореНрд╣рд╛рд▓рд╛ рдПрдХрд╛ рдлрд╛рдИрд▓рдордзреНрдпреЗ RDP рд╕рддреНрд░рд╛рдВрдЪреА рд╡рд░реНрддрдорд╛рди рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреЗ:

f1:=f_d+'user.txt';
cmdline:='/c query user >'+ f1;
if ShellExecute(0,nil, PChar('cmd'),PChar(cmdline),nil,1)=0 then;
Sleep(500); // ╨╝╨╛╨╢╨╜╨╛ ╨╕ ╨┐╨╛╨┤╨╛╨╗╤М╤И╨╡ ╨╢╨┤╨░╤В╤М ╨┐╨╛╨║╨░ ╤Д╨░╨╣╨╗ ╨┤╨╗╤П ╤З╤В╨╡╨╜╨╕╤П ╤Б╨╛╨╖╨┤╨░╨╡╤В╤Б╤П

2.2 рдлрд╛рдЗрд▓рд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рд╛ (рдХреЛрдбрдЪреНрдпрд╛ рдлрдХреНрдд рдорд╣рддреНрддреНрд╡рд╛рдЪреНрдпрд╛ рдУрд│реА рд╕реВрдЪрд┐рдд рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд):

StringGrid1.Cells[0,i]:=fL[1]; StringGrid1.Cells[2,i]:=fL[3]; //╨║╨╕╨┤╨░╨╡╨╝ ╨▓ ╤Ж╨╕╨║╨╗╨╡ ╨▓ StringGrid1
login1:=StringReplace(fL[1],' ','',[rfReplaceall, rfIgnoreCase]); //╤Г╨▒╨╕╤А╨░╨╡╨╝ ╨╕╨╖ ╨╗╨╛╨│╨╕╨╜╨░ ╨┐╤А╨╛╨▒╨╡╨╗╤Л
if (SearchArr(login1)>=0) then //╨╕╤Й╨╡╨╝ ╨▓ ╨╝╨░╤Б╤Б╨╕╨▓╨╡ ╨╕╨╖ ╨┐1. ╨╗╨╛╨│╨╕╨╜ ╨╕ ╨╖╨░╨┐╨╕╤Б╤Л╨▓╨░╨╡╨╝ ╨▓ ╤В╨░╨▒╨╗╨╕╤Ж╤Г ╨д╨Ш╨Ю
StringGrid1.Cells[1,i]:=fam[1,SearchArr(login1)]
else StringGrid1.Cells[1,i]:='+'; // ╨╗╨╕╨▒╨╛ ╨╖╨░╨┐╨╕╤Б╤Л╨▓╨░╨╡╨╝ ╨┐╨╗╤О╤Б╨╕╨║:)
.... //╨▓ ╨╖╨░╨▓╨╕╤Б╨╕╨╝╨╛╤Б╤В╨╕ ╨╛╤В ╨▓╤Л╨▒╨╛╤А╨░ ╨┐╨╛╨╗╤М╨╖╨╛╨▓╨░╤В╨╡╨╗╤П ╤Б╨╛╤А╤В╨╕╤А╤Г╨╡╨╝ ╨╕ ╤Д╨╛╤А╨╝╨░╤В╨╕╤А╤Г╨╡╨╝ ╨┐╨╛ ╨┤╨░╨╜╨╜╤Л╨╝
if (b_id.Checked=true) then SortGrid(0) else SortGrid(1);
StringGrid1.AutoSizeColumn(0);StringGrid1.AutoSizeColumn(1); StringGrid1.AutoSizeColumn(2);  

3. рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЖрдгрд┐ рддреНрдпрд╛рдЪреНрдпрд╛ рд╕рддреНрд░ рдХреНрд░рдорд╛рдВрдХрд╛рд╕рд╣ рд▓рд╛рдЗрдирд╡рд░ рдХреНрд▓рд┐рдХ рдХрд░реВрди рдереЗрдЯ рдХрдиреЗрдХреНрд╢рди рд╕реНрд╡рддрдГ:

  id:=(StringGrid1.Row);// ╤Г╨╖╨╜╨░╨╡╨╝ ╨╜╨╛╨╝╨╡╤А ╤Б╤В╤А╨╛╨║╨╕  IntToStr(StringGrid1.Row)
  ids:=StringGrid1.Cells[2,id]; //╨┐╨╛╨╗╤Г╤З╨░╨╡╨╝ ╨╕╨┤╨╡╨╜╤В╨╕╤Д╨╕╨║╨░╤В╨╛╤А rdp
  cmdline:='/c mstsc /shadow:'+ ids; //╨╕ ╨┐╨╛╨┤╨║╨╗╤О╤З╨░╨╡╨╝╤Б╤П....
 if (b_rdp.Checked=True) then  if ShellExecute(0,nil, PChar('cmd'),PChar(cmdline),nil,1) =0 then;       

4. рдЖрдгрдЦреА рдХрд╛рд╣реА рд╕рдЬрд╛рд╡рдЯ рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд, рдЬрд╕реЗ рдХреА рд░реЗрдбрд┐рдУ рдмрдЯрдгрд╛рд╡рд░ рдХреНрд▓рд┐рдХ рдХрд░реВрди рдХреНрд░рдорд╡рд╛рд░реА рд▓рд╛рд╡рдгреЗ рдЖрдгрд┐ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рд▓рд╛ рдХрд┐рдВрд╡рд╛ рд╕рд░реНрд╡ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдирд╛ рд╕рдВрджреЗрд╢.

WinServer 2012R2 рдордзреАрд▓ RDP рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╕рддреНрд░рд╛рдВрд╢реА рдЧреИрд░-рдкреНрд░рд╢рд╛рд╕рдХрд╛рдЪреНрдпрд╛ рдорд╛рдирд╡реА рдЫрд╛рдпрд╛ рдХрдиреЗрдХреНрд╢рдирд╕рд╛рдареА рдЙрдкрдпреБрдХреНрддрддрд╛

тЖТ рд╕рдВрдкреВрд░реНрдг рд╕реНрддреНрд░реЛрдд рдХреЛрдб рдкрд╛рд╣рд┐рд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ рдпреЗрдереЗ

III. AdminLink рд╡рд╛рдкрд░рдгреЗ - рдореА рдХрд╛рдп рдкрд╛рд╣рд┐рд▓реЗ:

AdminLink рдПрдХ рд╢реЙрд░реНрдЯрдХрдЯ рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░рддреЗ рдЬреЗ рдпреБрдЯрд┐рд▓рд┐рдЯреАрдЪреНрдпрд╛ рд╕реНрдерд╛рдирд╛рдЪрд╛ рд╕рдВрджрд░реНрдн рджреЗрддреЗ admilaunch.exe, рдЖрдгрд┐ рд▓реЙрдиреНрдЪ рдпреБрдЯрд┐рд▓рд┐рдЯреАрдЪреА рд╡реИрдпрдХреНрддрд┐рдХ рдкреНрд░рдд AdmiRun.Exe рдЬреЗ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреНрдпрд╛ рдлреЛрд▓реНрдбрд░рдордзреНрдпреЗ рд╕реНрдерд┐рдд рдЖрд╣реЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде рд╡рд╛рд╕реНрдпрд╛, рдкреНрд░рдХрд╛рд░ C:UsersvasyaWINDOWS. рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рд╕рд░реНрд╡ рдХрд╛рд╣реА рдЗрддрдХреЗ рд╡рд╛рдИрдЯ рдирд╕рддреЗ: рддреБрдордЪрд╛ рд╕реНрд╡рддрдГрдЪрд╛ рдкреНрд░рд╢рд╛рд╕рдХ рд╡рд┐рд╡реЗрдХ рд╕рд╛рдл рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣реА рд╢реЙрд░реНрдЯрдХрдЯ рдлрд╛рдЗрд▓ рдЖрдгрд┐ рдЗрддрд░рд╛рдВрдЪреНрдпрд╛ рдкреНрд░рд╡реЗрд╢ рдЕрдзрд┐рдХрд╛рд░рд╛рдВрд╕рд╣ рдЦреЗрд│реВ рд╢рдХрддрд╛.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛