ผู้ใช้ Windows บางส่วนรายงานว่าเห็นข้อผิดพลาด "Error 87 the Parameter is Incorrect" ทุกครั้งที่พยายามเปิดแอปพลิเคชัน ในบางกรณี ข้อความผิดพลาดคือ: "LoadLibrary failed with error 87: The parameter is incorrect." ผู้ใช้บางส่วนรายงานว่าปัญหาเกิดกับแอปหนึ่งสองตัว ในขณะที่บางคนรายงานว่า error โผล่กับเกือบทุกแอปที่พยายามเปิด ปัญหาไม่ได้จำกัด Windows เวอร์ชันใดเวอร์ชันหนึ่ง เนื่องจากยืนยันแล้วว่าพบใน Windows 7, Windows 8 และ Windows 10

สาเหตุของข้อผิดพลาด "Error 87 the Parameter is Incorrect"
เราสืบสวนจากรายงานผู้ใช้และกลยุทธ์แก้ไขที่ใช้ทั่วไป พบสาเหตุที่อาจก่อให้เกิดปัญหานี้หลายประการ:
- Software conflict ก่อให้เกิดปัญหา — มีแอปพลิเคชันหรือ 3rd party services บางตัวที่ทราบว่าก่อให้เกิดปัญหานี้หากขัดแย้งกับ display drivers หากเป็นกรณีนี้ สามารถระบุตัวทำให้เกิดปัญหาได้โดยทำ Clean Boot และเปิดใช้งานรายการที่ปิดทีละตัวอย่างเป็นระบบ
- System file corruption — ไฟล์ระบบที่เสียหายก็อาจเป็นสาเหตุของข้อผิดพลาดนี้ ผู้ใช้หลายคนที่เจอปัญหานี้รายงานว่าแก้ได้สมบูรณ์หลังทำ CHKDSK, SFC หรือ DISM scan
- Display drivers เสียหายหรือไม่ถูกต้อง — Display drivers ที่เสียหาย ไม่ถูกต้อง หรือไม่สมบูรณ์ ก็อาจก่อให้เกิดปัญหานี้ โดยเฉพาะหากขัดแย้งกับ dedicated driver หากเป็นกรณีนี้ แก้ได้โดย roll back driver หรือบังคับให้ OS ติดตั้งเวอร์ชันใหม่
- Windows Update Service เสียหาย — สาเหตุทั่วไปอีกอย่างคือ Windows Update service ที่เสียหาย โอกาสมีว่า default values ถูกแก้ไขจน entry เสียหาย ในกรณีนี้ แก้ได้โดยคืนค่า Windows Update service เป็นค่าเริ่มต้น
- Split-tunneling ถูกปิด — หาก error message เจอขณะพยายามเปิด VPN application หรือทำอย่างที่เกี่ยวข้อง อาจเพราะ split tunneling ถูกปิด หากเป็นกรณีนี้ แก้ได้โดยใช้ Powershell เปิด split tunneling
- Messaging Service ไม่สามารถปิดได้แบบปกติ — Messaging service ทราบว่าก่อให้เกิดปัญหานี้เมื่อผู้ใช้พยายามปิดมันแบบปกติบน Windows 10 ในกรณีนี้ แก้ได้โดยใช้ Registry Editor ปิดมัน
- DLL file หนึ่งหยุดการเปิดโปรแกรมตัดต่อวิดีโอ — มีปัญหาซ้ำๆ กับผู้ใช้ ATI graphics card ที่พยายามเปิดโปรแกรมตัดต่อวิดีโออย่าง Sony Vegas หรือคล้ายๆ กัน หากคุณเจอ error message ในสถานการณ์นี้ แก้ได้โดยบังคับให้ OS เพิกเฉยต่อไฟล์นั้น
วิธีที่ 1: ทำ Clean Boot
การทำ Clean Boot จะเริ่ม Windows ด้วยชุด drivers และ startup programs ขั้นต่ำ ขั้นตอนนี้ช่วยให้เรารู้ว่าปัญหาเกิดจาก software conflict ที่เกิดขึ้นเมื่อข้อความ "Error 87 the Parameter is Incorrect" โผล่
ผู้ใช้หลายคนที่หาวิธีแก้รายงานว่า error หยุดเกิดขณะอยู่ใน Clean Boot state เมื่อยืนยันว่าแอปหรือไดรเวอร์ตัวไหนทำให้เกิด error พวกเขาจึงถอด software components ที่ติดตั้งทีละตัวจนปัญหาหายแม้ Windows จะบูทปกติ
คู่มือด่วนทำ Clean Boot และหา software culprit ที่ก่อให้เกิด error message:
- ก่อนอื่น ตรวจสอบให้แน่ใจว่าล็อกอินด้วย user ที่มีสิทธิ์ Admin
- กด Windows key + R เปิดกล่อง Run พิมพ์ "msconfig" ในกล่องข้อความ กด Enter เปิดหน้าต่าง System Configuration เมื่อ UAC ถาม คลิก Yes ให้สิทธิ์ Admin

- ในหน้าต่าง System Configuration เลือกแท็บ Services จาก ribbon bar ด้านบน เริ่มต้นด้วยการติ๊กถูกกล่องที่เกี่ยวกับ Hide all Microsoft services จากนั้นเปลี่ยนความสนใจไปบริการที่เหลือด้านบน กดปุ่ม Disable all เพื่อป้องกัน 3rd party services เริ่มต้นตอนบูทครั้งต่อไป

- หลังกด Apply บันทึก เลือกแท็บ Startup คลิก Open Task Manager

- จากแท็บ Startup ของ Task Manager เลือกแต่ละ service แล้วคลิก Disable เพื่อป้องกันไม่ให้รันตอนบูทครั้งต่อไป

- ปิดรายการที่จำเป็นทั้งหมดแล้ว ปิด Task Manager และรีสตาร์ทคอมพิวเตอร์
- ตอนบูทครั้งต่อไป เครื่องจะบูทเข้าสู่ Clean Boot State
- ทำซ้ำการกระทำที่ก่อให้เกิด "Error 87 the Parameter is Incorrect" ก่อนหน้า ดูว่าปัญหาแก้ไขแล้วหรือไม่
- ถ้าขั้นตอนสำเร็จ กลับไปขั้นตอน 3 และ 5 และเปิดใช้งาน startup items & services ที่ปิดทีละตัวอย่างเป็นระบบ พร้อม reboot จนพบ culprit ของคุณ
ถ้าวิธีนี้ไม่แก้ปัญหาให้คุณ ไปวิธีถัดไปด้านล่าง
วิธีที่ 2: ทำ CHSDSK, SFC & DISM scan
ปัญหานี้อาจเกิดจาก system file corruption ที่ทำให้ display drivers ทำงานผิด ผู้ใช้หลายคนที่ต่อสู้กับปัญหาเดียวกันรายงานว่าแก้ได้หลังทำ CHKDSK, SFC หรือ DISM scan นี่คือ built-in utilities สองตัวที่รู้จักกันดีในการแก้ปัญหาที่เกี่ยวกับ system-file
คู่มือด่วนทำบนคอมพิวเตอร์ Windows ใดๆ:
- พร้อมเริ่มสแกนแล้ว กด Windows key + R เปิดกล่อง Run พิมพ์ "cmd" กด Ctrl + Shift + Enter เปิด elevated Command Prompt

หมายเหตุ: เมื่อ UAC ถาม คลิก Yes ให้สิทธิ์ Admin
- ใน elevated Command Prompt พิมพ์คำสั่งด้านล่าง กด Enter เริ่ม CHKDSK scan:
chkdsk X: /r Important: X เป็น placeholder แทนที่ด้วยตัวอักษรไดรฟ์ที่ต้องการตรวจสอบ
หมายเหตุ: CHKDSK scan จะสแกนไดรฟ์ทั้งหมดหา integrity violations และ logical errors ถ้าพบความไม่สอดคล้อง Utility จะพยายามแก้โดยซ่อม soft bad sectors และรับรองว่า hard bad sectors ไม่ถูกใช้ซ้ำ
- เสร็จสแกนแล้ว รีสตาร์ทเครื่อง ดูว่าปัญหาแก้ไขแล้วหรือไม่ตอนบูทครั้งต่อไป ถ้ายัง error เดียวกัน ไปขั้นตอนถัดไป
- ทำ Step 1 อีกครั้ง เปิด elevated Command Prompt ใหม่ พิมพ์คำสั่งด้านล่าง กด Enter เริ่ม SFC scan:
sfc /scannow
หมายเหตุ: System File Checker (SFC) utility จะสแกน protected system files ทั้งหมด และแทนที่ไฟล์ที่เสียหายที่พบ ด้วย locally stored copies ที่เก็บใน compressed folder (ตำแหน่งแน่นอนคือ (%WinDir%\System32\dllcache)
- เสร็จขั้นตอนแล้ว รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ไขแล้วหรือไม่ตอนบูทครั้งต่อไป
- ถ้ายังเจอปัญหา ทำ Step 1 อีกครั้ง เปิด elevated Command Prompt อีกครั้ง พิมพ์คำสั่งด้านล่าง กด Enter เริ่ม DISM (Deployment Image Servicing and Management) scan:
DISM.exe /Online /Cleanup-image /Restorehealth
หมายเหตุ: DISM scan ใช้ Windows Update ดึงไฟล์ที่ต้องการซ่อม corrupted occurrences ที่พบ นั่นเป็นเหตุผลที่สำคัญต้องแน่ใจว่ามี internet connection เสถียรก่อนทำขั้นสุดท้ายนี้
- เสร็จขั้นตอนแล้ว รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ไขแล้วหรือไม่ตอนบูทครั้งต่อไป
ถ้ายังเจอ "Error 87 the Parameter is Incorrect" error เดียวกัน ไปวิธีถัดไปด้านล่าง
วิธีที่ 3: Roll back (Uninstall) display drivers
ปัญหานี้อาจเกิดจาก display driver ที่เสียหายหรือไม่สมบูรณ์ ผู้ใช้บางคนที่เจอปัญหานี้รายงานว่าปัญหาหายหลังใช้ Device Manager roll back display driver (หรือ uninstall driver) ถ้าไม่มี rollback action
การทำเช่นนี้ไม่มีผลต่อคอมพิวเตอร์ในระยะยาว เพราะ Windows 10 พร้อมติดตั้ง drivers ที่หายไปกลับมาเอง
คู่มือด่วน roll back หรือ uninstall display drivers:
- กด Windows key + R เปิดกล่อง Run พิมพ์ "devmgmt.msc" กด Enter เปิด Device Manager

- ใน Device Manager ขยาย drop-down menu ที่เกี่ยวกับ Display Adapters
- คลิกขวา display adapter ของคุณ เลือก Properties จาก context menu

หมายเหตุ: ถ้าคุณมี display drivers สองตัว (dedicated และ integrated) แนะนำจัดการทั้งคู่
- ในหน้าจอ Properties ไปแท็บ Driver คลิก Roll Back Driver ทำตามพรอมป์บนหน้าจอให้เสร็จ

หมายเหตุ: ถ้า Roll Back Driver version ไม่พร้อมใช้งาน คลิก Uninstall Device แทน
- เสร็จขั้นตอนแล้ว รีสตาร์ทคอมพิวเตอร์ ตอนบูทครั้งต่อไป OS จะติดตั้งเสร็จ ถ้าดriver ถูกลบก่อนหน้า Windows จะค้นหาและติดตั้ง driver version ล่าสุดอัตโนมัติ
- ตอนที่ display driver ถูกแก้ไขแล้ว ทำซ้ำการกระทำที่ก่อให้เกิด "Error 87 the Parameter is Incorrect" error ก่อนหน้า ดูว่าปัญหายังเกิดหรือไม่
ถ้า error เดียวกันยังเกิดขึ้น ไปวิธีถัดไปด้านล่าง
วิธีที่ 4: คืนค่า Windows Update Service
หากคุณได้ "Error 87 the Parameter is Incorrect" error ขณะพยายามเริ่ม Windows Update service โอกาสมีว่า default services ถูกแก้ไขจนบาง entries เสียหาย
ผู้ใช้หลายคนที่เจอปัญหานี้รายงานว่าแก้ได้ถาวรหลังทำขั้นตอนคืนค่า default services และ settings
สำคัญ: ขั้นตอนด้านล่างใช้ได้กับ Windows 10 เท่านั้น
คู่มือด่วนคืนค่า Windows Update service:
- กด Windows key + R เปิดกล่อง Run พิมพ์ "notepad" กด Enter เปิด default text editor
- ใน Notepad utility วางโค้ดต่อไปนี้:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv] "PreshutdownTimeout"=dword:036ee800 "DisplayName"="@%systemroot%\\system32\\wuaueng.dll,-105" "ErrorControl"=dword:00000001 "ImagePath"=hex(2):25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,6f,00,6f,00,\ 74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\ 00,76,00,63,00,68,00,6f,00,73,00,74,00,2e,00,65,00,78,00,65,00,20,00,2d,00,\ 6b,00,6e,00,65,00,74,00,73,00,76,00,63,00,73,00,00,00 "Start"=dword:00000003 "Type"=dword:00000020 "Description"="@%systemroot%\\system32\\wuaueng.dll,-106" "DependOnService"=hex(7):72,00,70,00,63,00,73,00,73,00,00,00,00,00 "ObjectName"="LocalSystem" "ServiceSidType"=dword:00000001 "RequiredPrivileges"=hex(7):53,00,65,00,41,00,75,00,64,00,69,00,74,00,50,00,72,\ 00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,43,00,72,00,\ 65,00,61,00,74,00,47,00,6c,00,6f,00,62,00,61,00,6c,00,50,00,72,00,69,00,6e,\ 00,67,00,65,00,00,00,53,00,65,00,43,00,72,00,65,00,61,00,74,00,65,00,50,00,61,\ 00,67,00,65,00,46,00,69,00,6c,00,65,00,72,00,69,00,76,00,69,00,6c,00,65,00,\ 67,00,65,00,00,00,53,00,65,00,54,00,63,00,62,00,50,00,72,00,69,00,6e,00,67,00,\ 65,00,00,00,53,00,65,00,41,00,73,00,73,00,69,00,67,00,6e,00,50,00,72,00,69,00,\ 6d,00,61,00,72,00,79,00,54,00,6f,00,6b,00,65,00,6e,00,6e,00,65,00,67,00,65,\ 00,00,00,53,00,65,00,49,00,6d,00,70,00,65,00,72,00,73,00,6f,00,6e,00,61,00,\ 74,00,65,00,50,00,69,00,6e,00,67,00,65,00,67,00,65,00,00,00,53,00,65,00,53,00,\ 68,00,75,00,74,00,64,00,6f,00,77,00,6e,00,50,00,72,00,69,00,6e,00,67,00,65,00,\ 67,00,65,00,00,00,00,00 "FailureActions"=hex:80,51,01,00,00,00,00,00,00,00,00,00,03,00,00,00,14,00,00,\ 00,01,00,00,00,60,ea,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv\Parameters] "ServiceDll"=hex(2):25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,6f,00,6f,\ 00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,\ 77,00,75,00,61,00,75,00,65,00,6e,00,67,00,2e,00,64,00,6c,00,6c,00,00,00 "ServiceDllUnloadOnStop"=dword:00000001 "ServiceMain"="WUServiceMain" [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv\Security] "Security"=hex:01,00,14,80,78,00,00,00,84,00,00,00,14,00,00,00,30,00,00,00,02,\ 00,1c,00,01,01,00,00,00,00,00,02,80,14,00,ff,00,0f,00,01,01,00,00,00,00,00,\ 01,00,00,00,02,00,48,00,03,00,00,00,00,00,14,00,9d,00,02,00,01,01,00,00,00,\ 00,00,05,0b,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,\ 00,00,20,02,00,00,00,00,14,00,ff,01,0f,00,01,01,00,00,00,00,00,05,12,00,00,\ 00,01,01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv\TriggerInfo] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv\TriggerInfo\0] "Type"=dword:00000005 "Action"=dword:00000001 "Guid"=hex:e6,ca,9f,65,db,5b,a9,4d,b1,ff,ca,2a,17,8d,46,e0 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv\TriggerInfo\1] "Type"=dword:00000005 "Action"=dword:00000001 "Guid"=hex:c8,46,fb,54,89,f0,4c,46,b1,fd,59,d1,b6,2c,3b,50
- วางโค้ดแล้ว ไป ribbon ด้านบน เลือก File > Save As
- ในหน้าต่าง Save As ตั้งชื่อไฟล์อะไรก็ได้ แต่ต้องเปลี่ยน extension จาก .txt เป็น .reg ตั้งตำแหน่งสำหรับ .reg file คลิก Save
- ดับเบิลคลิกไฟล์ .reg คลิก Yes ที่ confirmation prompt เพื่อทำการเปลี่ยนแปลงที่จำเป็นใน registry
วิธีที่ 5: เปิด Split Tunneling (ถ้ามีผล)
ผู้ใช้บางส่วนรายงานว่าในกรณีของพวกเขา ปัญหาเกิดจาก Split Tunneling ถูกปิดอัตโนมัติใน Windows 10 ล่าสุดเนื่องจากข้อกังวลด้านความปลอดภัย หากคุณเจอปัญหาขณะพยายามเปิด VPN application สามารถแก้ได้โดยรันชุดคำสั่ง Powershell ที่จะช่วยเปิด Split Tunneling กลับ
สิ่งที่ต้องทำ:
- กด Windows key + R เปิดกล่อง Run พิมพ์ "powershell" กด Ctrl + Shift + Enter เปิด elevated Powershell window ถ้า UAC ถาม คลิก Yes ให้สิทธิ์ Admin

- ใน elevated Powershell prompt พิมพ์คำสั่งด้านล่าง กด Enter ดูรายละเอียด VPN Connection:
Get-VPNConnection
- จะได้รายการข้อมูล VPN รวมถึง Name และ split tunnelling feature ถ้า split tunneling feature เป็น False ให้จด name ไว้ เพราะจะต้องใช้ในขั้นตอนต่อไป

- พิมพ์คำสั่งด้านล่าง กด Enter เปิด Split Tunneling:
"Set-VPNConnection" -Name "Name of VPN" -SplitTunneling $True"
หมายเหตุ: "“Name of VPN” เป็น placeholder สำหรับชื่อ VPN ที่คุณพบในขั้นตอนที่ 3
- ประมวลผลคำสั่งสำเร็จแล้ว รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ไขแล้วหรือไม่ตอนบูทครั้งต่อไป
วิธีที่ 6: แก้ไข Registry (ถ้ามีผล)
หากคุณเจอ "Error 87 the Parameter is Incorrect" error ขณะพยายามปิด MessagingService_48ab2 service หรือ OneSyncSvc_54186de service จะแก้ได้ด้วย Registry edit แบบง่าย วิธีนี้รายงานว่ามีผลบน Windows 10 โดยเฉพาะ
คู่มือด่วนปิด MessagingService ด้วย Registry Editor:
- กด Windows key + R เปิดกล่อง Run พิมพ์ "regedit" กด Enter เปิด Registry Editor เมื่อ UAC ถาม คลิก Yes ให้สิทธิ์ Admin
- ใน Registry Editor ใช้ left-hand pane ไปที่ตำแหน่งใดตำแหน่งหนึ่งของสองตำแหน่งนี้ (ขึ้นอยู่กับ service ที่ต้องการปิด):
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OneSyncSvc_48ab2 Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OneSyncSvc_54186de
- 到了 right key ไป right-hand side ดับเบิลคลิก Start DWORD
- ตั้ง Base เป็น Hexadecimal แล้วตั้ง Value data เป็น 4 (Disabled)

- ปิด Registry Editor รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ไขแล้วหรือไม่ตอนบูทครั้งต่อไป
ถ้าปัญหายังคงเกิดขึ้น ไปวิธีถัดไปด้านล่าง
วิธีที่ 7: เปลี่ยนชื่อไฟล์ atig6pxx.dll
หากคุณเจอ "Error LoadLibrary failed with error 87: The parameter is incorrect error" ขณะพยายามเปิด Vegas Pro หรือโปรแกรมตัดต่อคล้ายๆ และคุณมี ATI graphics card คุณอาจประสบปัญหาซ้ำๆ ที่ส่งผลต่อผู้ใช้จำนวนมากในสถานการณ์คล้ายกัน
ผู้ใช้หลายคนที่เจอปัญหานี้รายงานว่าแก้ได้โดยแก้ไข DLL file ชื่อ atig6pxx.dll หลังทำแล้ว รายงานว่าเปิดโปรแกรมตัดต่อที่ล้มเหลวกับ error นี้ได้แล้ว
สิ่งที่ต้องทำ:
- ใช้ search function บน Windows taskbar ค้นหา "atig6pxx.dll" สามารถกด Windows key + S เปิด Search function ทันที
- จากผลลัพธ์ คลิกขวา atig6pxx.dll เลือก Open File Location ควรนำไปยัง System32 folder โดยตรง
- คลิกขวาไฟล์ atig6pxx.dll เลือก Rename เพิ่ม extension .bak ท้าย extension .dll จะสั่งให้ OS เพิกเฉยต่อไฟล์นี้ คลิก Yes ที่ confirmation prompt แล้ว Yes อีกครั้งถ้า UAC ถาม

หมายเหตุ: ถ้า extensions ไม่อยู่เห็นได้ตั้งแต่แรก ไป ribbon bar ด้านบน File Explorer คลิก View ตรวจสอบให้แน่ใจว่ากล่องที่เกี่ยวกับ File name extensions เปิดใช้งาน

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