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" szkriptmotorvagy a Windows orosz változatában:
CScript hiba: Nem található a "VBScript" végrehajtási kernel a parancsfájlhozElő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..