จะแก้ไขปัญหาป๊อปอัป MEM_BAD_POINTER ได้อย่างไร
เผยแพร่แล้ว: 2021-02-15ข้อผิดพลาด MEM_BAD_POINTER เป็นปัญหาที่ท้าทายในการสรุป โดยปกติจะปรากฏขึ้นเมื่อเริ่มต้นระบบในหน้าต่างโต้ตอบและจะหายไปเมื่อคุณคลิกที่ปุ่ม ตกลง เพื่อแสดงขึ้นอีกครั้งในการรีบูตครั้งถัดไป
ข้อผิดพลาดเกี่ยวข้องกับไลบรารี SmartHeap ซึ่งจัดการหน่วยความจำระบบ และบ่งชี้ว่ามีบางอย่างผิดปกติกับแอปพลิเคชันที่ขึ้นอยู่กับไลบรารี ข้อผิดพลาดยังเป็นอาการของความไม่ลงรอยกันของระบบปฏิบัติการ
ห้องสมุด SmartHeap คืออะไร?
SmartHeap เป็นเทคโนโลยีเก่าที่ใช้ในการปรับหน่วยความจำระบบให้เหมาะสม มันถูกใช้ในระบบปฏิบัติการรุ่นเก่าที่ไม่สามารถเพิ่มการจัดสรรหน่วยความจำให้สูงสุดในสภาพแวดล้อมแบบมัลติโปรเซสเซอร์และมัลติเธรด โปรแกรมเก่าจำนวนมากใช้เครื่องมือนี้เพื่อรวบรวมไฟล์และโมดูล
ทุกวันนี้แทบไม่มีโปรแกรมใดที่ต้องใช้เครื่องมือจัดการหน่วยความจำ หากคุณเห็นข้อผิดพลาด นั่นเป็นเพราะคุณได้ติดตั้ง Adobe Acrobat, AutoCAD หรือ CorelDraw เวอร์ชันเก่า
อะไรทำให้เกิดข้อผิดพลาด MEM_BAD_POINTER
ตอนนี้คุณทราบแล้วว่าหากคุณเห็นข้อผิดพลาด แสดงว่าคุณมีโปรแกรมเก่าติดตั้งอยู่ในระบบของคุณ สาเหตุของข้อผิดพลาดสามารถตรวจสอบได้จากโปรแกรมนั้นๆ ต่อไปนี้เป็นคำอธิบายสั้น ๆ เกี่ยวกับปัญหาราก:
ความเข้ากันไม่ได้ของโปรแกรม
ระบบปฏิบัติการสมัยใหม่ไม่เห็นด้วยกับแอปพลิเคชันรุ่นเก่าเสมอไป แม้ว่า Windows เวอร์ชันใหม่จะไม่มีปัญหาในการเรียกใช้แอปเก่า แต่ Microsoft และนักพัฒนาแอปอาจละทิ้งการสนับสนุนแอปเหล่านั้น ส่งผลให้เกิดปัญหาเล็กน้อยระหว่างโปรแกรมและระบบปฏิบัติการของคุณ
การติดตั้งที่เสียหาย
การมีแอปพลิเคชันรุ่นเก่าที่อาจไม่ซิงค์กับระบบปฏิบัติการเป็นเรื่องหนึ่ง แต่การติดตั้งผิดพลาดเป็นอีกเรื่องหนึ่ง นอกจากนั้น ไฟล์ของโปรแกรมอาจถูกมัลแวร์โจมตีหรือระบบขัดข้องอื่นๆ ทำให้เกิดข้อผิดพลาด SmartHeap Library
การเปลี่ยนแปลงระบบ
สมมติว่าคุณใช้แอปพลิเคชันรุ่นเก่ามาระยะหนึ่งแล้ว ในกรณีดังกล่าว การเปลี่ยนแปลงล่าสุด เช่น การติดตั้งซอฟต์แวร์ใหม่ การอัปเดตใหม่ หรือแม้แต่การติดตั้งไดรเวอร์ใหม่ อาจทำให้เกิดข้อผิดพลาด การอัปเกรดนั้นไม่เอื้ออำนวยต่อแอปพลิเคชันรุ่นเก่า เนื่องจากอาจแนะนำการตั้งค่าบางอย่างที่ไม่ได้รวมเข้ากับโค้ดของแอป
ข้อขัดแย้งในการสมัคร
แอปพลิเคชันอื่นๆ ในระบบของคุณ โดยเฉพาะโปรแกรมเริ่มต้นและบริการ อาจขัดแย้งกับโปรแกรมรุ่นเก่า คุณสามารถค้นหาว่าแอปใดทำให้เกิดข้อขัดแย้งและแก้ไขปัญหาได้ คุณจะได้ทราบวิธีการทำในภายหลัง
คีย์รีจิสทรีที่มีปัญหา
บางโปรแกรมทิ้งรีจิสตรีคีย์ไว้เบื้องหลังหลังจากถอนการติดตั้งแล้ว ข้อผิดพลาดเกิดขึ้นเมื่อใดก็ตามที่คีย์รีจิสทรีพยายามเรียกโปรแกรมที่ไม่สามารถใช้งานได้อีกต่อไป การล้างคีย์รีจิสทรีที่ไม่ถูกต้องควรแก้ไขปัญหาทันที
วิธีแก้ไขปัญหา MEM_BAD_POINTER
เมื่อคุณได้ทำความคุ้นเคยกับสาเหตุที่เป็นไปได้ของข้อผิดพลาดแล้ว ก็ถึงเวลาแก้ไขปัญหาเหล่านั้นและกำจัดมันให้หมดไป
แก้ไขแอปพลิเคชันรุ่นเก่าหรือถอนการติดตั้ง
ข้อผิดพลาด MEM_BAD_POINTER บ่งชี้ว่าคุณมีโปรแกรมเก่าที่อาศัยไลบรารี SmartHeap นอกจากนี้ยังเป็นสัญญาณว่าโปรแกรมมีปัญหาหรือไม่เข้ากันกับระบบปฏิบัติการของคุณ ดังนั้น การดำเนินการแรกของคุณคือการซ่อมแซมแอปพลิเคชัน
การซ่อมโปรแกรมทำได้ง่าย คุณต้องผ่านหน้าต่างโปรแกรมและคุณลักษณะในแผงควบคุม ทำตามขั้นตอนเหล่านี้:
- กดปุ่มแป้นพิมพ์ Windows และ R พร้อมกันหรือคลิกขวาที่ปุ่ม Start แล้วเลือก Run เมื่อเมนู Power User เปิดขึ้น
- หลังจากหน้าต่างโต้ตอบเรียกใช้เปิดขึ้น ให้พิมพ์ "แผงควบคุม" ลงในช่องข้อความแล้วคลิกปุ่มตกลง
- หลังจากหน้าต่าง Control Panel ปรากฏขึ้น ให้คลิกที่ Uninstall a Program ภายใต้ Programs
- หน้าต่างโปรแกรมและคุณลักษณะจะปรากฏขึ้น
- ถัดไป ค้นหาโปรแกรม คลิกขวาที่โปรแกรม จากนั้นคลิกที่ Repair
- ทำตามคำแนะนำที่ตามมาในตัวช่วยสร้างเพื่อดำเนินการให้เสร็จสิ้น
หากคุณไม่เห็นตัวเลือกการซ่อมแซม คุณต้องถอนการติดตั้งแอปพลิเคชันและติดตั้งอีกครั้ง ยังดีกว่าคุณสามารถใช้โปรแกรมเวอร์ชันล่าสุดที่พัฒนาขึ้นเพื่อทำงานร่วมกับระบบปฏิบัติการปัจจุบันของคุณได้
เรียกใช้แอปพลิเคชันรุ่นเก่าในโหมดความเข้ากันได้
เรากล่าวว่าข้อผิดพลาดอาจปรากฏขึ้นเนื่องจากปัญหาความเข้ากันได้ หากคุณกำลังใช้งานแอปพลิเคชันรุ่นเก่าบนพีซีที่ใช้ Windows 10 นั่นอาจเป็นปัญหาได้ เนื่องจากระบบปฏิบัติการอาจไม่รองรับแอปอย่างสมบูรณ์ ที่กล่าวว่า Windows 10 มาพร้อมกับคุณสมบัติที่ช่วยให้คุณเรียกใช้แอพในสภาพแวดล้อม Windows ที่เก่ากว่า Windows 8 หรือ 7 ควรมีการสนับสนุนที่ดีกว่าสำหรับแอป ดังนั้นการเรียกใช้แอปในโหมดความเข้ากันได้สำหรับเวอร์ชันใดๆ เหล่านี้อาจเห็นข้อผิดพลาดหายไปได้ดี
หากคุณไม่ทราบวิธีเรียกใช้โปรแกรมในโหมดความเข้ากันได้ ให้ทำตามขั้นตอนเหล่านี้:
- คลิกขวาที่ทางลัดบนเดสก์ท็อปของแอปแล้วคลิกคุณสมบัติในเมนูบริบท
- หากแอปไม่มีทางลัดบนเดสก์ท็อป ให้ทำตามขั้นตอนเหล่านี้:
- กดปุ่มแป้นพิมพ์ Windows และ S พร้อมกันเพื่อเปิดฟังก์ชันการค้นหา
- ค้นหาโปรแกรม
- เมื่อมันปรากฏในผลการค้นหา ให้คลิกขวา เลือก เพิ่มเติม แล้วคลิก เปิดตำแหน่งไฟล์
- คุณจะเห็นโฟลเดอร์ที่มีทางลัดของโปรแกรม
- คลิกขวาที่ทางลัดแล้วคลิกเปิดตำแหน่งไฟล์ในเมนูบริบท
- เมื่อโฟลเดอร์การติดตั้งของแอปเปิดขึ้น ให้ไปที่ไฟล์ปฏิบัติการ (ไฟล์ที่มีนามสกุล EXE) แล้วคลิกขวา
- เลือกคุณสมบัติเมื่อเมนูบริบทเลื่อนลง
- หลังจากหน้าต่างโต้ตอบคุณสมบัติเปิดขึ้น ให้สลับไปที่แท็บความเข้ากันได้
- ถัดไป ทำเครื่องหมายที่ช่องทำเครื่องหมาย "เรียกใช้โปรแกรมนี้ในโหมดความเข้ากันได้สำหรับ" จากนั้นเลือก Windows 8 หรือ Windows 7
- หลังจากนั้นให้คลิกที่ปุ่ม OK
- ตรวจสอบว่าปัญหาเกิดขึ้นอีกหรือไม่
ทำความสะอาดรีจิสทรีของระบบ
รีจิสตรีคีย์ที่เหลือบางอันทำให้เกิดปัญหาเป็นครั้งคราว หากคุณมีแอปรุ่นเก่าแต่ถอนการติดตั้งไปแล้ว รีจิสตรีคีย์ที่เหลือบางส่วนอาจทำให้เกิดข้อผิดพลาด นอกจากนี้ยังอาจเป็นไปได้ว่ารีจิสตรีคีย์ของแอปพลิเคชันอื่นขัดแย้งกับแอปรุ่นเก่าและทำให้เกิดปัญหา MEM_BAD_POINTER
ในกรณีนี้ คุณต้องค้นหาคีย์รีจิสทรีเหล่านั้นและล้างออกเพื่อแก้ไขปัญหา
โปรดทราบว่าการลงทะเบียนระบบเป็นส่วนที่ละเอียดอ่อนและขั้นสูงของระบบปฏิบัติการของคุณ คุณสามารถก่อให้เกิดความเสียหายที่ไม่สามารถแก้ไขได้ หากคุณไม่มีความรู้เพียงพอและเข้าไปยุ่งเกี่ยวกับมัน
เราขอแนะนำให้คุณใช้แอปพลิเคชันพิเศษที่ออกแบบมาเพื่อค้นหาคีย์ที่มีปัญหาเหล่านี้และกำจัดมันทิ้งไป ขอแนะนำ Auslogics Registry Cleaner โปรแกรมนี้เป็นมิตรกับมือใหม่และผู้เชี่ยวชาญ หากคุณไม่ทราบวิธีปรับแต่งรีจิสทรีของ Windows เครื่องมือนี้จะจำกัดขอบเขตให้เหลือเฉพาะการทำงานพื้นฐานเท่านั้นที่ปลอดภัยทั้งหมด
ที่กล่าวว่าสิ่งแรกที่คุณควรทำคือสำรองข้อมูลรีจิสทรีทั้งหมด วิธีนี้จะทำให้ระบบของคุณกลับมาเป็นปกติได้อย่างรวดเร็วหากมีสิ่งผิดปกติเกิดขึ้น
ขั้นตอนเหล่านี้จะแสดงวิธีสำรองข้อมูลรีจิสทรี:
- กดปุ่มโลโก้ Windows และปุ่ม R พร้อมกันหรือคลิกขวาที่ปุ่ม Start แล้วเลือก Run จากเมนู Power User
- หลังจากหน้าต่างโต้ตอบ Run เปิดขึ้น ให้พิมพ์ regedit แล้วคลิก OK
- คลิกใช่ในกล่องโต้ตอบการควบคุมบัญชีผู้ใช้
- เมื่อคุณเห็นหน้าต่าง Registry Editor ให้คลิกที่ File ที่มุมบนซ้าย
- คลิกที่ส่งออก
- หลังจากหน้าต่างโต้ตอบส่งออกไฟล์รีจิสทรีเปิดขึ้น ให้ไปที่โฟลเดอร์ที่คุณต้องการบันทึกข้อมูลสำรอง เลือกชื่อไฟล์ จากนั้นเลือกทั้งหมดภายใต้ช่วงการส่งออก
- หลังจากนั้นให้คลิกที่ปุ่มบันทึก
- เมื่อใดก็ตามที่คุณต้องการคืนค่ารีจิสทรี ให้เปิด Registry Editor แล้วคลิก File >> Import
- ถัดไป ไปที่โฟลเดอร์ที่คุณบันทึกไฟล์สำรองไว้และโหลดมัน
เมื่อคุณสำรองข้อมูลรีจิสทรีแล้ว ให้ไปที่หน้าเว็บอย่างเป็นทางการของ Auslogics Registry Cleaner และดาวน์โหลดไฟล์ติดตั้งของโปรแกรม หลังจากดาวน์โหลดไฟล์ติดตั้งแล้ว ให้เรียกใช้ คลิกใช่ในกล่องโต้ตอบการควบคุมบัญชีผู้ใช้เพื่อให้วิซาร์ดการตั้งค่าทำงาน

เมื่อวิซาร์ดการตั้งค่าปรากฏขึ้น ให้เลือกการตั้งค่าของคุณ เช่น ภาษาและตำแหน่งการติดตั้งที่ต้องการ จากนั้นยอมรับใบอนุญาต เมื่อวิซาร์ดติดตั้งเสร็จสิ้น ให้รีสตาร์ทระบบของคุณ
หลังจากที่ระบบของคุณรีสตาร์ทแล้ว ให้เปิดโปรแกรม คลิกที่ปุ่ม Scan Now และปล่อยให้ตัวเลือก Back Up Changes ถูกทำเครื่องหมายไว้ กระบวนการควรเริ่มต้นขึ้น ระยะเวลาของการสแกนจะขึ้นอยู่กับเนื้อหาของรีจิสทรีและความเร็วของระบบ
เมื่อการสแกนเสร็จสิ้น โปรแกรมจะแสดงรายการปัญหาที่พบ โดยมีระดับความรุนแรงของแต่ละปัญหาอยู่ข้างๆ หลังจากนั้นให้คลิกที่ตัวเลือกการซ่อมแซมเพื่อให้เครื่องมือสามารถแก้ไขปัญหาที่ตรวจพบได้ คุณจะเห็นความคืบหน้าของกระบวนการซ่อมแซม และโปรแกรมจะแจ้งให้คุณทราบสถานะของปัญหารีจิสทรีเหล่านั้นเมื่อเสร็จสิ้น คุณอาจเห็นโฆษณาเกี่ยวกับผลิตภัณฑ์อื่นๆ จากนักพัฒนาโปรแกรม
ทำการคืนค่าระบบ
หากคุณเพิ่งเริ่มประสบปัญหากับแอปพลิเคชันรุ่นเก่า แสดงว่าการเปลี่ยนแปลงล่าสุดที่เกิดขึ้นกับระบบของคุณทำให้เกิดปัญหาที่เป็นปัญหา อาจเป็นโปรแกรมซอฟต์แวร์ใหม่ ไดรเวอร์ หรือการอัปเดตระบบ
คุณสามารถแก้ไขปัญหาได้โดยคืนค่าคอมพิวเตอร์ของคุณเป็นวันที่ก่อนหน้า โปรดทราบว่าจะต้องมีจุดคืนค่าที่บันทึกไว้ก่อนที่คุณจะสามารถกู้คืนระบบของคุณได้ โชคดีที่ Windows มักจะสร้างจุดคืนค่าอัตโนมัติเมื่อคุณทำการเปลี่ยนแปลงที่สำคัญกับระบบของคุณ
ขั้นตอนด้านล่างจะแสดงวิธีการคืนค่าระบบ:
- คลิกขวาที่โลโก้ Windows ในทาสก์บาร์ แล้วคลิก File Explorer หรือกดปุ่มแป้นพิมพ์ Windows และ E พร้อมกัน
- หลังจากหน้าต่าง File Explorer เปิดขึ้น ให้ไปที่แถบด้านข้างซ้ายแล้วคลิกขวาที่พีซีเครื่องนี้
- เลือกคุณสมบัติจากเมนูบริบท
- หลังจากที่หน้าต่าง System เปิดขึ้น ให้คลิกที่ System Protection ทางด้านซ้าย
- แท็บการป้องกันระบบของหน้าต่างโต้ตอบคุณสมบัติของระบบจะปรากฏขึ้น
เคล็ดลับ: คุณสามารถใช้ฟังก์ชันการค้นหาของเมนูเริ่มเพื่อเรียกกล่องโต้ตอบคุณสมบัติของระบบ เพียงเปิด Start แล้วพิมพ์ "system restore" จากนั้นคลิกที่ "Create a Restore Point"
- คลิกที่ปุ่มการคืนค่าระบบ
- เมื่อวิซาร์ด System Restore เปิดขึ้นให้คลิกที่ Next
- เลือกจุดคืนค่าแล้วคลิกถัดไปอีกครั้ง
- หลังจากนั้น คลิกที่ปุ่ม เสร็จสิ้น และอนุญาตให้ Windows กู้คืนพีซีของคุณ
- ตรวจสอบปัญหาหลังจากดำเนินการเสร็จสิ้น
ทำการคลีนบูต
หากการแก้ไขข้างต้นไม่ได้ผล การดำเนินการต่อไปของคุณควรตรวจสอบการรบกวนแอปพลิเคชัน ในการทำเช่นนั้น คุณต้องทำคลีนบูต
การดำเนินการคลีนบูตเกี่ยวข้องกับการปิดใช้งานแอปพลิเคชันและบริการที่ออกแบบมาเพื่อโหลดทุกครั้งที่ระบบของคุณเริ่มทำงาน ด้วยวิธีนี้ คุณจะพบว่ามีแอปพลิเคชันบางตัวที่ทำให้เกิดข้อผิดพลาดหรือไม่ คุณยังสามารถใช้เทคนิคคลีนบูตเพื่อระบุแอปหรือบริการที่รับผิดชอบได้
ทำตามขั้นตอนเหล่านี้เพื่อดำเนินการคลีนบูต:
- ไปที่เมนู Start ค้นหา Run จากนั้นเปิดโปรแกรม คุณยังสามารถแตะปุ่มแป้นพิมพ์ Windows และ R เพื่อเปิด Run
- หลังจาก Run เปิดขึ้นให้พิมพ์ msconfig จากนั้นกดปุ่ม Enter
- เมื่อหน้าต่างโต้ตอบการกำหนดค่าระบบเปิดขึ้น ให้ไปที่แท็บบริการ
- ทำเครื่องหมายในช่องที่ระบุว่า "ซ่อนบริการของ Microsoft ทั้งหมด"
- จากนั้นคลิกที่ปุ่มปิดการใช้งานทั้งหมด
- หลังจากนั้นไปที่แท็บ Startup แล้วคลิก Open Task Manager
- ใต้แท็บ Startup ของ Task Manager ให้เลือกแต่ละโปรแกรมแล้วคลิก Disable
- เมื่อคุณปิดการใช้งานทุกโปรแกรมภายใต้แท็บ Startup ของ Task Manager แล้ว ให้กลับไปที่ไดอะล็อก System Configuration แล้วคลิก OK
- รีสตาร์ทระบบของคุณ
หากข้อผิดพลาดไม่ปรากฏขึ้นหลังจากที่ระบบของคุณเริ่มทำงาน คุณจะต้องค้นหาโปรแกรมที่ทำให้เกิดข้อผิดพลาดดังกล่าวก่อนหน้านี้ ในการทำเช่นนั้น ให้เปิดใช้งานบริการหนึ่งและรีสตาร์ทระบบของคุณเพื่อตรวจสอบว่ามีข้อผิดพลาดปรากฏขึ้นหรือไม่ ดำเนินการบริการที่เหลือต่อไปจนกว่าแอปที่มีปัญหาจะทำให้เกิดข้อผิดพลาดอีกครั้ง
คุณสามารถทำตามขั้นตอนเหล่านี้ได้หากการดูแอปทีละแอปทำงานหนักเกินไป:
- เปิดหน้าต่างการกำหนดค่าระบบและสลับไปที่แท็บบริการ
- ยกเลิกการเลือกครึ่งแรกของบริการที่คุณปิดใช้งานก่อนหน้านี้ จากนั้นคลิกที่ปุ่ม ปิดใช้งานทั้งหมด บริการเริ่มต้นในช่วงครึ่งหลังจะป้องกันไม่ให้โหลดหลังจากรีบูตครั้งถัดไป
- หากกล่องโต้ตอบข้อผิดพลาดไม่ปรากฏขึ้น แสดงว่าบริการใดที่คุณไม่ได้เลือกจะไม่รับผิดชอบ ยกเลิกการเลือกบริการที่เหลือ คลิกที่ ปิดใช้งาน จากนั้นรีสตาร์ทระบบของคุณ
- หากข้อผิดพลาดปรากฏขึ้นในครั้งแรกที่คุณรีสตาร์ทระบบ แสดงว่าหนึ่งในบริการในครึ่งแรกของรายการคือสิ่งที่คุณต้องการ คุณไม่จำเป็นต้องตรวจสอบรายการเริ่มต้นอื่นๆ อีกต่อไป อย่างไรก็ตาม ในบางกรณี มากกว่าหนึ่งแอปอาจทำให้เกิดข้อผิดพลาดได้
เมื่อคุณพบแอปที่รับผิดชอบแล้ว ให้กำจัดหรืออัปเดตแอป
บทสรุป
นั่นคือวิธีแก้ไขข้อผิดพลาด mem_bad_pointer ใน Windows 10 คุณสามารถใช้ส่วนความคิดเห็นด้านล่างเพื่อแบ่งปันความคิดและคำถามของคุณ หากคุณสับสนในสิ่งใดสิ่งหนึ่ง

ปกป้องพีซีจากภัยคุกคามด้วย Anti-Malware
ตรวจสอบพีซีของคุณเพื่อหามัลแวร์ที่แอนตี้ไวรัสของคุณอาจพลาด และรับการคุกคามออกอย่างปลอดภัยด้วย Auslogics Anti-Malware
เราขอแนะนำให้คุณใช้โปรแกรมป้องกันไวรัสที่มีประสิทธิภาพหากคุณไม่มี ปัญหาเช่นนี้อาจเป็นผลมาจากการติดมัลแวร์