Jeste li ikada bili u situaciji da ste recimo uključili svoje računalo, pokušali pokrenuti neki program ili igru, ali umjesto da se ono pokrene na zaslonu vašeg računala se pokazala poruka unutar koje je pisalo nešto u vezi nestalih .dll datoteka (ili ”.dll files are missing”)? Ovakvi problemi nisu rijetkost u Windows operacijskim sustavima.
Premda je njihovo pojavljivanje dosta rjeđe kod novijih Windowsa (pogotovo kod Windowsa 10), nije neobično da se tu i tamo dogodi nešto ovakvo. Ono zbog čega je pojavljivanje ovakvih problema pogotovo frustrirajuće jest to što da biste takav problem riješili vi trebate ići korak po korak, što traje dugo i što je samo po sebi naporno.
Mi ćemo u nastavku ovoga članka nešto više reći o tome koje su najčešće greške (ili problemi) vezani uz .dll datoteke te kako ih, ukoliko se oni pojave, otkloniti.
Kao prvo – što uopće jest .dll?
Prije nego što se bacimo na rješavanje .dll problema ne bi bilo loše prije toga reći što uopće znači .dll. DLL je u stvari skraćenica za Dynamic Link Library. U osnovi radi se o programima koji su sami po sebi jezgra samog Windows operacijskog sustava. Ono zbog čega su ove datoteke toliko važne i neophodne za rad Windowsa je zbog toga što bez njih Windows ili ne bi mogao funkcionirati normalno (što znači da bismo prilikom rada nailazili na jako veliki broj grešaka) ili ne bi mogao raditi uopće.
Na primjer, program, nakon što ga korisnik poželi pokrenuti klikom na njega, možda želi ostvariti pristup određenoj .dll datoteki. Recimo da neki program na zaslonu računala želi pokazati određenu poruku. On ako to želi možda će htjeti ostvariti pristup određenoj .dll datoteki.
Program će tada koristiti određenu .dll datoteku kako bi stvorio kutiju i oznaku za poruku, što uvelike olakšava posao developerima jer u tom slučaju svaka nova oznaka za poruku ne treba biti isprogramirana od strane developera već je automatski aktivirana zahvaljujući .dll-u. .dll sve u svemu omogućuju puno učinkovitije načine korištenja programa i operacijskog sustava općenito, što onda dovodi do bolje standardizacije i Windowsa i svih programa.
U čemu je onda ”kvaka”?
U slučaju da nešto pođe po zlu taj isti .dll može nestati (ili može biti korumpiran, to jest nemoguće ga je upotrijebiti). I što se onda dogodi ako recimo jedan (ili više, što je puno češće) program prilikom svoga rada koriste .dll kojeg ”više nema”? Taj program više neće raditi. Stvari su jednostavnije ako jedan program ne radi i ako taj jedan program koristi jedan .dll.
No, s obzirom da je puno češći slučaj to da više programa koristi jedan .dll, to samim time znači da je nemoguće odmah otkriti u čemu je problem (ili koji program možda stvara probleme). To je ono zbog čega je teško i nezgodno baviti se rješavanjem problema nastalih zbog .dll grešaka i/ili nestalih .dll datoteka, što ne znači da i za ove probleme ne postoji rješenje.
Najčešće greške vezane za .dll
Kao što i sami možete pretpostaviti, neki .dll mogu pokazivati poruke s greškama češće od drugih. Evo koji su to .dll-ovi koji su najpoznatiji po uzrokovanju problema.
MSVCP140, MSVCP120, MSVCP110 (i naravno) MSVCP100
Sva ova četiri .dll-a su različite podvrste (jer se recimo dijele u odnosu na svoje verzije, tako da imamo 14.0, 10,0 i tako dalje) jednog te istog .dll-a. Sama skraćenica ”MSVC” označava Microsoft Visual C++, format podoperacijskog sustava koji je iznimno poznat (i potreban) za pravilan rad i funkcioniranje Windowsa.
Postoje velike šanse da i sami na svojim računalima, bez obzira na to koji Windowsi su instalirani, imate već instalirane neke Microsoft Visual C++ potprograme koji u nastavku imaju dodatak ”Redistributable”. Svaki puta nakon što vi na svoje računalo instalirate neki program koji za svoj rad zahtjeva određenu verziju ovog programskog paketa, ono što ćete trebati učiniti ako želite da taj program radi jest to da ćete trebati instalirati verziju Microsoft Visual C++ Redistributable programa. U suprotnom taj program (ili igra) jednostavno neće raditi.
Iz razloga što se ova datoteka toliko često koristi od strane ogromnog broja aplikacija i programa, vrlo je uobičajeno za nju da često pokazuje različite greške. Ono kada ćete se vrlo često susretati s .dll greškama ovog tipa jest nakon što recimo pokrenete neke programe za chat ili pak određene igre.
MSVCR100, MSVCR71
Ova dva .dll programa istvari idu ”rukom pod ruku” s .dll programima koje smo spomenuli maloprije. Iako CP u onim prošlima odgovara C++, ovi .dll programi u sebi sadržavaju baze podataka koje su zapisane u C programskom jeziku. Brojevi u nastavku se opet razlikuju ovisno o tome o kakvom podtipu istog .dll programa se radi. Vrlo je čest slučaj da računala na sebi imaju instalirano nekoliko različitih podtipova istog .dll programa radi poboljšavanja kompatibilnosti s programima (znamo da postoje 32 i 64-bitni programi).
VCRUNTIME140
Veza ili ”Link” u imenu, to jest u Dynamic Link Library je ovdje s razlogom: jer postoji još jedan .dll koji je povezan s prva dva. Verzije 7 do 13 Visual C++ .dll-ova koriste drugačija imena za svaku verziju, što onda rezultira time da imamo slične datoteke. Počevši od verzije 14, programise moraju povezati s novim .dll-om, a .dll koji služi za takvu vrstu povezivanja naziva se VCRUNTIME, koji se mijenja sa svakom novom verzijom.
D3DX9_43
Ovo je vrsta .dll datoteke koja ima drugačiji korijen. Ono na što se ”DX” u imenu ovog .dll-a odnosi jest ništa drugo nego Microsoftov DirectX program, to jest skup malenih potprograma koji su iznimno važni za pravilan rad pojedinih programa (najčešće multimedijskih programa i aplikacija, kao što su igre). Broj 43 u imenu se odnosi na određenu verziju, tako da nije neobično da vidite ovakav .dll, ali s drugim brojem u nastavku. S obzirom da Windows računala vrlo često koriste ovakvu vrstu .dll datoteka prilikom pokretanja multimedijskih progama i najviše igara, vrlo je vjerojatno to da ćete na problem koji se odnosi na ovaj .dll naići prilikom (neuspjelog) pokušaja pokretanja igre.
Što učiniti nakon što opazimo grešku koja se odnosi na .dll datoteku?
Sada kada smo nešto više rekli o onim .dll datotekama koje su najviše podložne greškama vrijeme je da nešto kažemo i o tome kako koju od grešaka otkloniti. Iako savjeti i rješenja o kojima ćemo govoriti nisu univerzalna rješenja za sve .dll probleme, vrlo velik dio problema ćete moći riješiti ako ih budete slijedili.
Restartiranje računala
Kao i kod veliko broja ostalih problema, pa onda i kod nevolja s .dll datotekama, prva stvar koje bismo se trebali sjetiti i pokušati jest da jednostavno restartiramo računalo. Ako problem nije velik, restart će ga riješiti i nakon što se računalo ponovno podigne sve će raditi kako treba. Prije nego što restartirate računalo ne zaboravite spremiti sve ono što ste radili.
Provjera nedostaje li možda koja od .dll datoteka
Iako ovo nije vjerojatno, s obzirom na to da Windows, pogotovo Windows 10 dobro čuva .dll datoteke, može se ipak dogoditi da je nekim slučajem neka .dll datoteka izbrisana. Kako provjeriti je li neka .dll datoteka slučajno obrisana? Provjerite koš za smeće, a ako nije ondje, koristite neki od programa za vraćanje obrisanih datoteka i njime skenirajte cijelo računalo.
Instalacija nadogradnji za Windowse
S obzirom na to da se vrlo velik broj grešaka i problema s .dll datotekama odnose i na Microsoftove baze podataka, ako imate problem s kakvom .dll datotekom ne bi bilo loše provjeriti postoji li dostupna nadogradnja za Windows. U slučaju da postoji, skinite ju sa službene stranice. Ako je .dll problem bio povezan na bilo koji način s Windows bazom podataka, nadogradnja će vrlo vjerojatno riješiti ovaj problem. Problemi s .dll datotekama se čak mogu i dogoditi zbog Windowsa, pogotovo ako rijetko nadograđujete svoje Windowse.
Reinstalirajte program koji je zahvaćen .dll datotekom
Ponekad se zna dogoditi da se određeni program, aplikacija ili igra zna ili ”zaštekati” ili jednostavno ne radi zbog nekog .dll-a. Ono što je u tom slučaju dobro za učiniti jest deinstalirati i nakon toga ponovno instalirati program koji ima problem. Često se zna dogoditi da pojedine igre dovode do problema s .dll datotekama. Vi pokušavate pronaći rješenje, ali jednostavno ne možete. Tada je najbolje što možete učiniti da jednostavno deinstalirate igru, ponovno je instalirate, restartirate svoje računalo i da nakon toga pokušate ponovno pokrenuti igru.
Nadogradite baze podataka drivera (ili pogonskih programa)
Ako vidite da vam se problem s .dll datotekama (ili datotekom) pojavljuje samo kada pokrećete određeni hardver na računalu (ili ako se on sam pokrene), ono što bi tada bilo dobro učiniti jest nadograditi drivere za taj hardver. Recimo, ako vam se problem s .dll-om javlja ako pokušate pokrenuti glazbu ili ako na bilo koji drugi način pokušate koristiti zvuk na računalu, možda je potrebno skinuti drivere za zvučnu karticu. Slično je kod svakog drugog hardvera na računalu.
Napravite provjeru cjelokupnog sustava
Još jedn dobra provjera kojom možete otkriti što je točno uzrokovalo .dll problem jest putem provjere cjelokupnog sustava računala. To možete učiniti ako pokrenete SFC ili System File Checker. Kako doći do SFC-a? Kliknite na Start tipku i u traci upišite ”cmd”. Desnim klikom kliknite na rezultat i odaberite opciju ”Run as administrator”. Nakon toga unesite sljedeću naredbu: sfc /scannow i kliknite na tipku Enter.
Provjerite postoji li na vašem računalu kakav malware
Unatoč tomu što obično .dll problem ne nastaju zbog malwarea, ipak bi bilo dobro provjeriti je li možda koji štetan program uzrokovao nestanak ili problem s radom spornog .dll-a. Proskenirajte svoje računalo antivirusnim i/ili anti-malware programom da vidite nije li možda ipak nešto što ne bi trebalo biti na vašem računalu uzrokovalo i brisanje ili oštećenje na .dll datoteki.
Ponovno ”registrirajte” .dll
Još jedna stvar koja bi mogla biti rješenje vašim .dll problemima je ako idete na ”unregister” i nakon toga ponovno na ”register” .dll datoteke. Nakon što odete na ”unregister” Windows će u stvari ”zaboraviti” na taj .dll i presložiti neke stvari unutar sebe, što bi moglo riješiti problem.
Još jedan način provjere i eventualnog otklanjanja greške s .dll datotekom je putem Command Prompt naredbe. Opet odete pod Start, desnim klikom kliknete na ”cmd” i odaberete ”Run as administrator”. Nakon toga upišite ove naredbe: regsvr32 /u FILENAME.dll regsvr32 FILENAME.dll.
Što nikako ne bismo trebali raditi ako vidimo da na našem računalu postoji problem s .dll datotekama?
Velik broj korisnika, nakon što naiđu na neki problem, odu na internet i pokušaju ondje potražiti eventualno rješenje. To nije loše, ali postoji ono ali. Na nekim internetskim stranicama pronaći ćete savjete i čak neke programe za koje na toj stranici piše kako će oni sigurno riješiti sve vaše probleme s .dll datotekama. Sve što vi trebate učiniti jest skinuti određeni ponuđeni .dll s te stranice i to je navodno to. Samo što nije.
Bez obzira na to koliko se može činiti primamljivim i bez obzira na to što ćete možda htjeti pronaći ”brzo” rješenje, ipak nemojte skidati ništa s takvih stranica. Puno je razloga zbog kojih ne bi bilo dobro skidati ništa s takvih stranica, a pogotovo ne nekakve programe ili aplikacije za koje developer (ili tko već) tvrdi kako se radi o ”najboljim načinima kako riješiti problem s .dll datotekama” ili nešto slično.
Rizik od skidanja takvih programa ili bilo čega je jednostavno previsok, što znači da umjesto da riješite problem vjerojatnije je to da ćete ga samo povećati. Ne možete znati o kakvim .dll datotekama se radi, a i gotovo uvijek (u 99.99%) je sigurno da te navodno ”dobre” .dll datoteke nisu dobre i da su sumnjivog podrijetla. Najbolje (i najsigurnije) što možete učiniti ne biste li pokušali otkloniti problem s .dll datotekama jest da slijedite savjete koje smo opisali iznad. Možete samo biti na dobitku.
Problemi s nestalim ili pokvarenim .dll datotekama više nisu tako česti kao što je to bio slučaj prije deset i više godina, što ne znači da se ne znaju pojaviti. U slučaju da naiđete na probleme koji se odnose na .dll datoteke, najbolje što sami možete učiniti (pogotovo ako nemate iskustva s ovakvim stvarima) jest da slijedite upute i savjete nekoga tko ima iskustva i tko zna kako riješiti ovakve probleme.
Jeste li imali bilo kakav problem s .dll datotekama? Ako jeste, jeste li ih znali riješiti?
Piše: M.V.