Mainos

Windowsin jaetut kirjastot tekevät ohjelmoinnin paljon tehokkaammaksi ohjelmoijalle, jonka ei tarvitse keksiä pyörää joka kerta, kun hänen on suoritettava yhteinen tehtävä. Niiden avulla on myös helpompaa kytkeä jaettuihin koodeihin tietoturva-aukkoja, koska ne on korjattava harvempaan paikkaan eikä vaadi, että jokainen sovellus on käännettävä uudelleen.

Näistä positiivisista näkökohdista huolimatta he voivat aiheuttaa omia ongelmiaan yrittäessään vianmääritystä mahdollisten virheviestien perussyihin.

Lukijamme kysymys:

Kuinka korjaan Windows Vista 32-bittisen C: \ Windows \ explorer.exe -ongelman Dell Inspiron 530: lla?

Napsauttamalla OK-painiketta kuvakaappauksessa näkyvässä valintaikkunassa, näyttö pimenee ja palaa normaaliksi käynnissä, mutta se ei salli minun käyttää C-, D- ja toisinaan E-asemaa yrittäessäni käyttää niitä Omasta Tietokone.

Running sfc / scannow ei löydä virheitä. Latasin päivityksiä sekä Dellin että Microsoftin verkkosivustoilta yrittäessään korjaamaan tämän ongelman. Olen myös asentanut Microsoft Visual C ++ 2010 -jakelukelpoisen paketin (x86). PC on täysin päivitetty Windows Update -sovelluksen mukaan.

suorituksenaikainen virhe

Brucen vastaus:

Huomautus: Windows Exploreria koskevat keskustelut Windows 7: ssä ja vanhemmissa versioissa koskevat myös File Exploreria Windows 8: n ja uudemmissa versioissa. Jos niiden välillä on huomattava ero, se ilmoitetaan nimenomaisesti.

Windows-kuori

Windowsin Resurssienhallinta On Shell ja suoritetaan explorer.exe-prosessina, kuten Tehtävienhallinnassa tai Sysinternalsin Process Explorer Process Explorer - Tehokkain tehtävänhallinnan vaihto [Windows]Olkaamme rehellisiä, Windowsin Tehtävienhallinta ei ole kovin suuri tietokoneellasi käynnissä olevien prosessien ymmärtämiseen ja hallintaan. Jopa Windows 8: ssa, jossa sitä on paljon parannettu, tehtävähallinta ei voi saavuttaa ... Lue lisää . Kuten monet muut Windows-ohjelmat, kaikkea kuoren toimintoja ei sisällytetä kyseiseen suoritettavaan tiedostoon. On olemassa kymmeniä muita EXE- ja DLL-tiedostot Kuinka korjata puuttuvia DLL-tiedostovirheitä Lue lisää jota käytetään kiinteistövälitteiden, kiinteistöjen käsittelijöiden, esikatselukäsittelyjen, kontekstivalikkojen ja monien muiden Windows Explorerissa päivittäin käyttämiesi elementtien toteuttamiseen.

Laajennettava kuori

Shell-laajennukset antavat ohjelmoijille mahdollisuuden lisätä toimintoja Windows Exploreriin helposti kirjoittamalla DLL suorittaaksesi tehtävä ja rekisteröinti DLL käyttöjärjestelmässä, joten Explorer tietää mistä löytää koodi suorittaaksesi tehtävä. Esimerkiksi, 7-Zip Kuinka purkaa tiedostoja ZIP-, RAR-, 7z- ja muista yleisistä arkistoistaKohditko koskaan .rar-tiedostoa ja miettinyt, kuinka avata se? Onneksi ZIP-tiedostojen ja muiden pakattujen arkistojen hallinta on helppoa oikeilla työkaluilla. Tässä on mitä sinun täytyy tietää. Lue lisää lisää alivalikon normaaliin kontekstivalikkoon, jolloin arkistojen käsittelytehtäviin pääsee nopeasti, Kiintolevyn Sentinel Pidä silmällä kiintolevyn ja SSD: n terveyttä kiintolevyn avullaOnko sinulla koskaan ollut vikaa? Valitettavasti laitteistovaurioiden estämiseksi ei ole ihmelääkettä. Mutta kiintolevyn tai SSD: n tarkkaileminen toimimaan, kun heidän kuolemansa tulee todennäköiseksi, on ensimmäinen askel. Lue lisää lisää kuvakepeittokuvat tavallisiin aseman kuvakkeisiin, jotta näet aseman terveydentilan yhdellä silmäyksellä, ja HashTab lisää uuden ominaisuusarkin valitun tiedoston tiivisteiden laskemiseksi ja näyttämiseksi.

konteksti-valikko

Monet näistä shell-laajennuksista on toteutettu prosessin sisäisissä komponenttiobjektimallien (COM) palvelimina. Tämä tarkoittaa, että kun prosessi, tässä tapauksessa Windows Explorer, käyttää laajennusta, se ei tule näkyviin Task Managerissa tai Process Explorerissa erillisenä käynnissä olevana prosessina, jolla on oma prosessitunniste (PID). Sen sijaan se suorittaa kutsuvan explorer.exe-prosessin sisällä.

Yhden instanssin oletusprosessi

Windows Explorerin on kirjoitettu pystyvän toimimaan kahden erillisenä prosessina, mutta - oletuskokoonpanossaan - se suorittaa vain yhden ilmentymän. Kun se suoritetaan ensimmäisen kerran osana käynnistysprosessia, se luo Windowsin työpöytäympäristön. Suorittamalla se uudelleen, luodaan uusi lanka olemassa olevaan prosessiin, joka näyttää tutun tiedostohallintaikkunan uuden prosessin aloittamisen sijasta.

Tämä käyttäytyminen sallii pienentyneen muistin jalanjäljen, mutta voi myös tuoda oman pienen käänteen ongelmien vianmääritykseen. Kriittinen virhe tai käsittelemätön poikkeus koodissa, joka suoritetaan explorer.exe-prosessissa, mukaan lukien DLL-järjestelmien tarjoamat prosessin sisäiset palvelimet, johtaa siihen, että koko työpöytäympäristö laskee sen mukana.

Useimmissa tapauksissa työpöydän prosessi käynnistetään automaattisesti uudelleen. Jos se ei käynnisty uudelleen, sinun pitäisi silti voida käyttää Ctrl-Shift-Esc -sovellusta Task Manager -sovelluksen esiin tuomiseen. Sieltä mene Tiedosto> Uusi tehtävä (Suorita…)> tyyppi explorer.exe> ​​OK käynnistääksesi prosessin uudelleen.

Tämä voidaan välttää yksinkertaisella muutoksella. Avata Windows Explorer> Järjestä> Kansio- ja hakuasetukset Vista / 7: ssä. Avaa Windows 8 ja uudemmat File Explorer> View> Options> Vaihda kansio- ja hakuasetukset. Valitse Näytä-välilehti ja tarkista Käynnistä kansioikkunat erillisessä prosessissa.

kansioasetukset

Tämän asetuksen muuttaminen erottaa työpöydän prosessin kaikista muista avoimista Windows Explorerin ikkunoista. Jos jokin näistä Explorer-ikkunoista kaatuu, työpöytäsi pysyy muuttumattomana.

Microsoft Visual C ++ Runtime Library (CRT)

Microsoft Visual C ++ Runtime Library tarjoaa rutiineja Windows-ohjelmointiin, jotka automatisoivat monia tehtäviä, kuten syöttö / lähtö, tiedostojen käsittely, muistin allokointi, järjestelmäpuhelut ja monet muut.

Jokaiseen Windows-asennukseen on asennettuna vähintään kaksi erilaista CRT-versiota. Äskettäin rakennetussa Vista SP2: ssä, joka on Windows 10 -kone, tulee sekä versio 8.0 että 9.0 (vastaavasti VC 2005 ja VC 2008). Kun ylimääräinen ohjelmisto asennetaan, se voi sisältää myös uudemmat versiot ajoista riippuen siitä, mitä Visual C ++ -versiota on käytetty ohjelman tai sen komponenttien luomiseen.

Suorituksenaikaiset virheet

Kun koodiosassa on virhe tai poikkeus, se hoidetaan mieluiten heti mahdollista parhaillaan suoritetussa menettelyssä, ja joko korjataan tai sallitaan siro vajaatoiminta. Jos virhettä ei käsitellä paikallisesti, se siirretään koodiin, joka kutsui parhaillaan suorittavaa koodia, ja prosessi jatkuu, kunnes poikkeus käsitellään. Jos se suorittaa ajon ketjun yläosaan eikä sitä silti käsitellä, se tuottaa ajonaikaisen virheen, kuten yllä on esitetty.

Kun käyttäjä napsauttaa OK-painiketta, prosessi lopetetaan. Jos ohjelmalla on määritetty vikakäyttäytyminen, kuten kriittiset palvelut, tai sen ajon tilaa valvotaan jollakin toisella prosessilla, se saattaa tulla uudelleensuuntautuneeksi. Näin tapahtuu tässä tapauksessa. Näyttö sammuu, kun explorer.exe-prosessi lopetetaan, työpöytä tulee takaisin, kun explorer.exe-prosessi käynnistetään uudelleen.

Vaikka yllä oleva virhesanoma osoittaa selvästi, että se tuli explorer.exe-prosessista, se ei todennäköisesti ole ongelma itse explorer.exe-tiedostossa. On paljon todennäköisempää, että syyllinen on muualla, kuten Resurssienhallinnan käyttämässä kolmannen osapuolen laajennuksessa.

Muut näkökohdat

Lukijamme kuvaamalla yllä olevaa asiaa on muutama lisäosa, jotka meidän on otettava huomioon:

  • Kaatumisen hetkellä Explorer yritti täyttää luettelonäkymää, mutta ei pystynyt siihen.
  • Kyvyttömyys päästä asemiin työpöydän uusimisen jälkeen saattaa tarkoittaa, että toisella prosessilla on yksi tai useampi näistä laitteista on lukittu, estäen siten pääsyä hiljattain luodun explorer.exe: n kautta prosessi.
  • Running sfc / scannow ja kun saat puhtaan terveyslaskun, pudottaa Windows-suojatut resurssit luettelon alaosaan harkittavaksi. Muut syyt ovat todennäköisemmin.

Korjaukset ovat

Tässä nimenomaisessa tapauksessa etsin ratkaisua kolmelta alueelta. Ensimmäinen koskee Windows-hakupalvelua, toinen tutkia shell-laajennuksia ja viimeinen olisi itse VC ++ -jakelukelpoiset.

Windows-haku

Koska alkuperäinen kuvakaappaus näyttää kaatuu, kun Explorer yrittää täyttää listview, on mahdollista, että Windows-hakupalvelu estää pääsyn vaadittuihin resursseihin. Olen nähnyt tämän tapahtuvan, kun palvelu kaatuu ja sillä ei ole oikeita uudelleenkäynnistysparametreja.

Lehdistö Voita + R> tyyppi services.msc> OK käynnistääksesi hallintakonsolin palvelumoduulilla. Selaa alaspäin Windows-hakuun ja kaksoisnapsauta merkintää avataksesi Ominaisuudet-valintaikkunan. Varmista, että Palautus-välilehden asetukset vastaavat alla olevaa kuvaa.

Windows-haku-ominaisuudet

Yleisin ongelma on “Käynnistä palvelu uudelleen:” -asetus. Tämä virhe ilmenee usein, kun tämä asetus ei ole nolla.

Ongelmallisia kuorilaajennuksia

ladata Nirsoftin ShellExView asenna ja suorita järjestelmäarkkitehtuurillesi (x86 tai x64). Järjestelmän tutkiminen ja taulukon täyttäminen tiedoilla vie vähän aikaa. Vieritä CLSID Modified Time -sarakkeeseen ja napsauta otsikkoa lajitellaksesi tämä kenttä. Jos haluat sulkea pois Microsoftin tarjoamat moduulit, voit siirtyä osoitteeseen Valinnat> Piilota kaikki Microsoft-laajennukset. Niille, jotka käyttävät 64-bittistä Windows-versiota, haluat ehkä näyttää myös järjestelmän 32-bittiset laajennukset siirtymällä Valinnat> Näytä 32-bittiset Shell-laajennukset.

Etsi laajennuksia, jotka on lisätty juuri ennen oireiden alkamista. Valitse yksi tai useampi ja paina F7 tai mene Tiedosto> Poista valitut kohteet käytöstä, tai napsauta työkalurivin punaista LED-kuvaketta. Ihannetapauksessa tämä tulisi tehdä yksi kerrallaan.

Tarkista, oireet jatkuvat. Jos ne niin, voit ottaa aiemmin poistetut laajennukset uudelleen käyttöön käyttämällä F8, Tiedosto> Ota valitut kohteet käyttööntai vihreä LED-työkalurivikuvake. Täältä poista käytöstä toinen laajennus ja toista testausprosessi, kunnes löydät ongelmaa aiheuttavan.

Korjaa / asenna uudelleen VC ++ -jakautuvat osat

Käytän tätä viimeisenä keinona, jos vain yksi ohjelma potkaisee virheitä. Jos sinulla on useita ohjelmia, joilla on ongelmia VC ++ -ajonaikavirheiden kanssa, sinun kannattaa kokeilla tätä ensin.

Kun tarkastellaan järjestelmään asennettuja ohjelmia (Ohjauspaneeli> Ohjelmat ja ominaisuudet), se näyttää kaikki jaettavien pakettien (ja joidenkin niiden päivitysten) kaikki versiot versiosta 8 versioon 12 (VC ++ 2005 - VC ++ 2013). Olen asentanut ne käyttämäni Microsoftin ohjelmointityökalujen takia. Suurimmalla osalla käyttäjiä ei ole kaikkia näitä.

asennettuna-vcpp-Redist

Löydät Viimeisimmät lataukset Visual C ++: n tuetuille versioille Microsoftilta. Tässä tarkoituksessa sinun täytyy olla huolissaan vain niistä, jotka on merkitty ”uudelleenjakelukelpoisiksi” paketeiksi. Service pack -luokitellut linkit ovat ohjelmointityökalujen, ei pelkästään ajoaikojen, varten. Tarvitset vain ne, jotka on lueteltu järjestelmän asennetuissa ohjelmissa. Muiden versioiden asentaminen ei tässä tapauksessa auta. 64-bittisten käyttöjärjestelmien käyttäjät voivat tarvita CRT: n sekä x86- että x64-versioita.

Windows Update tarkistaa, onko tietokoneeseesi asennettu uusimmat päivitykset näille paketeille, mutta se ei tarkista, että se on asennettu oikein ja ettei sitä ole rikki. Asennusohjelmat voivat tarkistaa, että kaikki suoritustiedostot ovat oikeat ja että kaikki rekisterimerkinnät ovat oikein.

Kun olet ladannut asianmukaiset asennusohjelmat, suorita ne järjestelmässä. Vuoden 2005 versiot pyytävät sinua hyväksymään lisenssisopimuksen ennen paketin uudelleenasentamista. Kaikilla muilla on käyttöliittymä, joka kysyy, haluatko korjata tai poistaa olemassa olevan asennuksen. Useimmissa tapauksissa korjaustoimenpide korjaa kaikki ongelmat.

Jos haluat kokeilla äärimmäistä menetelmää, voit poistaa suoritukset, käynnistää koneen uudelleen ja asentaa ne uudelleen. En suosittele tätä menetelmää vuosien 2005 ja 2008 aikana. Ilman niitä Windows tuottaa paljon virheitä, eikä paljon toiminnallisuutta ole käytettävissä sinulle, kun käynnistät uudelleen.

johtopäätös

Hieman havainnoimalla, ripaus kokeilu- ja virhevirheitä ja ymmärrystä siitä, kuinka virheet syntyy järjestelmän suoritusajat, ohjelmisto-ongelmat voidaan löytää ja ratkaista turvautumatta monimutkaisiin virheenkorjaustyökaluihin ja tukkeja.

Oletko joutunut suoritusaikavirheisiin järjestelmässäsi? Mitä niiden ratkaisemiseksi vaadittiin? Kerro siitä alla olevissa kommenteissa.

Bruce on pelannut elektroniikalla 70-luvulta lähtien, tietokoneilla 80-luvun alusta, ja vastannut tarkasti tekniikkakysymyksiin, joita hän ei ole käyttänyt eikä nähnyt koko ajan. Hän ärsyttää itseään myös yrittämällä soittaa kitaraa.