Coder Taua: O a'u ma lena VNC Guy

В lenei blog E tele lava tala fa'akomepiuta ua fa'asalalauina. Ou te fiafia e toe manatua a'u mea valea tuai. Ia, o le isi tala faapena.

Na ou fiafia muamua i komepiuta, aemaise lava polokalame, pe a ma le 11 oʻu tausaga. I le amataga o le aoga maualuga eоNa ou faʻaaluina le tele o loʻu taimi avanoa e faʻaoga ai laʻu C64 ma tusia le BASIC, ona tipi ese lea o le code leaga i seleulu. Ou te le ula, seleulu.

A uma le aʻoga (e tusa ma le 16 tausaga), e masani lava ona o tamaiti Peretania i kolisi, lea latou te filifili e suʻesuʻe ni mataupu se tolu pe fa aʻo leʻi o i le iunivesite. Ona o lo'u fiafia i le pusa beige ma le lipine pu'e pu'e i le fale, na ou filifili ai o le a'oga "saienisi komepiuta" i le kolisi o le filifiliga sa'o lea.

Sa sili atu lou fiafia i le kosi nai lo le mea na ou faamoemoeina; o iina na ou muamua feiloai ai ia Pascal ma Delphi.

I taimi malolo i le va o vasega, e mafai e tamaiti aoga ona galulue i soʻo se masini e leai se totogi i totonu o le potu komepiuta. Vaai faalemafaufau: o se potu tele, ua fuafuaina mo le tusa ma le selau tagata, ma laina o laulau e tumu i masini, e pei o na o loʻo tu ai le mataʻitu i luga o le iunite faʻaoga. O lo'o hamu pea le au, o polo isumu o lo'o pisapisao i luga o laulau, e le tu mo sina sekone. O loʻo i ai se manogi uiga ese i le ea, e pei o le 50-100 o tupulaga talavou o loʻo suia i lea taimi ma lea taimi e faʻamafanafana le faitau selau o Pentium III.

E ui i tulaga lamatia o le soifua maloloina, sa ou fiafia e nofo i luga o le komepiuta pe a maua se minute avanoa.

O le pule o loʻo tiute i totonu o le potu o se tama puʻupuʻu, ogatotonu matua na filifilia mo lenei matafaioi ona o lona naunau le faamalieina e avea ma se pule leaga. Ou te manatu o lea. I luga o le tiute o se faʻamatalaga; e matua fiafia lava le tama i lana galuega. Na fa'atonuina o ia i le tausiaina o le fa'atonuga ina ia aua ne'i fa'aogaina e se tasi le komepiuta a le a'oga mo se mea e le talafeagai.

E oʻo mai i le aso, ua taʻu mai e loʻu malamalama ia te aʻu o le ponesi a le admin e faʻalagolago saʻo i le aofaʻi o tamaiti aʻoga na ia puʻeina i le lima ma ave i fafo o le potu komepiuta. Ou te mautinoa na vave totogi e lenei alii lana mokesi.

Sa nofo o ia i le tulimanu pito i tua o le potu komepiuta i se laulau tulimanu. Ma e saogalemu le faʻapea o ana suʻesuʻega fualaʻau na maua se auala e toe faʻaleleia ai ma se vaitaimi puʻupuʻu puʻupuʻu, e tele naua. E mafai ona tau mafaufau se tasi pe na ia maua moni lava le taimi e siaki uma ai. Ioe, ou te ula... pe na ou taʻua na ia manatu mamafa i ana galuega?

I lena taimi, o loʻo faʻaogaina le komepiuta komepiuta Windows 2000. E leʻi umi ae ou iloa o taimi uma lava ou te ulufale ai i totonu o le polokalama, na faʻalauiloa ai se faʻamatalaga e faʻamaonia ai le amataina o le VNC server mai le tala faʻatonu mo avanoa mamao i luga o le komepiuta. Soo se taimi lava e manaʻo ai lenei alii e sipai oe, e faʻafesoʻotaʻi saʻo i lau masini ma matamata. Sa taufaafefe, ma o lea ua ou mafaufau i ai, masalo e le tusa ai ma le tulafono.

O le tipiina o oʻu nifo ile BASIC ma le C64, ua ou tusia nei ile C ma e oʻo lava ile C++. I lena taimi, sa ou matua fiafia lava i le gagana D, lea na faasaʻo ai nisi o faaletonu o le C++, e pei ona ou vaai i ai i lena taimi.

Sa masani ona ou alu i totonu o le potu komepiuta e faitau se mea fou i le D pe taʻalo ma le Digital Mars D compiler. O nisi taimi, aʻo faʻalavelaveina aʻu mai le mafaufau i le lumanaʻi sili o D, sa ou tusia le C code e taʻavale ai isi polokalame Win32 e ala i la latou faamalama. 'au.

I aso tuai o Win32 polokalame, o le sailia o se faʻamalama faʻamalama o le auala sili lea ona faigofie e taʻavale ai isi polokalame. E manino lava, o polokalame GUI uma i luga o Windows o loʻo i ai se faamalama, tusa lava pe le faʻaalia i luga o le lau. E ala i le tusiaina o se polokalame e toe aumai ai se au i se isi faiga (o se sootaga i ai), e mafai ona e auina atu i ai savali. O lenei mea na faʻatagaina mo nisi o gaioiga faʻavae e pei o le nanaina / faʻaalia se faamalama o le polokalame, faʻapea foʻi ma mea manaia tele e pei o le faʻamalosia o se faʻagasologa e utaina se DLL faʻamaonia i totonu o lona avanoa manatua ma amata ona faʻatinoina le code. Ina ua uma le tui DLL, na amata le fiafia.

I le masina muamua ma le afa, o lenei leoleo leoleo e leʻi faʻalavelave tele ia te aʻu; e fesoʻotaʻi i le VNC server i luga o laʻu masini na o le tasi pe faalua. Ae o se tasi o sauniga faapitoa atonu na faaosofia ai lona fiafia. Sa ou tusia nisi C code e nana ai faamalama Minesweeper (e aunoa ma le tapunia) ina ia faafaigofie ai ona taaalo i le vasega, ina ua ou matauina ua liua le ata VNC paʻepaʻe i le fata faiga. O lona uiga o lea ua ia matamata mai ia te au.

Sa faaauau pea ona ou coding e pei ona masani ai, ma taumafai e le amanaiaina o ia. I le taimi nei, na amata ona faʻagesegese le masini, taumafai e tuʻuina atu le maualuga o le fua faʻavaa i se tasi o siaki e le mafaitaulia i le tulimanu o le potu. Na toetoe a le toe tali mai Windows, ina ua uma loʻu onosaʻi, na ou saini i fafo ma maeʻa mo le aso.

I asiasiga mulimuli ane i le potu komepiuta, sa matuā naunau Colombo i mea sa ou faia toetoe lava o taimi uma. Ina ua uma le taimi lona fa, sa ou filifili ai: E tatau ona ou faia se mea e uiga i lenei mea.

Ou te taʻutino atu e mafai e se tagata faʻatatau, faʻapitoa ona laga saʻo lenei mataupu ia te ia poʻo lona pule. Ae ui i lea, sa ou gauai atu i taimi uma i faaosoosoga ma sa vave ona ou talanoa ia te au lava ia e faaaoga se fuafuaga e matua ese lava.

- E le mafai ona e faia se mea e aunoa ma lenei VNC server! — Na ou fai ifo ma le toʻa ma le maumauaʻi iā te aʻu i le tele o taimi.

Sa tatau ona fasiotia VNC.

Na amata ona ou alu i totonu o le potu komepiuta ma ni vaega toatele o tamaiti aoga ma saofafai mamao ese mai le tulimanu ma siaki pe a mafai. Na galue lenei mea mo sina taimi ma maua ai sina taimi e suʻe ai manatu.

O la'u taumafaiga muamua, ou te manatu e te ioeina, sa fai si vaivai. O le kilikiina taumatau i luga o le VNC icon i le system tray, na ou vaʻaia ai se lisi ma mataitusi faʻapitoa EXIT. Ae paga lea, o mataitusi na tusia i le lanu efuefu tusitusiga. Ua fa'agata e le pule le mea fa'aitu o le "Exit" e ala i le Group Policy Editor. Sa ou taumafai e tape le faagasologa mai le Task Manager, ae o le mea moni sa le vaaia ia te aʻu ona o loʻo tamoʻe i lalo o se isi, sili atu ona faʻamaonia tala. E lei manuia.

O le VNC server e tamoe i luga o le TCP port 5900, na ou manatua. O la'u fuafuaga na sosoo ai o le lafo atu lea o pepa leaga i lenei uafu ina ia mafai ona pa'u.

Na ou faʻaaluina le itiiti ifo i ni nai aso e faʻataʻitaʻi ai le faʻasalalauga, auina atu ituaiga eseese o mea leaga faʻatulagaina i le taulaga 5900 ma faʻamoemoe e malepe. I le faaiuga, sa le aoga foi lena mea.

Ua amata ona ou mafaufau o le a le mafai ona ou aveesea lenei mea, ina ua faafuasei ona oo mai ia te au: e tatau ona i ai se faamalama iina! E tatau ona tatou faʻaalia. Masalo o le ai ai se faʻamau manaia "Mute" e mafai ona ou faʻaogaina lelei!

Na ou taufetuli i laʻu numera C ua toetoe a atoatoa e suʻe ai le au i le faamalama autu o se isi gaioiga - ma e mautinoa lava, na maua VNC. Sa ou lagonaina le musuia ina ua taina ou tamatamailima WM_SHOWWINDOW. Taumafai e mate le mea na ou vaʻaia i oʻu luma?

E leai se mea!

O lea ua ou fia iloa... sa i ai se faamalama, ae sa le amanaiaina au savali. Na ou faaluaina le siakiina o laʻu code ina ia mautinoa e aoga. Fa'ata'ita'i i le tele o isi fa'agasologa ma sa aoga tele. Na ou taumafai e lafo isi feʻau i le faamalama VNC, ae leai lava se mea.

Ona toe oo mai lea ia te au!

Faafetai i le mafiafia tele le tusi Charles Petzold Sa ou suʻesuʻeina ma le totoa pe faʻapefea ona galue Win32 i totonu o le polokalama. O talosaga uma Win32 e iai se faamalama faʻapea foʻi ma se "feʻau feʻau". O fe'au na fa'aosoina e le fa'aogaina o tagata, fa'apea fo'i ma fe'au na lafo e Windows lava ia, e taunu'u i se laina, ma o le talosaga lava ia e filifili pe fa'afefea ona fa'agasolo.

E le manaia tele ia te ia lava. Ae ina ua ou iloa o se laina tele o feʻau e leʻi faʻaaogaina na galue o se faʻatonuga mo Window Process Manager e faʻalavelave i se gaioiga tautau, na amata ona ou afu le serotonin mama.

E aunoa ma le faʻaumatia o se sekone, na ou toe foʻi i laʻu code C, sauni e lafo se isi feʻau i le faamalama autu VNC WM_SHOWWINDOW. I se taamilosaga. Faavavau. O lea, tele fe'au. WM_SHOWWINDOW, lea ua ou iloa nei o le a taumafai le VNC e le amanaiaina atoa ... i lona tulaga lamatia.

Sa ou tuufaatasia ma tamo'e le 4KB o le tulafono sili ona fiafia i le saolotoga o lo'u olaga. Ina ua mavae le tolu sekone, na lipotia mai e Windows o le faagasologa vncserver.ехе e le tali mai, ma faia se ofo e le mafai ona ou teena:

E te mana'o e fa'auma lenei fa'agasologa?

IOE!

Se'i ou ta'utino atu o le aso na totoe sa ou matua fiafia lava ia te au lava ia.

Ina ua mavae ni nai itula na faaalu i le faamamāina o loʻu malosi fou, sa ou filifili pe faapefea ona ou faaaogāina. Sa faigofie tele le na o le tapeina o le sauniga i ona luma. Sa ou maua se manatu sili atu - ia mou atoa.

ina ua mavae papatisoga i le afi ma polokalame socket Na ou iloaina e mafai ona ou tusia se code e faia ai ni mea se lua. O le a muamua ona nofoia le TCP port 5900, lea na nofoia muamua e le VNC server process. Ona faia lea o se fesoʻotaʻiga TCP fou i le VNC server o le masini faʻapitoa. O le code o le a na o le suiina o faʻamatalaga uma i le va o sockets e lua, ma o le a manatu Columbo o loʻo ia fesoʻotaʻi mai ia te aʻu, ae o le mea moni o le a ia faʻafesoʻotaʻi i se VNC server eseʻese.

O la'u tulafono o le a avea o se alalaupapa faalilolilo i le va o a'u ma se isi agaga leaga o la'u filifiliga. Sa matagofie.

Na amata loa ona ou tusia laʻu alalaupapa VNC pepelo. Sa fesootai mai Columbo ia te au i le tele o taimi, ae sa faaauau pea ona ou polokalama i ona luma. Na ou oʻo i le faaiuga e leʻi iloa e ia le mea o loʻo ou faia, e ui lava na ou tusia mea manino e pei o numera o le taulaga ma faʻamatalaga e pei o // Прощай, жуткий шпион VNC.

Ina ua mavae ni nai aso ua le mafai ona ou galue sa'o le code. O le mea e sili atu ona leaga, sa ou galue toetoe lava faʻaauau pea ma le ata uliuli VNC i totonu o le fata. A'o feso'ota'i, sa le mafai ona ou tatalaina le uafu e su'e ai la'u code.

Ana ou iloa i lena taimi netcat!

I le iʻuga, na mou atu oʻu neura, ae o aʻu o se tama e 17 tausaga le onosai. I le matamata i le VNC server icon paʻepaʻe ua toe uliuli, na ou fefe, tatala le uluai code na faʻatumu ai le laina savali, ma tamoe i luma o ona mata. Sa ou faatali foi mo ni nai sekone ae lei kiliki End Process, ia mautinoa na ia vaai i ai.

Afai o le oomiina o lena faamau e le'i faatalitonuina atoatoa ai a'u e aoga, ona oso mai lea o ia mai tua o lona olo o siaki e vave alu atu ia te a'u ma taitai ese a'u mai le potu e mautinoa lava na ia faia.

O le iʻuga, na faʻasaina aʻu mai le upega tafailagi mo le lua vaiaso. O se faasalaga talafeagai, sa ou mafaufau ai. Ina ua maeʻa le tolu vaiaso, na mou atu le VNC server mai faʻamaufaʻailoga ma e leʻi faʻaalia i se isi mea. Ou te leʻi iloa lava pe na i ai se sao o laʻu mea na tupu i lenei mea pe leai, ae na matua faʻaleagaina ai laʻu fuafuaga e faʻatamaoaigaina le tamaoaiga e ala i le faʻatau atu o laʻu fana VNC i tamaiti faʻavaivai i fale komepiuta kolisi i le salafa o le atunuʻu.

puna: www.habr.com

Faaopoopo i ai se faamatalaga