Hogyan lehet átváltani egy windowsos felhasználót a parancssorból?

A Win + L billentyűkombináció sokak számára ismert, de néha kényelmesebb a felhasználó által választott dialógus váltására. Az ilyen felhasználói kapcsolatok megvalósításának lehetőségei ebben a cikkben kerülnek ismertetésre.

Cél:

Jellemzők:

Azok a felhasználók, akik között a kapcsolódás történik, először be kell jelentkezniük a számlájukba. Emellett a biztonság kérdése sem foglalkozik. Feltételezzük, hogy teljesen megbízik egymásban. Egyidejűleg korlátozhatják harmadik felek hozzáférését is, egyszerűen a Win + L megnyomásával és a felhasználóváltási párbeszédablak felhívásával (feltéve, hogy a jelszavak elérhetők a fiókjukon).

Megvalósítás:

Például a rendszerben két felhasználó van: Ivanov és Petrov.

A váltáshoz ismernie kell a felhasználói munkamenetek azonosítóját. Használjuk a parancssort és a lekérdezés felhasználói parancsot (a terminálszerveren lévő felhasználói munkamenetekkel kapcsolatos információkat jelenítjük meg).

Hogyan lehet átváltani egy windowsos felhasználót a parancssorból?

A kapcsolást a tscon parancs (a kapcsolódás a terminálhoz a terminálkiszolgálóhoz) parancs végzi.

Csak egy parancsikon létrehozása marad a Petrov felhasználó asztalán (jobb egérgombbal az asztalon → Parancsikon létrehozása paranccsal

C: \ Windows \ System32 \ tscon.exe 1 / jelszó: 123

ahol 1 az Ivanov-ülés azonosítója. és 123 jelszava).

Hogyan lehet átváltani egy windowsos felhasználót a parancssorból?

Hasonlóképpen hozzon létre egy parancsikont az Ivanov felhasználó asztalán (a parancs segítségével

C: \ Windows \ System32 \ tscon.exe 2 / jelszó: 321

Hogyan lehet átváltani egy windowsos felhasználót a parancssorból?

A billentyűzetről való átváltáshoz beállíthat egy parancsikont egy gyorsbillentyűre (például Ctrl + Num 0)

Normál kapcsolás (a gyorsbillentyűk nélkül):

Váltás parancsikonról:

Kocsi-script:

A parancsfájl a felhasználóváltási folyamat teljes automatizálására a userswitch.zip.
Az elvégzéshez vagy fordításhoz le kell töltenie az AutoIt-et.

#include #include #include $ Users = ObjCreate ( "Scripting.Dictionary") $ users.Add ( "Ivanov", "123") $ users.Add ( "Petrov", "321") Helyi $ activeUserName Helyi $ activeUserId Helyi $ secondUserName Helyi $ secondUserId Helyi $ quser = @WindowsDir "\ sysnative \ query user" Helyi $ tscon = @WindowsDir "\ Sysnative \ tscon" $ out = '$ query = Run ($ QUSER, '', @SW_HIDE, $ STDOUT_CHILD) Miközben 1 $ out = StdoutRead ($ query) Ha @error Ezután ExitLoop Sleep (10) irányít $ out = _Encoding_866To1251 ($ out) $ tomb = StringSplit ($ ki, @CRLF, 1) $ i = 2 To UBound ($ arr) - 2 $ username = StringStripWS (StringMid ($ arr [$ i], 1, 23), 1 + 2) $ userid = StringStripWS (StringMid (($ arr [$ i]), 43, 2), 1 + 2), ha ( StringMid ($ username, 1,1) == ">") Ezután $ username = StringMid ($ username, 2) $ activeUserName = $ username $ activeUserId = $ userid Else $ secondUserName = $ username $ secondUserId = $ userid EndIf Következő futtatás ($ tscon „” $ secondUserId "/ jelszó:" $ users.Item (StringLower ($ secondUserName)), '', @SW_HIDE)

Kapcsolódó cikkek