Vuto panthawi yokhala kwaokhalokha lidakhala motere: ndikofunikira kuchepetsa kuchuluka kwa maulendo oyendera maofesi ndi akatswiri omwe amathandizira ndikufunsira mapulogalamu a pulogalamuyo, ndipo kunena zoona, ogwiritsa ntchito nthawi zambiri amagwiritsa ntchito molakwika thandizo la akatswiri osafuna kufufuza. nkhani yokha, amati "abwera - athandiza - azichita, koma ndidzasuta / kumwa khofi, ndi zina zotero." Kufunsira pa foni mukagawana seva ndikothandiza kwambiri ngati mukuwona chophimba chakutali.
Pambuyo pa "kupangidwa" kwa njinga yathu, chidziwitso chanzeru pamutu wa nkhaniyi chinatulukira:
Zonse zomwe zili pansipa ndizomwe zimapangidwira iwo omwe amalekerera kupotoza kwachilendo bwino kupeza zotsatira zomwe mukufuna, kupanga njira zosafunikira.
Kuti "musakoke mphaka ndi mchira", ndiyamba ndi yomaliza: njinga imagwira ntchito kwa ogwiritsa ntchito wamba.
I. Console ndi mthunzi RDP.
Popeza ntchito ndi ufulu woyang'anira wa Server Manager console -> QuickSessionCollection -> podina gawo la wogwiritsa ntchito chidwi, ndikusankha Shadow kuchokera pazosankha kwa ogwira ntchito kulangiza kugwiritsa ntchito pulogalamuyo, sichosankha, njira ina "yamatabwa" inkaganiziridwa, ndiyo:
1. Pezani ID ya RDP ya gawoli:
query user | findstr Administrator
kapena:
qwinsta | findstr Administrator
Komanso "| | findstr Administrator"Zinali zophweka mutadziwa zomwe kwenikweni woyang'anira muyenera, kapena gwiritsani ntchito gawo loyamba kuti muwone aliyense atalowa mu seva.
2. Lumikizani ku gawoli, malinga ngati zili mu domain ndondomeko zamagulu Njira ya "Khazikitsani malamulo akutali pamagawo a ogwiritsa ntchito a Remote Desktop Services" njira yasankhidwa ndi "Monitor session with user permit" njira yosankhidwa (
mstsc /shadow:127
Chonde dziwani kuti mndandandawo ungokhala ndi zolembera za ogwiritsa ntchito.
Ndikubwerezanso kuti popanda ufulu wa admin mupeza zotsatirazi:
Koma pakuwongolera koyambirira kwa pulogalamu yomwe idzakambidwe, ndidagwiritsa ntchito akaunti yokhala ndi ufulu woyang'anira.
II. Pulogalamu
Chifukwa chake mawu avuto: kupanga mawonekedwe osavuta ojambulira kuti alumikizane ndi chithunzi cha wogwiritsa ntchito ndi chilolezo chake, kutumiza uthenga kwa wogwiritsa ntchito. Malo opangira mapulogalamu omwe amasankhidwa ndi Lazaro.
1. Timapeza mndandanda wazinthu zonse za ogwiritsa ntchito "login" - "dzina lonse" kuchokera kwa woyang'anira, kapena kachiwiri kudzera pa console:
wmic useraccount get Name,FullName
palibe amene aletsa ngakhale izi:
wmic useraccount get Name,FullName > c:testusername.txt
Ndidzanena nthawi yomweyo kuti anali Lazaro yemwe anali ndi vuto pakukonza fayiloyi, popeza mwachisawawa kabisidwe kake ndi UCS-2, kotero ndidangosintha pamanja kukhala UTF-8 wamba. Pali ma tabo ambiri pamafayilo, kapena malo ambiri, omwe adasankhidwa kuti asinthe mwadongosolo; posachedwa vuto la encoding lidzathetsedwa, ndipo fayiloyo idzasinthidwa mwadongosolo.
Chifukwa chake, lingaliro ndikukhala ndi chikwatu chopezeka kwa ogwiritsa ntchito pulogalamuyi, mwachitsanzo c: test, momwe mudzakhala mafayilo a 2: woyamba ndi dzina lolowera ndi dzina lathunthu, lachiwiri ndi id_rdp ndi kulowa kwa ogwiritsa ntchito. Kenako, timakonza izi momwe tingathere :).
Pakadali pano, kuti tigwirizane ndi mndandanda wa magawo, timasamutsa izi (lolowera ndi dzina lonse) zomwe zili mugulu:
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;
Ndikupepesa chifukwa cha "code code", mfundo zotsatirazi zidzakhala zachidule.
2. Pogwiritsa ntchito njira yomweyi kuchokera m'ndime yapitayi, tinawerenga zotsatira za ndondomeko ya mndandanda mu chinthu cha StringGrid, pamene ine ndipereka chidutswa cha code "chofunika":
2.1 Timalandila mndandanda wapano wa magawo a RDP mufayilo:
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 Sinthani fayilo (mizere yofunikira yokha ndiyomwe ikuwonetsedwa):
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. Lumikizani mwachindunji podina pamzere wokhala ndi wogwiritsa ntchito ndi nambala yake ya gawo:
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. Zokongoletsa zina zingapo zapangidwa, monga kusanja podina batani la wailesi, ndi mauthenga kwa wogwiritsa ntchito kapena ogwiritsa ntchito onse.
β Khodi yathunthu imatha kuwoneka
III. Kugwiritsa ntchito AdminLink - zomwe ndidawona:
AdminLink imapanga njira yachidule yomwe imatchula malo omwe amagwiritsidwa ntchito admilaunch.exe, ndi kope laumwini lazomwe mungagwiritse ntchito poyambitsa AdmiRun.Exe yomwe ili mufoda ya wogwiritsa ntchito, mwachitsanzo Vasya, mtundu C: UsersvasyaWINDOWS. Nthawi zambiri, sikuti zonse ndizoyipa kwambiri: mutha kusewera ndi mwayi wopeza fayilo yachidule ndi ena kuti muchotse chikumbumtima chanu cha admin.
Source: www.habr.com