Neki dan sam naišao na problem nemogućnosti pokretanja bilo koje vbs (Visual Basic Script) skripte na računalu sa sustavom Windows 7. Kao što se ispostavilo, problem je prilično čest i javlja se u svim verzijama Windows-a, počevši od XP-a i završavajući s Widows 8.
Problem je sljedeći: kada pokušavate pokrenuti bilo koji vbs skriptu na računalu, pojavljuje se pogreška:
Pogreška CScript-a: Ne mogu pronaći motor skripte "VBScript"ili u ruskoj verziji sustava Windows:
Pogreška CScript-a: Ne može se pronaći jezgra izvršenja "VBScript" za skriptuPrije svega, provjerite dostupnost datoteke. datoteke Wscript.exe u katalogu % Windir% \ system32 (obično je to c: \ Windows \ system32 \)
Zatim morate pokušati ponovno registrirati knjižnicu vbscript.dll, pokretanjem u naredbenoj liniji (s povlasticama administratora)
regsvr32 / s% SystemRoot% \ System32 \ vbscript.dl
Ako se problem nastavi nakon ponovnog pokretanja, pokušajte sljedeće naredbe u naredbenom retku (ponovno registrirajte sve biblioteke potrebne za pokretanje skripti Visual Basic na računalu):
regsvr32 atl.dll regsvr32 jscript.dll regsvr32 dispex.dll regsvr32 scrrun.dll regsvr32 scrobj.dll regsvr32 vbscript.dll regsvr32 msxml3.dll regsvr32 ole32.dll regsvr32 oleaut32.dll wscript / regserver
Dosta često je problem povezan s nemogućnošću izvršavanja vbs skripti uzrokovan pogrešnim uklanjanjem antivirusa. Činjenica je da neki antivirusni programi, kada se instaliraju na sustav, mijenjaju ključ u registru koji upućuje na knjižnicu vbscript.dll, umjesto toga pišu vlastitu biblioteku. tj Prije pokretanja bilo koje vbs skripte, prvo je njezin kod provjerio poseban antivirusni modul radi sigurnosti, a tek onda se kod prenosi na izvršavanje u biblioteku vbscript.dll. Dakle, antivirus dobiva kontrolu nad izvršavanjem svih vbs skripti na uređaju.
Ako je antivirus ispravno uklonjen, ključna vrijednost trebala bi se vratiti u standardnu vrijednost, ali neki antivirusi (često su McAfee, AVAST antivirusni programi i AVP proizvodi Kaspersky Lab sagriješili) to zaboravljaju ili korisnik može stvoriti problem brisanjem antivirusa pogrešno (ne koristeći standardni postupak deinstalacije). )
Na primjer, ovaj će ključ registra uzeti takvu vrijednost kod instaliranja McAfee antivirusa na računalo.
C: \ programske datoteke \ uobičajene datoteke \ McAfee \ SystemCore \ ScriptSn.20130508143011.dll
Da biste vratili početne postavke, otvorite uređivač registra i idite na odjeljak HKEY_CLASSES_ROOT \ CLSID \ B54F3741-5B07-11cf-A4B0-00AA004A55E8 \ InprocServer32. Zadani ključ (Zadano) ne smije biti prazan ili upućivati na biblioteku koja nije vbscript.dll. Ako nije, promijenite njegovu vrijednost u putanju knjižnice. vbscript.dll (zadano je C: \ Windows \ system32 \ vbscript.dll)
vijeće. Ako, kada pokušate spremiti promjene u registar, pojavi se pogreška "Nije moguće promijeniti ... Pogreška tijekom pisanja nove vrijednosti parametra" ili "Vrijednost uređivanja pogreške", trebate dodijeliti vašem računu pravo izmjene ove grane registra (RMB pod ogrankom InprocServer32 -> Dozvola)Možete jednostavno spremiti sljedeći tekst u datoteku s reg nastavkom i uvesti je u registar:
Verzija uređivača registra Windows 5.00[HKEY_CLASSES_ROOT \ CLSID \ B54F3741-5B07-11cf-A4B0-00AA004A55E8 \ InprocServer32]
@ = "C: \\ Windows \\ system32 \\ vbscript.dll"vijeće. Sve gore navedeno odnosi se na granu HKEY_CLASSES_ROOT \ Wow6432Node \ CLSID \ B54F3741-5B07-11cf-A4B0-00AA004A55E8. U odjeljku InprocServer32 trebala bi se napisati i zadana vrijednost C: \ Windows \ system32 \ vbscript.dll
Mislim da, unatoč sve većem širenju mase Powershell-ovih skripti, većina administratora sustava i programera softvera dugo vremena neće moći napustiti nakupljenu prtljagu raznih skripti za automatizaciju na vbs-u, pa će opisani problem i metode njegovog rješavanja biti relevantni još dugo vremena.