Kuidas parandada Windowsi Visual C ++ käitustõrkeid

Kuidas parandada Windowsi Visual C ++ käitustõrkeid

Windowsi jagatud teegid muudavad programmeerimise programmeerija jaoks palju tõhusamaks, kes ei pea iga kord ühise ülesande täitmiseks ratast leiutama. Need hõlbustavad ka turvaaukude ummistamist jagatud koodis, kui need on leitud, kuna seda tuleb parandada vähemates kohtades ja see ei nõua iga rakenduse uuesti kompileerimist.





Nendest positiivsetest aspektidest hoolimata võivad nad tekitada tõrkeotsingu algpõhjuse tõrkeotsingul oma probleeme.





Meie lugeja küsimus:

Kuidas parandada Dell Inspiron 530 Windows Vista 32-bitise C: Windows explorer.exe probleemi?





Pärast ekraanipildil kuvatud dialoogiboksi OK nupu klõpsamist muutub ekraan mustaks ja naaseb normaalseks tööks, kuid see ei võimalda mul neile juurde pääsemisel juurdepääsu C-, D- ja mõnikord ka E -draivile Minu arvutist.

Jooksmine sfc /scannow ei leia ühtegi viga. Laadisin selle probleemi lahendamiseks alla värskendused nii Delli kui ka Microsofti veebisaitidelt. Olen installinud ka Microsoft Visual C ++ 2010 Redistributable Package (x86). Arvuti on Windows Update'i kohaselt täiesti ajakohane.



Bruce'i vastus:

Märkus. Arutelud Windows Exploreri kohta Windows 7 ja varasemates versioonides kehtivad ka Windows 8 ja uuemate versioonide File Exploreri kohta. Kui nende vahel on märkimisväärne erinevus, märgitakse see selgesõnaliselt.

Windowsi kest

Windows Explorer on kest ja töötab explorer.exe protsessina, nagu on näha tegumihalduris või Sysinternals'i protsessiuurijas. Nagu paljud teised Windowsi programmid, ei sisaldu kogu kesta pakutav funktsionaalsus sellesse käivitatavasse faili. Atribuutide lehtede, atribuutide töötlejate, eelvaate käitlejate, kontekstimenüüde ja paljude muude Windows Exploreris iga päev kasutatavate elementide rakendamiseks kasutatakse kümneid muid EXE- ja DLL -faile.





Laiendatav kest

Kestalaiendid võimaldavad programmeerijatel hõlpsasti funktsioone Windows Explorerisse lisada, kirjutades ülesande täitmiseks DLL -i ja registreerides DLL -i operatsioonisüsteemiga, nii et Explorer teab, kust ülesande täitmiseks koodi leida. Näiteks, 7-tõmblukk lisab tavalisse kontekstimenüüsse alammenüü, mis võimaldab kiiret juurdepääsu arhiivitöötlusülesannetele, kõvaketta Sentinel lisab tavalistele draiviikoonidele ikoonikatete, nii et saate draivi terviseseisundit lühidalt näha ja HashTab lisab uue atribuudilehe, et arvutada ja kuvada valitud faili räsid.

Paljud neist kestalaienditest on juurutatud protsessisiseste komponendimudelite (COM) serveritena. See tähendab, et kui protsess, antud juhul Windows Explorer, kasutab laiendust, ei kuvata seda tegumihalduris ega protsessiuurijas eraldi töötava protsessina, millel on oma protsessitunnus (PID). Selle asemel täidetakse seda kutsuva protsessi explorer.exe sees.





Ühe instantsi vaikeprotsess

Windows Explorer on kirjutatud nii, et seda saab kasutada kahe eraldi protsessina, kuid vaikimisi konfiguratsioonis käivitab see ainult ühe eksemplari. Kui see käivitamise käigus esmakordselt käivitatakse, loob see Windowsi töölauakeskkonna. Selle uuesti käivitamine loob olemasolevasse protsessi uue lõime, mis kuvab uue protsessi alustamise asemel tuttava failihalduse akna.

See käitumine võimaldab vähendada mälu jalajälge, kuid võib probleemide tõrkeotsingul kaasa tuua ka oma väikese keerdkäigu. Kriitiline viga või käsitlematu erand koodis, mida täidetakse protsessis explorer.exe, sealhulgas DLL-i pakutavad protsessisisesed serverid, põhjustab kogu töölauakeskkonna languse.

Enamikul juhtudel taaskäivitatakse töölaua protsess automaatselt. Kui see ei taaskäivitu, peaksite Task Manageri avamiseks saama kasutada klahve Ctrl-Shift-Esc. Sealt minge aadressile Fail> Uus ülesanne (Käivita ...)> tüüpi explorer.exe> ​​OK protsessi taaskäivitamiseks.

Seda saab lihtsa muudatusega vältida. Avatud Windows Explorer> Korrasta> Kaust ja otsinguvõimalused Vista/7. Windows 8 ja uuemate versioonide puhul avage File Explorer> Vaade> Valikud> Muuda kausta ja otsinguvõimalusi . Valige Vahekaart Vaade ja kontrollige Käivitage kaustade aknad eraldi protsessina .

kuidas parandada Windows 10 sinist ekraani

Selle seade muutmine eraldab teie töölaua protsessi kõigist teistest avatud Windowsi Exploreri akendest. Kui mõni neist Exploreri akendest jookseb kokku, jääb teie töölaud puutumata.

Microsoft Visual C ++ Runtime Library (CRT)

Microsoft Visual C ++ Runtime Library pakub Windowsi programmeerimiseks tavasid, mis automatiseerivad paljusid ülesandeid, nagu sisend/väljund, failide töötlemine, mälu eraldamine, süsteemikõned ja paljud teised.

Iga Windowsi installimise korral on installitud vähemalt kaks erinevat CRT versiooni. Värskelt ehitatud Vista SP2 kaudu Windows 10 masinasse on saadaval nii versioon 8.0 kui ka 9.0 (vastavalt VC 2005 ja VC 2008). Lisatarkvara installimisel võib see sisaldada ka käitusaegade uuemaid versioone, sõltuvalt sellest, millist Visual C ++ versiooni programmi või selle komponentide loomiseks kasutati.

Käitusaja vead

Kui kooditükis ilmneb viga või erand, siis ideaaljuhul käsitletakse seda praegu teostatava protseduuri käigus niipea kui võimalik ning see parandatakse või lubatakse ebaõnnestuda. Kui viga ei käsitleta kohapeal, edastatakse see koodile, mis kutsus välja praegu käivitatava koodi, ja protsess jätkub, kuni erand on käsitletud. Kui see lõpetab oma jooksu ahela tippu ja seda ikka veel ei käidelda, tekitab see ülaltoodud käitustõrke.

Kui kasutaja klõpsab nuppu OK, protsess lõpetatakse. Kui programmil on määratletud tõrkekäitumine, näiteks kriitilised teenused, või kui selle käivitusolekut jälgib mõni muu protsess, võidakse see automaatselt uuesti talletada. See on see, mis antud juhul toimub. Ekraan pimeneb, kui explorer.exe protsess lõpetatakse, ja töölaud naaseb, kui explorer.exe protsess taaskäivitatakse.

Kuigi ülaltoodud veateade näitab selgelt, et see pärineb protsessist explorer.exe, ei ole see tõenäoliselt explorer.exe enda probleem. On palju tõenäolisem, et süüdlane on mujal, näiteks kolmanda osapoole laiendus, mida Explorer kasutab.

Muud kaalutlused

Meie lugeja ülalkirjeldatud probleemi kirjeldusega on vaja arvestada veel mõne üksusega:

  • Õnnetuse ajal üritas Explorer nimekirjavaadet täita, kuid ei suutnud seda täita.
  • Suutmatus pääseda draividele juurde pärast töölaua taaskäivitamist võib viidata sellele, et mõnel teisel protsessil on üks või mitu neist seadmetest lukus, takistades seeläbi juurdepääsu äsja loodud explorer.exe protsessile.
  • Jooksmine sfc /scannow ja saades puhta tervisearve, langeb Windowsi kaitstud ressursid loendi lõppu. Muud põhjused on palju tõenäolisemad.

Parandused on olemas

Sel konkreetsel juhul on kolm valdkonda, kus ma lahendust otsiksin. Esimene hõlmab Windowsi otsingu teenust, teine ​​kestalaiendite uurimist ja viimane oleks VC ++ uuesti levitatavad failid.

Kuna algne ekraanipilt näitab krahhi, mis juhtub siis, kui Explorer üritab loendivaadet täita, on võimalik, et Windowsi otsinguteenus blokeerib juurdepääsu vajalikele ressurssidele. Olen seda näinud, kui teenus jookseb kokku ja tal pole õigeid taaskäivitusparameetreid.

Vajutage Win+R> tüüpi services.msc> OK halduskonsooli käivitamiseks teenuste mooduliga. Kerige alla Windowsi otsinguni ja topeltklõpsake kirjet, et avada dialoog Atribuudid. Veenduge, et vahekaardi Taaste sätted vastaksid allolevale pildile.

Kõige tavalisem probleem on seade „Taaskäivita teenus pärast:”. See tõrge ilmneb sageli, kui see säte ei ole null.

Kestlikud Shelli laiendused

Lae alla Nirsofti ShellExView oma süsteemi arhitektuuri (x86 või x64) jaoks installige ja käivitage see. Süsteemi uurimine ja tabeli täitmine andmetega võtab natuke aega. Kerige veergu CLSID Modified Time ja klõpsake selle välja sortimiseks päisel. Kui soovite Microsofti pakutavad moodulid välistada, võite minna aadressile Valikud> Peida kõik Microsofti laiendused . Neile, kes kasutavad Windowsi 64-bitist versiooni, võiksite kuvada ka süsteemi 32-bitised laiendused, minnes Valikud> Kuva 32-bitised kestalaiendid .

Otsige laiendusi, mis lisati vahetult enne sümptomite algust. Valige üks või mitu ja vajutage F7 või minna Fail> Keela valitud üksused või klõpsake tööriistaribal punast LED -i ikooni. Ideaalis tuleks seda teha ükshaaval.

Testige, kas sümptomid püsivad. Kui nad seda teevad, saate varem keelatud laienduse (d) uuesti lubada F8 , Fail> Luba valitud üksused või roheline LED -tööriistaribaikoon. Siit keelake mõni muu laiendus ja korrake testimisprotsessi, kuni leiate probleemi põhjustaja.

Parandage/installige uuesti levitatavad VC ++ failid

Ma kasutan seda viimast võimalust, kui ainult üks programm tõrjub vigu. Kui teil on mitu programmi, millel on probleeme VC ++ käitustõrgetega, võiksite seda kõigepealt proovida.

Kui vaatan oma süsteemi installitud programme ( Juhtpaneel> Programmid ja funktsioonid ), see näitab kõiki ümberjaotatavate pakettide versioone (ja mõningaid nende värskendusi) alates versioonist 8 kuni versioonini 12 (VC ++ 2005 kuni VC ++ 2013). Mul on need installitud minu kasutatavate Microsofti programmeerimisvahendite tõttu. Enamikul kasutajatel pole neid kõiki.

Võite leida uusimad allalaadimised Visual C ++ toetatud versioonide jaoks Microsoftilt. Meie eesmärkidel peate siin muretsema ainult nende eest, mis on märgistatud ümberjaotatavate pakettidena. Teeninduspakettideks klassifitseeritud lingid on mõeldud programmeerimisvahenditele, mitte lihtsalt tööajale. Teil on vaja ainult neid, mis on teie süsteemi installitud programmides praegu loetletud. Teiste versioonide installimine sel juhul ei aita. 64-bitiste operatsioonisüsteemide kasutajad võivad vajada nii CRT x86 kui ka x64 versioone.

Windows Update kontrollib, kas teie arvutisse on installitud nende pakettide uusimad värskendused, kuid ei kontrolli, kas see on õigesti installitud ega katki. Paigaldajad saavad kontrollida, kas kõik käitusfailid on õiged ja kõik registrikirjed õiged.

Kui olete alla laadinud sobivad installijad, käivitage need süsteemis. 2005. aasta versioonid paluvad teil enne paketi uuesti installimist litsentsilepinguga nõustuda. Kõigil teistel on GUI, mis küsib teilt, kas soovite olemasolevat installi parandada või desinstallida. Enamikul juhtudel parandab parandus kõik probleemid.

Kui soovite proovida kõige äärmuslikumat meetodit, saate käitusajad desinstallida, masina taaskäivitada ja seejärel uuesti installida. Ma ei soovita seda meetodit 2005. ja 2008. aasta käitusajaga. Ilma nendeta tekitab Windows palju vigu ja taaskäivitamisel pole palju funktsioone.

Järeldus

Väikese jälgimise, katsete ja vigade näpuga ning mõningase arusaamaga sellest, kuidas süsteemis käitamisajast vigu tekitatakse, saab tarkvara probleemid leida ja lahendada ilma keeruliste silumistööriistade ja -logideta.

Kas olete oma süsteemis käitustõrkega kokku puutunud? Mida oli vaja nende lahendamiseks? Andke mulle sellest allpool kommentaarides teada.

Jaga Jaga Piiksuma E -post Siin on põhjus, miks FBI andis hoiatuse taru lunavara eest

FBI andis hoiatuse eriti vastiku lunavara tüve eest. Siin on põhjus, miks peate Hive lunavara suhtes eriti ettevaatlik olema.

Loe edasi
Seotud teemad
  • Windows
  • Tehnoloogia selgitatud
  • Küsige ekspertidelt
  • Windows Explorer
  • Windows
  • File Explorer
  • Windowsi otsing
  • Tõrkeotsing
Autori kohta Bruce Epper(13 artiklit avaldatud)

Bruce on elektroonikaga mänginud alates 70ndatest, arvutitega alates 80ndate algusest ja vastab täpselt küsimustele tehnoloogia kohta, mida ta pole kasutanud ega kogu aeg näinud. Samuti ärritab ta ennast kitarri mängimisega.

Rohkem Bruce Epperilt

Telli meie uudiskiri

Liituge meie uudiskirjaga, et saada tehnilisi näpunäiteid, ülevaateid, tasuta e -raamatuid ja eksklusiivseid pakkumisi!

Tellimiseks klõpsake siin