ПредишенСледващото

Ключови комбинация Win + L е известно, че много хора, но понякога е по-удобно да превключвате minuyu прозорец за избор на потребителя. Изпълнения на такова превключване на потребители ще бъдат обсъдени в тази статия.

Цел:

Характеристики:

Потребители, между които ще се появят на превключване, трябва първо да влезете в профила си. Той също така не е засегнат от проблема със сигурността. Предполагаме, че те напълно се доверят един на друг. И в същото време, може да ограничи достъпа на трети страни, като просто натиснете Win + L и вика смяна на потребителя диалоговия (при наличност на паролата за профила си).

Изпълнение:

Например, системата има две потребители: Иванов и Петров.

За да включите, което трябва да получите най-ID на сесията на потребителя. Ние използваме командния ред и заявката на потребителя команда (показва информация за потребителските сесии на сървъра терминал).

Как да превключвате между потребител от командния ред

Превключването се извършва tscon команда (команда, за да се свърже с една сесия за терминален сървър).

Остава само да създадете пряк път на работния плот на потребителя Петров (кликнете с десния бутон върху работния плот → Създаване на пряк път от екипа

C: \ Windows \ System32 \ tscon.exe 1 / парола: 123

където 1 - ID сесия Иванов. и 123то парола).

Как да превключвате между потребител от командния ред

По същия начин Иванов създадете пряк път на работния плот (и екип на потребителя

C: \ Windows \ System32 \ tscon.exe 2 / парола: 321

Как да превключвате между потребител от командния ред

За превключване от клавиатурата могат да бъдат настроени на комбинация от клавиши за бърз достъп (например, Ctrl + Num 0)

Средна превключване (за по-голяма яснота, без клавиш):

Преминаване от пряк път:

AutoIt скрипт:

Сценарият за пълна автоматизация на процеса на превключване на потребители userswitch.zip.
За да се изпълни или съставяне на необходимия за сваляне AutoIt.

#include #include #include $ Потребители = ObjCreate ( "Scripting.Dictionary") $ users.Add ( "Иванов", "123") $ users.Add ( "Петров", "321") Местна $ activeUserName Local $ activeUserId Local $ secondUserName Local $ secondUserId Local $ QUSER = @WindowsDir "\ Sysnative \ потребителска заявка за" Местна $ tscon = @WindowsDir "\ Sysnative \ tscon" $ навън = '' $ заявка = Run ($ QUSER, '', @SW_HIDE, $ STDOUT_CHILD) Докато 1 $ навън = StdoutRead ($ заявка) Ако @error Тогава ExitLoop Sleep (10) отправям $ навън = _Encoding_866To1251 ($ навън) $ Пр = StringSplit ($ навън, @CRLF, 1) За $ аз = 2 За да UBound ($ Пр) - 2 $ име = StringStripWS (StringMid ($ ARR [$ Ь], 1, 23), 1 + 2) $ потребителско име = StringStripWS (StringMid (($ ARR [$ Ь]), 43, 2), 1 + 2) ако ( StringMid ($ потребителско име, 1,1) == ">") Тогава $ потребителско име = StringMid ($ потребителско име, 2) $ activeUserName = $ потребителско име $ activeUserId = $ потребителско име Else $ secondUserName = $ потребителско име $ secondUserId = $ потребителско име EndIf Next Run ($ tscon "" $ secondUserId "/ Парола:" $ Users.Item (StringLower ($ secondUserName)), '', @SW_HIDE)

Свързани статии

Подкрепете проекта - споделете линка, благодаря!