- Shims in Windows Waa lakabyo dhexdhexaad ah oo wax ka beddela wicitaannada API, u oggolaanaya codsiyadii hore inay si sax ah ugu shaqeeyaan kuwa cusub. nidaamyada hawlgalka.
- Microsoft waxay Shims ku isticmaashaa Qalabka Waafaqsanaanta Codsiga (ACT) si ay u ekaato bey'ada dhaxalka ah oo ay u xalliso arrimaha ku habboonaanta iyada oo aan wax laga beddelin software-kii asalka ahaa.
- En barnaamijkaShims waxaa sidoo kale lagu codsadaa tijaabinta cutubka iyadoo la adeegsanayo aaladaha sida Microsoft Fakes, habka dhex galka wicitaanada si loo xaqiijiyo natiijooyin joogto ah.
- Inkasta oo ay faa'iido u leedahay iswaafajinta, Shims waxaa looga faa'iidaysan karaa ujeeddooyin xaasidnimo ah, iyada oo u oggolaanaysa cirbadaha DLL ama sii kordhinta mudnaanta qarsoon haddii aan si habboon loo maamulin.
Haddii aad waligaa isku dayday inaad ku socodsiiso arji duug ah noocii dhawaa ee Windows, waxa ay u badan tahay inaad la kulantay arrimo ku habboon. Isticmaalayaal badan ma yaqaaniin tan, laakiin ka dambeeya xalalka sixirka ee Windows ay bixiso si ay u helaan barnaamijyo duug ah oo shaqeynaya, waxaa jira wax loogu yeero ShimsIn kasta oo ay u ekaan karto ereyo farsamo, canaasiirtan yar-yar waxay door weyn ku leeyihiin nidaamka deegaanka ee waafaqsanaanta Microsoft.
Qodobkaan waxaan ku sharixi doonaa Waa maxay Shims gudaha Daaqadaha?, sida loo isticmaalo, xaaladaha kala duwan ee ay ku yimaadaan ciyaarta-labadaba si sharci ah iyo si xaasidnimo ah-iyo muhiimada ay u leeyihiin horumarka, tijaabinta, iyo deegaanka amniga IT-ga. Haddii aad xiisaynayso shaqada qoto-dheer ee Windows ama aad la shaqeyso codsiyada dhaxalka ah, maqaalkan adigaa leh.
Waa maxay Shim cilmiga kumbuyuutarka?
Barnaamijyada, a Shim Waa lakabka koodka ka soo dhex gala wicitaanada API-ga si ay u bedesho dhaqankeeda iyada oo aan la beddelin koodka asalka ah ee codsiga ama API-ga. Farsamadan waxaa caadi ahaan loo adeegsadaa si loo hubiyo in ay iswaafaqayaan noocyada software-ka ama in lagu beddelo shaqeynta si ku meel gaar ah oo la xakameeyey.
Shims way joojin kartaa, wax ka beddeli kartaa ama hagaajin kartaa wicitaankaTusaale ahaan, haddii codsigu filo shaqo aan hadda ka jirin nooc cusub oo nidaamka qalliinka, Shim waxa uu qabsan karaa wacitaankaas oo u wareejin karaa hawl kale oo la jaan qaadi karta. Doodaha sidoo kale waa la bedeli karaa, ama xitaa jawaabta waa la maleli karaa.
Fikradan ayaa si weyn loogu isticmaalay meelo kala duwan, laga bilaabo daalacashada fulinta qaababka cusub ee noocyadii hore iyada oo loo marayo polyfills, deegaanka shabakadaha iyo nidaamyada hawlgalka sida Windows oo u baahan in la ilaaliyo codsiyada sannadihii hore oo aan qalad lahayn.
Isticmaalka Shims-ka Daaqadaha: Waafaqid Dib-u-dhac ah
Microsoft waxay si rasmi ah u hirgelisay Shims gudaha gudaha Qalabka Waafaqsanaanta Codsiga (ACT), qalabyo kala duwan oo loogu talagalay in lagu hagaajiyo arrimaha ku habboon noocyada casriga ah ee Windows. Shaqadani waa muhiim marka ay timaado codsiyada loo qaabeeyey noocyadii hore ee nidaamka iyo in aan la updated la el tiempo.
Mid ka mid ah xulashooyinka ugu awoodda badan gudaha ACT waa suurtagalnimada codsiga "version been". Noocan Shim ayaa khiyaameeya codsiga inuu ku fekero inuu ku shaqeynayo Windows XP, tusaale ahaan, marka uu dhab ahaantii ku shaqeynayo Windows 10 ama 11. Tan waxaa lagu gaaraa iyada oo la joojiyo wicitaanada nidaamka ee la xidhiidha nooca OS iyo ku tafaraaruqa qiyamka la soo celiyay.
Tusaalaha wax ku oolka ah ee isticmaalka Shims leh ACT
Barnaamijyada qaarkood waxay sameeyaan hubin aad u adag lambarka nooca nidaamka hawlgalka ka hor inta aan la rakibin. Tusaale ahaan, codsi si gaar ah loogu talagalay Windows XP wuxuu hubin karaa haddii nidaamku soo celiyo nooca 5.1 iyo, haddii aysan ahayn, xannibo rakibidda. Xaaladahan, Shim wuxuu joojin karaa wicitaanka Nidaamka.Environment.OSVersion oo soo celi qiyamka 5.1, taasoo ka dhigaysa barnaamijku inuu u maleeyo inuu ku socdo XP.
Si loo dalbado sixitaanka noocan ah waxa loo isticmaalaa qaybta Maamulaha Waafaqid ee ACT, halkaas oo Shim loo doortay sida WinXPSP3VersionLie waxaana lagu tilmaamay in lagu dabaqo dhammaan qaybaha arjiga.
Sida loo rakibo Shims
Marka Shim laga soo dejiyo ACT, waxa loo kaydiyaa sidii .sdb (Shim Database). Faylkan waxa lagu rakibi karaa nidaamka Windows si ay u isticmaasho mar kasta oo codsiga u dhigma la ordo. Nidaamka qalliinka waxa uu ogaadaa joogitaanka Shimka oo wax ka beddelaa hab-dhaqankiisa wakhtiga runtime..
Tani waxay u oggolaaneysaa codsiyada haddii kale noqon lahaa kuwo aan isqaban karin waxay socon kartaa khaladaad la'aan, iyada oo aan u baahnayn wax ka beddelka ku dayashada asalka ah ee la fulin karo ama dibadda.
Shims ee deegaanka horumarka: tijaabinta unugga ee Visual Studio
Aag kale oo Shims uu ku leeyahay door la xidhiidha imtixaanada unugga. Deegaanka horumarka sida Visual Studio, the hagaajinta waafaqsanaanta (shim) Waxaa loo isticmaalaa in lagu go'doomiyo qaybo ka mid ah koodka inta lagu jiro tijaabada. Tani waa qayb ka mid ah qaab-dhismeedka Microsoft Fakes, oo ay ku jiraan labadaba cawsduuryo sida shims.
Shims waxay kuu ogolaanaysaa inaad ka hortagto wicitaanada hababka shirarka ee aan qayb ka ahayn xalkaaga, sida nidaamka ama maktabadaha qolo saddexaad. Ujeedadoodu waa u weecida fulinta koodhka imtixaanka caadada ah, sidaas darteed hubinta in imtixaanadu yihiin kuwo la saadaalin karo oo aan ku xirneyn arrimo dibadda ah sida nidaamka faylka, shabakada, ama wakhtiga nidaamka.
Tusaale wax ku ool ah oo leh System.IO
Ka soo qaad in aad leedahay hab wacaya Nidaamka.IO.File.Akhri dhammaan khadadkaImtixaan halbeeg ah, ma doonaysid in si dhab ah looga akhriyo saxanka, laakiin aad u soo celiso xog go'an. Shimka, waxaad ka qaban kartaa wicitaankaas oo aad dib ugu celin kartaa, tusaale ahaan, {"Hello", "World", "Shims"}
.
Tan waxaa lagu gaaraa iyadoo la isticmaalayo faylka Fakes u dhiganta, kaas oo si toos ah looga soo saaro mashruuca tijaabada. Gudaha Shim, wicitaankii asalka ahaa waxaa lagu bedelay shaqo caadi ah.
Noocyada hababka la taageeray
Shims been abuur ah ayaa lagu dabaqi karaa:
- Hababka taagan: Waa la dhexgalay oo ergo ayaa lala xidhiidhiyaa kuwaas oo qeexaya hab-dhaqanka cusub.
- Hababka tusaalaha (dhammaan tusaalooyinka)Isticmaal fasalka AllInstances si aad u dhexgasho habka shay kasta oo fasalkaas ah.
- Hababka tusaale ahaan hal tusaale: Shayga Shim waxa loo abuuray isagoo ku xidhan tusaale gaar ah.
- Dhismayaasha: Xaaladaha wax laga beddelay ee shayga laga hadlayo waa la dhexgelin karaa oo soo celin karaa.
Xaddidaadda Shims ee imtixaanka
Wax walba laguma soo dhexgelin karo Shims. Tusaale ahaan, looma isticmaali karo fasalada NET-ka qaarkood sida mscorlib meelaha qaar. Sidoo kale, Laguma talinayo in la sameeyo imtixaanada si barbar socda marka la isticmaalayo Shims, sida ay u saameeyaan AppDomain oo dhan oo aan lahayn xiriir dun, taas oo keeni karta natiijooyin aan iswaafaqayn.
Shims oo ah qalab ilaalin internet oo weerar ah
Shims ayaa sidoo kale soo jiitay dareenka jilayaasha xaasidnimada ah. Sida dariiqa sharciga ah ee faragelinta iyo wax ka beddelka hababka nidaamka, waa loo isticmaali karaa duri kood xaasidnimo ah habab badbaado leh ama xitaa loogu talagalay kor u qaadida mudnaanta.
Farsamo loo yaqaan Weerar Shimming Waxay ka kooban tahay abuurista xog iswaafajin gaar ah oo ku dhejisa wax la fulin karo ama DLL gudaha kabaha, Oggolaanshaha koodka aan la fasixin inuu shaqeeyo iyada oo aan nidaamka dib loo kicin. Tan waxaa lagu gaari karaa iyadoo la adeegsanayo isla nidaamka faylka .sdb ee ay isticmaasho Microsoft, laakiin ujeeddooyin xaasidnimo ah.
Qalabka Shims Database Parser u ogolaanaya cilmi-baarayaasha ammaanka in ay falanqeeyaan kuwan .sdb files oo ay ogaadaan haddii ay jiraan isku dayo in Ku dhejinta kulul, duritaanka DLL, ama isbeddelada mudnaanta fulinta.
Sida loo ogaado weeraradan
Qaar ka mid ah tilmaamayaasha muhiimka ah ee la raadinayo waa:
- Ku rakibida Shim Database ka baxsan hagaha la filayo
- Taariikhaha wax ka beddelka aan caadiga ahayn
- Hababka isbarbardhigga/dib u qorida ee shakiga leh ee ku dhex jira baytyada codsiyada la beegsaday
Waxqabadyadan waxaa lagu kaydiyaa Diiwaanka Windows waxayna sii jiri karaan xitaa ka dib marka nidaamka dib loo bilaabo. Sidaa darteed, waa lama huraan in lala socdo isbedel kasta oo shaki leh oo ku yimaadda faylasha .sdb ee ku jira diiwaanka. \Windows\AppPatch\sysmain.sdb
ama wax u dhigma.
Waa maxay faraqa u dhexeeya Shim, Duubka iyo Stub?
Horumarinta software-ka waxaa jira fikrado dhowr ah oo la mid ah oo si fudud loo jahawareerin karo:
- Shim: Dhexda oo wax ka beddela wicitaannada API, dib u qoraan ama dib u habeeyaan dhaqankooda iyaga oo aan beddelin koodka asalka ah.
- Xaraash: wuxuu koobayaa shaqo kale ama shay, isagoo ku daraya shaqeynta isagoon wax ka beddelin shayga asalka ah.
- Taabasho: beddelka la fududeeyay ee hawl dhab ah, oo sida caadiga ah loo isticmaalo xilliga tijaabada si loogu ekaysiiyo hab-dhaqanka.
Iyadoo Duubabka iyo Stubs si cad loogu abuuray koodka, Shims waxay ka shaqeeyaan heer hoose, wax ka beddelka habdhaqanka runtime, xitaa maktabadaha la soo ururiyey ama nidaamka qalliinka laftiisa.
Cutubyadani waxay lama huraan u yihiin fahamka sida Windows u ilaaliso iswaafajinta, u horumariso tijaabinta, iyo sidoo kale sida looga faa'iidaysan karo jilayaasha xaasidnimada leh. Fahamka saxda ah ee kala duwanaanshahooda iyo hawlahooda ayaa fure u ah ka faa'iidaysiga faa'iidooyinka iyo ilaalinta khatartooda.
Qora xamaasad leh oo ku saabsan adduunka bytes iyo farsamada guud ahaan. Waxaan jeclahay inaan aqoontayda ku wadaago qoraal, taasina waa waxa aan ku samayn doono blog-gan, ku tusi doona dhammaan waxyaabaha ugu xiisaha badan ee ku saabsan qalabka, software-ka, qalabka, isbeddellada tignoolajiyada, iyo in ka badan. Hadafkaygu waa inaan kaa caawiyo inaad u dhex marato adduunka dhijitaalka ah si fudud oo madadaalo leh.