Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> ข้อผิดพลาด Windows

แก้ไข: ไม่สามารถเข้าถึง Javascript / VBScript Run time สำหรับ Custom Action (Error 2738)

ผู้ใช้ Windows บางส่วนเจอข้อความข้อผิดพลาด "Error 2738. Could not access VBScript run time for custom action" หรือ "Error 2738. Could not access Javascript run time for custom action" เมื่อพยายามติดตั้งแอปพลิเคชันหนึ่งหรือหลายตัวบนคอมพิวเตอร์ Windows ปัญหานี้ยืนยันว่าเกิดบน Windows 7, Windows 8.1 และ Windows 10

แก้ไข: ไม่สามารถเข้าถึง Javascript / VBScript Run time สำหรับ Custom Action (Error 2738)

มีหลายสาเหตุที่อาจนำไปสู่รหัสข้อผิดพลาดนี้เมื่อติดตั้งแอป สาเหตุที่เป็นไปได้:

  • ขัดแย้งกับ McAfee Endpoint Security — สาเหตุที่พบบ่อยที่สุดคือขัดแย้งระหว่าง Endpoint Security Suite ของ McAfee และตัวติดตั้ง ShortTel Communication หากอยู่ในสถานการณ์นี้ สามารถแก้ได้โดยถอนการติดตั้ง Endpoint Security หรือใช้ Registry Editor ปรับคีย์บางคีย์ที่ ScriptScan ของ McAfee ใช้
  • การเปลี่ยนแปลงซอฟต์แวร์ล่าสุด — ยังมีสาเหตุอื่นๆ มากมาย ที่อาจเป็นสาเหตุจริงของข้อผิดพลาดนี้ เนื่องจากไม่มีรายการขัดแย้งที่แน่นอน วิธีที่ดีที่สุดคือคืนระบบไปสถานะก่อนเกิดข้อผิดพลาดด้วย System Restore
  • ไฟล์ vbscript.dll ไม่ได้ลงทะเบียน — หากเจอข้อผิดพลาด 'VBScript' ขณะติดตั้งแอป อาจเพราะ VB Script Engine ไม่ได้ลงทะเบียนถูกต้อง ในกรณีนี้ ควรแก้ได้โดยลงทะเบียน DLL ที่มีปัญหาใหม่จาก Command Prompt ที่มีสิทธิ์ผู้ดูแล
  • การเสียหายของไฟล์ระบบ — การเสียหายของไฟล์ระบบบางประเภทอาจขัดขวางความสามารถของระบบในการใช้ไฟล์ Dynamic Link Library ที่ต้องการตอนติดตั้ง ในกรณีนี้ อาจแก้ได้โดยรัน SFC และ DISM scans เพื่อแทนที่ไฟล์เสียหายด้วยไฟล์ที่สมบูรณ์
  • การเสียหายของไฟล์ระบบพื้นฐาน — ในกรณีรุนแรง การใช้ DISM และ SFC อาจไม่เพียงพอ วิธีแก้ที่เป็นไปได้คือรีเซ็ตทุกส่วนประกอบ Windows ที่เกี่ยวข้อง โดยติดตั้ง OS ใหม่แบบสะอาด (clean install) หรือซ่อมแซมแบบ in-place (repair install)

วิธีที่ 1: ขัดแย้งกับ Endpoint Security (ถ้ามี)

หากเจอข้อผิดพลาด 'Could not access VBScript run time for custom action' เมื่อพยายามติดตั้ง ShoreTel Communication น่าจะเป็นเพราะตัวติดตั้งขัดแย้งกับ Endpoint Security ของ McAfee

ถ้าเป็นกรณีนี้ มี 2 วิธีแก้:

  • ถอนการติดตั้ง Endpoint Security ที่ขัดแย้ง
  • ปรับค่ารีจิสทรีของ McAfee ScriptScan กลับเป็นค่าเริ่มต้น เพื่อกำจัดความขัดแย้ง

ถ้าต้องการวิธีง่ายที่สุด ควรถอนการติดตั้ง Endpoint Security tool ไม่อุดมสมบูรณ์แต่จะติดตั้ง ShoreTel Communication ได้โดยไม่ต้องแก้ Registry ทำตาม subguide A

ถ้าสะดวกกับ Registry Editor ทำตาม subguide B เพื่อปรับค่ารีจิสทรีของ McAfee ScriptScan ซึ่งจะแก้ไขความขัดแย้ง

A. ถอนการติดตั้ง Endpoint Security

  1. กด Windows key + R เปิด Run dialog พิมพ์ 'appwiz.cpl' กด Enter เปิดเมนู Programs and Featuresแก้ไข: ไม่สามารถเข้าถึง Javascript / VBScript Run time สำหรับ Custom Action (Error 2738)
  2. ในเมนู Programs and Features เลื่อนลง คลิกขวา Endpoint Security เลือก Uninstall จากเมนูบริบทแก้ไข: ไม่สามารถเข้าถึง Javascript / VBScript Run time สำหรับ Custom Action (Error 2738)
  3. ทำตามคำแนะนำถอนการติดตั้งให้เสร็จ แล้วรีบูทคอมพิวเตอร์
  4. หลังเริ่มต้นครั้งถัดไป ลองติดตั้งแอป ShoreTel Communication ใหม่ ดูว่าปัญหาแก้ไขแล้วหรือยัง

ถ้ายังเจอรหัสข้อผิดพลาดเดียวกัน ไป วิธีที่ 2

B. ปรับค่ารีจิสทรีของ McAfee Scripts Scan

  1. กด Windows key + R เปิด Run dialog พิมพ์ 'regedit' กด Enter เปิด Registry Editor เมื่อ UAC โต้ตอบ คลิก Yes ให้สิทธิ์ผู้ดูแลแก้ไข: ไม่สามารถเข้าถึง Javascript / VBScript Run time สำหรับ Custom Action (Error 2738)
  2. ใน Registry Editor ใช้เมนูซ้ายไปที่:
    HKEY_CLASSES_ROOT\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
  3. ที่ตำแหน่งที่ถูกต้อง เปลี่ยนค่า (Default) จาก McAfee ScriptScan เป็น VB Script Language
  4. ไปที่:
    HKEY_CLASSES_ROOT\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32
  5. ที่ตำแหน่งที่ถูกต้อง เปลี่ยนค่า (Default) key จาก C:\Program Files\Common Files\McAfee\SystemCore\Scriptxxxxxxxxx.dll เป็น C:\Windows\system32\vbscript.dll
  6. หลังบังคับการเปลี่ยนแปลงข้างต้น ไปที่:
    HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}
  7. เปลี่ยนค่า (Default) key จาก McAfee ScriptScan เป็น VB Script Language
  8. ไปที่ตำแหน่งรีจิสทรีสุดท้าย:
    HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{B54F3741-5B07-11cf-A4B0-00AA004A55E8}\InprocServer32
  9. เปลี่ยนค่า (Default) key จาก C:\Program Files\Common Files\McAfee\SystemCore\Scriptxxxxxxxxx.dll เป็น C:\Windows\SysWOW64\vbscript.dll
  10. หลังบังคับการเปลี่ยนแปลงทั้งหมด รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ไขแล้วหรือยัง

ถ้าวิธีนี้ไม่ได้ผล หรือยังเจอ Error 2738 เดียวกันหลังทำตามคำแนะนำข้างต้น ไปวิธีถัดไป

วิธีที่ 2: ลงทะเบียน vbscript.dll file ใหม่

หากเจอ "Error 2738. Could not access VBScript run time for custom action" หลังการติดตั้ง agent ล้มเหลว น่าจะเป็นเพราะ VB Script Engine ไม่ได้ลงทะเบียนถูกต้อง ในกรณีส่วนใหญ่ ปัญหานี้เกิดหลัง vbscript.dll ถูกปรับเปลี่ยนโดยซอฟต์แวร์บุคคลที่สาม (มักเป็นเครื่องมือ AV)

ถ้าเป็นกรณีนี้ ควรแก้ได้โดยลงทะเบียน DDL ที่มีปัญหาใหม่จาก CMD prompt ที่มีสิทธิ์ผู้ดูแล

คู่มือสั้นสำหรับการลงทะเบียน vbscript.dll ที่อาจก่อให้เกิดข้อผิดพลาดติดตั้ง 2738:

หมายเหตุ: คำแนะนำด้านล่างควรทำงานได้ไม่ว่าจะเป็น Windows 7, 8.1, หรือ 10

  1. กด Windows key + R เปิด Run dialog พิมพ์ 'cmd' กด Ctrl + Shift + Enter เปิด Command Prompt ด้วยสิทธิ์ผู้ดูแล เมื่อ UAC โต้ตอบ คลิก Yesแก้ไข: ไม่สามารถเข้าถึง Javascript / VBScript Run time สำหรับ Custom Action (Error 2738)
  2. ใน Command Prompt ที่มีสิทธิ์สูง พิมพ์คำสั่งใดคำสั่งหนึ่ง ขึ้นอยู่กับว่าใช้ Windows 32-bit หรือ 64-bit กด Enter:
     cd %windir%\system32 cd %windir%\syswow64
  3. หลังไปที่ตำแหน่งที่ถูกต้อง พิมพ์คำสั่งต่อไปนี้ กด Enter ลงทะเบียน vbscript.dll ที่มีปัญหา:
    regsvr32 vbscript.dll

    หมายเหตุ: หากเจอ "Error 2738. Could not access Javascript run time for custom action" ให้ใช้คำสั่งนี้แทน:

    regsvr32.exe jscript.dll
  4. รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ไขแล้วหรือยังหลังเริ่มต้นครั้งถัดไป

ถ้ายังเจอ "Could Not Access Javascript / VBScript Run time for Custom Action" เดียวกัน ไปวิธีถัดไป

วิธีที่ 3: รัน SFC และ DISM scans

สามารถคาดการณ์ได้ว่าจะเจอปัญหานี้จากการเสียหายบางประเภทที่ส่งผลต่อความสามารถของระบบในการใช้ไฟล์ DLL (Dynamic Link Library) หากคิดว่าสถานการณ์นี้อาจใช้ได้ ควรแก้ได้โดยใช้ยูทิลิตี 2 ตัวที่รู้จักว่าแก้ไข OS instances ที่เสียหายได้ คือ DISM (Deployment Image Servicing and Management) และ SFC (System File Checker)

ในกรณีที่สงสัยข้อมูลเสียหาย ควรเริ่มด้วยการรัน System File Checker Scan การดำเนินการนี้เป็นวิธีที่เหมาะสมที่สุดเพื่อเริ่มต้น เนื่องจากสามารถปรับใช้ scan นี้ได้แม้ไม่มีการเชื่อมต่ออินเทอร์เน็ตที่น่าเชื่อถือ ยูทิลิตีนี้ทำงานโดยใช้ archive ที่จัดเก็บในท้องถิ่น เพื่อเปรียบเทียบไฟล์ที่อาจเสียหายกับรายการไฟล์ที่สมบูรณ์

แก้ไข: ไม่สามารถเข้าถึง Javascript / VBScript Run time สำหรับ Custom Action (Error 2738)

หมายเหตุ: จำไว้ว่าการสแกนประเภทนี้ไม่ควรถูกขัดจังหวะหลังเริ่มต้น (ภายใต้สถานการณ์ใดๆ) หากปิดเครื่องหรือปิดหน้าต่าง CMD ก่อนเวลา คุณเสี่ยงที่จะสร้าง logical errors บนไดรฟ์ Windows

เมื่อ SFC scan เสร็จ รีบูทคอมพิวเตอร์ และ เริ่ม DISM scan หลังเริ่มต้นครั้งถัดไป

แก้ไข: ไม่สามารถเข้าถึง Javascript / VBScript Run time สำหรับ Custom Action (Error 2738)

หมายเหตุ: Deployment Image Servicing and Management service ใช้ส่วนประยุกต์ของ Windows Update เพื่อดาวน์โหลด healthy copies ที่จะใช้แทนที่ไฟล์ที่เสียหาย

เมื่อ scan ครั้งที่สองเสร็จ รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ไขแล้วหรือยังตอนเริ่มต้นครั้งถัดไป

ถ้าปัญหาเดียวกันยังคงอยู่ ไปวิธีถัดไป

วิธีที่ 4: ใช้ System Restore

หากปัญหานี้เริ่มเกิดเมื่อเรานี้ อาจเป็นการเปลี่ยนแปลงซอฟต์แวร์ล่าสุดที่ก่อให้เกิดปัญหากับโปรแกรมที่ต้องการใช้โครงสร้างตัวติดตั้ง เนื่องจากไม่มีวิธีชัดเจนในการระบุสาเหตุ (อาจเป็นอัปเดตซอฟต์แวร์ ไดรเวอร์ Windows update ที่ไม่ดี ขัดแย้งซอฟต์แวร์ ฯลญ) สิ่งที่ดีที่สุดคือคืนคอมพิวเตอร์ไปสถานะที่ปัญหายังไม่เกิด

วิธีที่ดีที่สุดคือใช้ System Restore คืนการติดตั้ง Windows กลับไปจุดที่แข็งแรง ซึ่งข้อผิดพลาด "Could not access VBScript run time for custom action" หรือ "Could not access Javascript run time for custom action" ยังไม่เกิดขึ้น

คู่มือขั้นตอน การใช้ system restore เพื่อ reset PC กลับสู่สถานะที่แข็งแรง

แก้ไข: ไม่สามารถเข้าถึง Javascript / VBScript Run time สำหรับ Custom Action (Error 2738)

ถ้าทำแล้วแต่ยังเจอรหัสข้อผิดพลาด 2738 เดียวกัน ไปวิธีถัดไป

วิธีที่ 5: รีเซ็ตทุกส่วนประกอบของ Windows

ถ้าไม่มีวิธีข้างต้นทำงานในสถานการณ์ของคุณ น่าจะเป็นการเสียหายของไฟล์ระบบพื้นฐานที่แก้ไขได้ยากด้วยวิธีแบบปกติ

ผู้ใช้หลายคนที่อยู่ในสถานการณ์เดียวกันรายงานว่า พวกเขาแก้ได้เฉพาะหลัง refresh ทุกส่วนประกอบ OS ที่เกี่ยวข้องกับ Windows 10 การติดตั้ง เมื่อพูดถึงการทำอย่างนี้ มี 2 ทางเลือก:

  • Repair install — วิธีที่เน้นจุดมากกว่า เนื่องจากจะ refresh ไฟล์ OS ทั้งหมดโดยไม่สูญเสียข้อมูลส่วนตัวบนไดรฟ์ OS ต้องใช้สื่อการติดตั้งที่เข้ากันได้กับเวอร์ชัน Windows แต่สามารถเก็บแอป เกม มีเดีย และการตั้งค่าผู้ใช้ที่จัดเก็บอยู่บนไดรฟ์ OS ได้
  • Clean install — ถ้าต้องการกระบวนการที่ง่ายที่สุด นี่คือมัน ไม่ต้องมีสื่อการติดตั้งที่เข้ากันได้ แต่หากไม่สำรองข้อมูลล่วงหน้าก่อนเริ่ม จะสูญเสียข้อมูลส่วนตัวทั้งหมดบนไดรฟ์ Windows