Hiba Nem található a szkriptmotor VBScript parancsfájlja

Másnap felmerült a vbs (Visual Basic Script) parancsfájlok futtatásának képtelensége a Windows 7 számítógépen. Mint kiderült, a probléma meglehetősen gyakori, és a Windows összes verziójában előfordul, kezdve az XP-vel és a Widows 8-val..

A probléma a következő: amikor bármilyen vbs szkriptet megpróbál futtatni a számítógépen, egy hiba jelenik meg:

CScript hiba: Nem található a "VBScript" szkriptmotor

vagy a Windows orosz változatában:

CScript hiba: Nem található a "VBScript" végrehajtási kernel a parancsfájlhoz

Először ellenőrizze a fájl elérhetőségét cscript.exe a katalógusban % Windir% \ system32 (általában ez c: \ Windows \ system32 \)

Ezután meg kell próbálnia a könyvtár újraregisztrálását vbscript.dll, a parancssor futtatásával (rendszergazdai jogosultságokkal)

regsvr32 / s% SystemRoot% \ System32 \ vbscript.dl

Ha a probléma az újraindítás után továbbra is fennáll, próbálkozzon a következő parancsokkal a parancssorban (regisztrálja újra az összes könyvtárat, amely a Visual Basic parancsfájlok futtatásához szükséges a számítógépen):

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 / server

Gyakran a vbs szkriptek végrehajtásának képtelenségével kapcsolatos problémát az antivírus helytelen eltávolítása okozza. A helyzet az, hogy egyes antivírusok, amikor telepítésre kerülnek a rendszerre, megváltoztatják a vbscript.dll könyvtárra mutató rendszerleíró adatbázis kulcsát, és helyett saját könyvtárat írnak. Ie Mielőtt bármilyen vbs szkriptet elindítana, először annak kódja ellenőrzi a speciális vírusvédelmi modult a biztonság szempontjából, majd csak a kód kerül végrehajtásra a vbscript.dll könyvtárba. Így az antivírus megszerzi az irányítást a gépen található összes vbs szkript végrehajtása felett.

Ha az antivírust helyesen távolítják el, akkor a kulcsértéknek vissza kell térnie a normál értékre, de néhány antivírus (gyakran a McAfee, AVAST antivírusok és a Kaspersky Lab AVP termékek vétkeztek) elfelejti ezt megtenni, vagy a felhasználó problémát okozhat az antivírus helytelen törlésével (a szokásos eltávolítási eljárás használata nélkül). )

Például ez a rendszerleíró kulcs ilyen értéket vesz fel, ha a McAfee antivírust egy számítógépre telepíti.

C: \ programfájlok \ általános fájlok \ McAfee \ SystemCore \ ScriptSn.20130508143011.dll

A kezdeti beállítások visszaállításához nyissa meg a beállításjegyzék-szerkesztőt, és lépjen a szakaszba HKEY_CLASSES_ROOT \ CLSID \ B54F3741-5B07-11cf-A4B0-00AA004A55E8 \ InprocServer32. Alapértelmezett kulcs (Alapértelmezett) nem lehet üres, és nem a vbscript.dll könyvtárra mutathat. Ha nem, akkor változtassa meg az értékét a könyvtár elérési útjára. vbscript.dll (alapértelmezés: C: \ Windows \ system32 \ vbscript.dll)

tanács. Ha a beállításjegyzék módosításainak megmentésekor a "Nem változtatható meg ... Hiba az új paraméterérték írásakor" vagy a "Hiba az érték szerkesztésekor" hiba jelenik meg, akkor fiókjának meg kell adnia a jogot a regisztrációs ág módosítására (az RMB az InprocServer32 alatt -> Engedély).

A következő szöveget egyszerűen elmentheti egy fájlba a reg kiterjesztéssel, és importálhatja a beállításjegyzékbe:

A Windows beállításjegyzék-szerkesztő 5.00-as verziója
[HKEY_CLASSES_ROOT \ CLSID \ B54F3741-5B07-11cf-A4B0-00AA004A55E8 \ InprocServer32]
@ = "C: \\ Windows \\ system32 \\ vbscript.dll"tanács. A fentiek mindegyike a HKEY_CLASSES_ROOT \ Wow6432Node \ CLSID \ B54F3741-5B07-11cf-A4B0-00AA004A55E8 ágra vonatkozik. Az InprocServer32 szakaszban az alapértelmezett értéket szintén C betűvel kell felírni: \ Windows \ system32 \ vbscript.dll

Úgy gondolom, hogy a Powershell-szkriptek egyre szélesebb körű elterjedése ellenére a legtöbb rendszergazda és szoftverfejlesztő hosszú ideig nem fogja tudni elhagyni a különféle automatizálási szkriptek felhalmozott poggyászát a vbs-en, így a leírt probléma és annak megoldási módszerei hosszú távon relevánsak..