Idabi leCoders: Mna vs. Loo VNC Guy

Π’ le bhlog Iintsomi ezimbalwa zomdwelisi zipapashiwe. Ndiyathanda ukukhumbula izinto zam zakudala zobudenge. Ewe, nali elinye ibali elinjalo.

Ndaqala ukuba nomdla kwiikhompyutha, ngakumbi iinkqubo, xa ndandimalunga neminyaka eyi-11 ubudala. Ekuqaleni kwisikolo samabanga aphakamileyo bΠΎNdichithe ixesha lam elininzi lokukhulula ndikhenkceza nge-C64 yam kwaye ndibhala i-BASIC, emva koko ndisika ikhowudi embi ngesikere. Andidlali, sikere.

Ukuphuma kwesikolo (malunga ne-16 leminyaka ubudala), abantwana baseBritani badla ngokuya ekholejini, apho bakhetha ukufunda izifundo ezithathu okanye ezine ngaphambi kokuba baye eyunivesithi. Ngenxa yokuthanda kwam ibhokisi ye-beige kunye ne-tape rekhoda ekhaya, ndagqiba ekubeni ukufunda "isayensi yekhompyutheni" ekholejini yayilukhetho olufanelekileyo.

Ndasonwabela isifundo ngaphezu kokuba bendilindele; apho ndadibana noPascal noDelphi okokuqala.

Ngexesha lekhefu phakathi kweeklasi, abafundi banokusebenza kuwo nawuphi na umatshini wasimahla okwigumbi lekhompyuter. Khawufan' ucinge: igumbi elikhulu, elenzelwe abantu abamalunga nekhulu, elinemiqolo yeetafile ezizaliswe ngoomatshini, njengalezo apho imonitha imi kwiyunithi yenkqubo. Abalandeli bahlala bencwina, iibhola zempuku zibhuza etafileni, zingayeki umzuzwana. Kukho iphunga elingaqhelekanga emoyeni, ngokungathi i-50-100 ye-hormonal ulutsha lutshintsha rhoqo ukupholisa amakhulu e-Pentium III chips.

Ngaphandle kweengozi zempilo, ndandithanda ukuhlala ekhompyutheni xa ndinomzuzu okhululekileyo.

Umlawuli owayesebenza kwelo gumbi yayiyindoda emfutshane, eneminyaka ephakathi, eyayikhethelwe le ndima ngenxa yomnqweno wayo onganelisekiyo wokuba nguzwilakhe ongendawo. Ndicinga ukuba kunjalo. Emsebenzini kukujongelwa phantsi; lo mfo wayewuthanda ngokwenene umsebenzi wakhe. Wayenikwe umsebenzi wokugcina ucwangco ukuze kungabikho mntu usebenzisa ikhompyutha yesikolo nantoni na engafanelekanga.

Ukuza kuthi ga namhlanje, intuition yam indixelela ukuba ibhonasi yomlawuli ixhomekeke ngokuthe ngqo kwinani labafundi ababambe ngesandla kwaye baphuma kwigumbi lekhompyuter. Ndiqinisekile ukuba lo mfo uhlawule imali-mboleko yakhe kwangoko.

Wahlala kwikona ekude yegumbi lekhompyutha kwikona yetafile. Kwaye kwakukhuselekile ukucinga ukuba abahloli bakhe bokuchuma bafumene indlela yokuzala ngexesha elifutshane ngokumangalisayo lokumitha, bebaninzi kakhulu. Umntu unokuzibuza ukuba ngaba ngokwenene unalo na ixesha lokuzilandela zonke. Ewe ndiyadlala...ndanditsho ukuba uwuthathele phezulu umsebenzi wakhe?

Ngelo xesha, inethiwekhi yekhompyutheni yayisebenza Windows 2000. Ngokukhawuleza ndafumanisa ukuba rhoqo xa ndingena kwisistim, kwaqaliswa iskripthi esikhankanyiweyo ukuqala iseva yeVNC ukusuka kwiakhawunti yomlawuli ukufikelela kude kwidesktop. Nanini na lo mfo wayefuna ukukuhlola, wayeza kudibanisa ngqo kumatshini wakho kunye nokubukela. Yayisoyikeka, kwaye ngoku xa ndicinga ngayo, mhlawumbi yayingekho mthethweni.

Emva kokusika amazinyo am kwi-BASIC kunye ne-C64, ngoku ndibhale kwi-C kunye ne-C ++ encinane. Ngelo xesha, ndandisenomdla kakhulu kulwimi lwe-D, olulungisa ezinye zeentsilelo zeC ++, njengoko ndabona ngoko.

Ndandidla ngokungena kwigumbi lekhompyutha ukuze ndifunde into entsha kwi-D okanye ndidlale nomqokeleli weDigital Mars D. Ngamanye amaxesha, ngelixa ndiphazamisekile ekucingeni ngekamva elikhulu le-D, ndabhala ikhowudi ye-C ukuba ndiqhekeze ezinye iinkqubo zeWin32 ngefestile yazo. iziphatho.

Ngeentsuku zakudala zeWin32 inkqubo, ukufumana isiphatho sefestile yayiyeyona ndlela ilula yokukhangela ezinye iinkqubo. Ngokucacileyo, zonke iinkqubo ze-GUI kwiWindows zinefestile, nokuba ayiveli kwiscreen. Ngokubhala inkqubo yokubuyisela isiphatho kwenye inkqubo (ngokusisiseko ikhonkco kuyo), ungathumela imiyalezo kuyo. Oku kuvumele imisebenzi ethile esisiseko njengokufihla/ukubonisa iwindow yenkqubo, kunye nezinto ezipholileyo ngokwenene njengokunyanzela inkqubo ukulayisha i-DLL engafanelekanga kwindawo yayo yememori kwaye iqalise ukwenza ikhowudi. Emva kwenaliti ye-DLL, ulonwabo lwaqala.

Kwinyanga yokuqala enesiqingatha, lo mcuphi akazange andikhathaze kakhulu; iqhagamshele kwiseva yeVNC kumatshini wam kube kanye okanye kabini. Kodwa ucwangciso oluthile lusenokuba lwavusa umdla wakhe. Ndandibhala ikhowudi ye-C ukufihla iifestile ze-Minesweeper (ngaphandle kokuzivala) ukwenza kube lula ukudlala eklasini, xa ndabona ukuba i-icon emhlophe ye-VNC kwi-tray yenkqubo yayijike yaba mnyama. Lo nto yayithetha ukuba wayendijongile ngoku.

Ndaqhubeka ne coding njengesiqhelo, ndizama ukungamhoyi. Ngeli xesha, umatshini waqala ukucotha, uzama ukuhambisa ireyithi ephezulu yesakhelo kwenye yeemonitha ezingenakubalwa kwikona yegumbi. I Windows yaphantse yayeka ukusabela, xa umonde wam uphela, ndaphuma ndagqiba usuku.

Kutyelelo olulandelayo kwigumbi lekhompyutha, uColombo waba nomdla wokwenene koko ndandikwenza phantse ngalo lonke ixesha. Emva kwesihlandlo sesine, ndagqiba kwelokuba: Kufuneka ndenze okuthile ngale nto.

Ndiyavuma ukuba umntu onengqiqo, onengqondo wayenokuwuphakamisa lo mbandela kuye okanye kumphathi wakhe. Nangona kunjalo, ndandisoloko ndinikezela kwisilingo kwaye ngokukhawuleza ndazixelela ukuba ndisebenzise iqhinga elahluke ngokupheleleyo.

-Awunakwenza nantoni na ngaphandle kwale VNC iseva! β€” Ndazixelela ngokuzolileyo nangokuqinisekileyo izihlandlo eziliqela.

Kwakuyimfuneko ukubulala iVNC.

Ndaqala ukuya kwigumbi lekhompyutha kunye namaqela amakhulu abafundi kwaye ndihlala kude nekona kunye neemonitha kangangoko. Oku kusebenze okwethutyana kwaye kwandinika ixesha lokuvavanya izimvo.

Umzamo wam wokuqala, ndicinga ukuba uya kuvuma, wawubuthathaka kakhulu. Ukucofa ekunene kwi icon yeVNC kwitreyi yesistim, ndabona imenyu enoonobumba bomlingo EXIT. Ngelishwa, iileta zazibhalwe ngombhalo ongwevu. Umlawuli uye wavala into yemenyu ethi "Phuma" ngoMhleli wePolisi yeQela. Ndazama ukubulala inkqubo evela kuMphathi woMsebenzi, kodwa ngokuqinisekileyo yayingabonakali kum kuba yayisebenza phantsi kweakhawunti eyahlukileyo, enelungelo elingakumbi. Ayizange isebenze.

Umncedisi weVNC usebenza kwi-TCP port 5900, ndakhumbula. Isicwangciso sam esilandelayo yayikukuthumela iipakethi ezonakeleyo kweli zibuko ukuze ndilithambise.

Ndichithe ubuncinci beentsuku ezimbalwa ndincokola neprotocol, ndithumela iindlela ezahlukeneyo zokuziphatha kakuhle kwi-port 5900 kwaye ndinethemba lokuba iya kwaphuka. Ekugqibeleni, nayo ayizange isebenze.

Ndandisele ndiqala ukucinga ukuba andinakukwazi ukulahla le nto, xa ngokukhawuleza kwafika kum: kufuneka kubekho ifestile apho! Kufuneka siyibonise. Mhlawumbi izakuba neqhosha elimnandi elithi β€œThulisa” elimnandi endinokulisebenzisa kakuhle!

Ndibalekise ikhowudi yam ngoku phantse egqibeleleyo ye-C ukufumana isiphatho kwifestile ephambili yenye inkqubo- kwaye ngokuqinisekileyo, i-VNC yafunyanwa. Ndaziva ndikhuthazwa xa iminwe yam ichwethezwa WM_SHOWWINDOW. Zama ukuqikelela ukuba ndibone ntoni phambi kwam?

Akukho nto!

Ngoku bendinomdla...ibinefestile, kodwa ibingayihoyi imiyalezo yam. Ndijonge kabini ikhowudi yam ukuze ndiqiniseke ukuba iyasebenza. Ivavanye kwezinye iinkqubo ezininzi kwaye yasebenza kakuhle. Ndizamile ukuthumela eminye imiyalezo kwifestile yeVNC, kwaye akukho nto.

Kwaphinda kwathi qatha kum!

Enkosi kakhulu incwadi UCharles Petzold Ndifunde ngononophelo ukuba iinkqubo zeWin32 zisebenza njani ngaphakathi kwinkqubo. Yonke inkqubo yeWin32 inefestile kunye "nomgca womyalezo". Imiyalezo ebangelwa ukusebenzisana komsebenzisi, kunye nemiyalezo ethunyelwe yiWindows ngokwayo, ifika emgceni, kwaye isicelo ngokwaso sithatha isigqibo sokuba singayiqhuba njani.

Ayinamdla kakhulu ngokwayo. Kodwa ndithe ndakuqonda ukuba umgca womyalezo omkhulu owaneleyo ongalungiswanga usebenze njenge-heuristic yoMphathi weNkqubo yeWindows ukuba angenelele kwinkqubo ejingayo, ndaqala ukubila i-serotonin esulungekileyo.

Ngaphandle kokuchitha umzuzwana, ndabuyela kwikhowudi yam ye-C, ndilungiselela ukuthumela omnye umyalezo kwifestile enkulu yeVNC WM_SHOWWINDOW. Kumjikelo. Ngonaphakade. Ngoko, mininzi imiyalezo. WM_SHOWWINDOW, endiyazi ngoku ukuba i-VNC iya kuzama ukuyihoya ngokupheleleyo ... ngengozi yayo.

Ndiqulunqe kwaye ndabaleka i-4KB yeyona khowudi yokuthanda inkululeko ebomini bam. Emva kwemizuzwana emithathu, iWindows yabika ukuba inkqubo vncserver.Π΅Ρ…Π΅ akaphenduli, ndenze isithembiso endingenako ukwala:

Ngaba uyafuna ukugqiba le nkqubo?

ESIHOGWENI EWE!

Mandivume ukuba imini yonke ndandonwabe ngendlela enganyamezelekiyo.

Emva kweeyure ezimbalwa ndisetyisa amandla am amatsha, ndagqiba ekubeni ndiza kuwasebenzisa njani. Kwakulula kakhulu ukubulala iseshoni kanye phambi kwakhe. Ndandinombono ongcono-ukunyamalala ngokupheleleyo.

Emva koko ubhaptizo lomlilo kunye neprogram yesocket Ndabona ukuba ndingabhala ikhowudi eya kwenza izinto ezimbini. Iya kuqala ithathe i-TCP port 5900 esanda kukhululwa, ebihlala ngaphambili yinkqubo yeseva yeVNC engenalwazi. Emva koko iya kudala uxhulumaniso olutsha lweTCP kwiseva yeVNC yomatshini ochaziweyo. Ikhowudi iya kuba ngummeleli nje yonke idatha phakathi kweesokethi ezimbini, kwaye u-Columbo uya kucinga ukuba uqhagamshela kum, xa eneneni uya kudibanisa kwi-server ye-VNC eyahlukileyo ngokupheleleyo.

Ikhowudi yam iya kusebenza njengebhulorho eyimfihlo phakathi kwam kunye nomnye umphefumlo ohluphekileyo endiwukhethileyo. Bekumnandi.

Ngoko nangoko ndaqalisa ukubhala ibhulorho yam ye-VNC yobuxoki. U-Columbo uxhumeke kum amaxesha amaninzi, kodwa ndaqhubeka neprogram phambi kwakhe. Ndafikelela kwisigqibo sokuba wayengayazi into endiyenzayo, nangona ndibhala izinto ezicacileyo ezifana neenombolo ze-port kunye nezimvo ezifana // ΠŸΡ€ΠΎΡ‰Π°ΠΉ, ΠΆΡƒΡ‚ΠΊΠΈΠΉ шпион VNC.

Emva kweentsuku ezimbalwa andikwazanga ukufumana ikhowudi ukuba isebenze ngokuchanekileyo. Ukwenza izinto zibe mbi ngakumbi, bendisebenza phantse ngokuqhubekayo kunye nomfanekiso omnyama weVNC kwitreyi yenkqubo. Ngelixa ibiqhagamshelwe, andikwazanga ukukhulula izibuko ukuvavanya ikhowudi yam.

Ukuba bendisazi ngoko netcat!

Ekugqibeleni, ndaphelelwa ngumonde; ngapha koko, ndandingumfana oneminyaka eli-17 ubudala ongenamonde. Ukubukela i-icon yeseva emhlophe yeVNC ijike ibe mnyama kwakhona, ndothuka, ndavula ikhowudi yoqobo ezele umgca womyalezo, ndayiqhuba phambi kwamehlo akhe. Ndide ndalinda imizuzwana embalwa ngaphambi kokuba ndicofe End Process, ukuze nje aqiniseke ukuba uyayibona.

Ukuba ukucofa eli qhosha akuzange kundiqinisekise ngokupheleleyo ukuba kufanelekile, emva koko watsiba emva kwenqaba yakhe yabahloli ukuza kum ngokukhawuleza kwaye andikhuphele ngaphandle kwegumbi ngokuqinisekileyo.

Ngenxa yoko, ndavalwa kwinethiwekhi kangangeeveki ezimbini. Ndacinga ukuba isohlwayo esifanelekileyo. Emva kweeveki ezintathu, iseva ye-VNC yanyamalala kwizikripthi ze-boot kwaye ayizange ibonakale kwenye indawo. Andizange ndiyazi ukuba isiganeko sam sidlale nayiphi na indima kule nto okanye hayi, kodwa yonakalise ngokupheleleyo isicwangciso sam sobutyebi ngokuthengisa umpu wam weVNC kubafundi abadandathekileyo kwiiholo zekhompyuter kwilizwe lonke.

umthombo: www.habr.com

Yongeza izimvo