จะแก้ไขปัญหาป๊อปอัป 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 นอกจากนี้ยังเป็นสัญญาณว่าโปรแกรมมีปัญหาหรือไม่เข้ากันกับระบบปฏิบัติการของคุณ ดังนั้น การดำเนินการแรกของคุณคือการซ่อมแซมแอปพลิเคชัน

การซ่อมโปรแกรมทำได้ง่าย คุณต้องผ่านหน้าต่างโปรแกรมและคุณลักษณะในแผงควบคุม ทำตามขั้นตอนเหล่านี้:

  1. กดปุ่มแป้นพิมพ์ Windows และ R พร้อมกันหรือคลิกขวาที่ปุ่ม Start แล้วเลือก Run เมื่อเมนู Power User เปิดขึ้น
  2. หลังจากหน้าต่างโต้ตอบเรียกใช้เปิดขึ้น ให้พิมพ์ "แผงควบคุม" ลงในช่องข้อความแล้วคลิกปุ่มตกลง
  3. หลังจากหน้าต่าง Control Panel ปรากฏขึ้น ให้คลิกที่ Uninstall a Program ภายใต้ Programs
  4. หน้าต่างโปรแกรมและคุณลักษณะจะปรากฏขึ้น
  5. ถัดไป ค้นหาโปรแกรม คลิกขวาที่โปรแกรม จากนั้นคลิกที่ Repair
  6. ทำตามคำแนะนำที่ตามมาในตัวช่วยสร้างเพื่อดำเนินการให้เสร็จสิ้น

หากคุณไม่เห็นตัวเลือกการซ่อมแซม คุณต้องถอนการติดตั้งแอปพลิเคชันและติดตั้งอีกครั้ง ยังดีกว่าคุณสามารถใช้โปรแกรมเวอร์ชันล่าสุดที่พัฒนาขึ้นเพื่อทำงานร่วมกับระบบปฏิบัติการปัจจุบันของคุณได้

เรียกใช้แอปพลิเคชันรุ่นเก่าในโหมดความเข้ากันได้

เรากล่าวว่าข้อผิดพลาดอาจปรากฏขึ้นเนื่องจากปัญหาความเข้ากันได้ หากคุณกำลังใช้งานแอปพลิเคชันรุ่นเก่าบนพีซีที่ใช้ Windows 10 นั่นอาจเป็นปัญหาได้ เนื่องจากระบบปฏิบัติการอาจไม่รองรับแอปอย่างสมบูรณ์ ที่กล่าวว่า Windows 10 มาพร้อมกับคุณสมบัติที่ช่วยให้คุณเรียกใช้แอพในสภาพแวดล้อม Windows ที่เก่ากว่า Windows 8 หรือ 7 ควรมีการสนับสนุนที่ดีกว่าสำหรับแอป ดังนั้นการเรียกใช้แอปในโหมดความเข้ากันได้สำหรับเวอร์ชันใดๆ เหล่านี้อาจเห็นข้อผิดพลาดหายไปได้ดี

หากคุณไม่ทราบวิธีเรียกใช้โปรแกรมในโหมดความเข้ากันได้ ให้ทำตามขั้นตอนเหล่านี้:

  1. คลิกขวาที่ทางลัดบนเดสก์ท็อปของแอปแล้วคลิกคุณสมบัติในเมนูบริบท
  2. หากแอปไม่มีทางลัดบนเดสก์ท็อป ให้ทำตามขั้นตอนเหล่านี้:
  • กดปุ่มแป้นพิมพ์ Windows และ S พร้อมกันเพื่อเปิดฟังก์ชันการค้นหา
  • ค้นหาโปรแกรม
  • เมื่อมันปรากฏในผลการค้นหา ให้คลิกขวา เลือก เพิ่มเติม แล้วคลิก เปิดตำแหน่งไฟล์
  • คุณจะเห็นโฟลเดอร์ที่มีทางลัดของโปรแกรม
  • คลิกขวาที่ทางลัดแล้วคลิกเปิดตำแหน่งไฟล์ในเมนูบริบท
  • เมื่อโฟลเดอร์การติดตั้งของแอปเปิดขึ้น ให้ไปที่ไฟล์ปฏิบัติการ (ไฟล์ที่มีนามสกุล EXE) แล้วคลิกขวา
  • เลือกคุณสมบัติเมื่อเมนูบริบทเลื่อนลง
  1. หลังจากหน้าต่างโต้ตอบคุณสมบัติเปิดขึ้น ให้สลับไปที่แท็บความเข้ากันได้
  2. ถัดไป ทำเครื่องหมายที่ช่องทำเครื่องหมาย "เรียกใช้โปรแกรมนี้ในโหมดความเข้ากันได้สำหรับ" จากนั้นเลือก Windows 8 หรือ Windows 7
  3. หลังจากนั้นให้คลิกที่ปุ่ม OK
  4. ตรวจสอบว่าปัญหาเกิดขึ้นอีกหรือไม่

ทำความสะอาดรีจิสทรีของระบบ

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

ในกรณีนี้ คุณต้องค้นหาคีย์รีจิสทรีเหล่านั้นและล้างออกเพื่อแก้ไขปัญหา

โปรดทราบว่าการลงทะเบียนระบบเป็นส่วนที่ละเอียดอ่อนและขั้นสูงของระบบปฏิบัติการของคุณ คุณสามารถก่อให้เกิดความเสียหายที่ไม่สามารถแก้ไขได้ หากคุณไม่มีความรู้เพียงพอและเข้าไปยุ่งเกี่ยวกับมัน

เราขอแนะนำให้คุณใช้แอปพลิเคชันพิเศษที่ออกแบบมาเพื่อค้นหาคีย์ที่มีปัญหาเหล่านี้และกำจัดมันทิ้งไป ขอแนะนำ Auslogics Registry Cleaner โปรแกรมนี้เป็นมิตรกับมือใหม่และผู้เชี่ยวชาญ หากคุณไม่ทราบวิธีปรับแต่งรีจิสทรีของ Windows เครื่องมือนี้จะจำกัดขอบเขตให้เหลือเฉพาะการทำงานพื้นฐานเท่านั้นที่ปลอดภัยทั้งหมด

ที่กล่าวว่าสิ่งแรกที่คุณควรทำคือสำรองข้อมูลรีจิสทรีทั้งหมด วิธีนี้จะทำให้ระบบของคุณกลับมาเป็นปกติได้อย่างรวดเร็วหากมีสิ่งผิดปกติเกิดขึ้น

ขั้นตอนเหล่านี้จะแสดงวิธีสำรองข้อมูลรีจิสทรี:

  1. กดปุ่มโลโก้ Windows และปุ่ม R พร้อมกันหรือคลิกขวาที่ปุ่ม Start แล้วเลือก Run จากเมนู Power User
  2. หลังจากหน้าต่างโต้ตอบ Run เปิดขึ้น ให้พิมพ์ regedit แล้วคลิก OK
  3. คลิกใช่ในกล่องโต้ตอบการควบคุมบัญชีผู้ใช้
  4. เมื่อคุณเห็นหน้าต่าง Registry Editor ให้คลิกที่ File ที่มุมบนซ้าย
  5. คลิกที่ส่งออก
  6. หลังจากหน้าต่างโต้ตอบส่งออกไฟล์รีจิสทรีเปิดขึ้น ให้ไปที่โฟลเดอร์ที่คุณต้องการบันทึกข้อมูลสำรอง เลือกชื่อไฟล์ จากนั้นเลือกทั้งหมดภายใต้ช่วงการส่งออก
  7. หลังจากนั้นให้คลิกที่ปุ่มบันทึก
  8. เมื่อใดก็ตามที่คุณต้องการคืนค่ารีจิสทรี ให้เปิด Registry Editor แล้วคลิก File >> Import
  9. ถัดไป ไปที่โฟลเดอร์ที่คุณบันทึกไฟล์สำรองไว้และโหลดมัน

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

เมื่อวิซาร์ดการตั้งค่าปรากฏขึ้น ให้เลือกการตั้งค่าของคุณ เช่น ภาษาและตำแหน่งการติดตั้งที่ต้องการ จากนั้นยอมรับใบอนุญาต เมื่อวิซาร์ดติดตั้งเสร็จสิ้น ให้รีสตาร์ทระบบของคุณ

หลังจากที่ระบบของคุณรีสตาร์ทแล้ว ให้เปิดโปรแกรม คลิกที่ปุ่ม Scan Now และปล่อยให้ตัวเลือก Back Up Changes ถูกทำเครื่องหมายไว้ กระบวนการควรเริ่มต้นขึ้น ระยะเวลาของการสแกนจะขึ้นอยู่กับเนื้อหาของรีจิสทรีและความเร็วของระบบ

เมื่อการสแกนเสร็จสิ้น โปรแกรมจะแสดงรายการปัญหาที่พบ โดยมีระดับความรุนแรงของแต่ละปัญหาอยู่ข้างๆ หลังจากนั้นให้คลิกที่ตัวเลือกการซ่อมแซมเพื่อให้เครื่องมือสามารถแก้ไขปัญหาที่ตรวจพบได้ คุณจะเห็นความคืบหน้าของกระบวนการซ่อมแซม และโปรแกรมจะแจ้งให้คุณทราบสถานะของปัญหารีจิสทรีเหล่านั้นเมื่อเสร็จสิ้น คุณอาจเห็นโฆษณาเกี่ยวกับผลิตภัณฑ์อื่นๆ จากนักพัฒนาโปรแกรม

ทำการคืนค่าระบบ

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

คุณสามารถแก้ไขปัญหาได้โดยคืนค่าคอมพิวเตอร์ของคุณเป็นวันที่ก่อนหน้า โปรดทราบว่าจะต้องมีจุดคืนค่าที่บันทึกไว้ก่อนที่คุณจะสามารถกู้คืนระบบของคุณได้ โชคดีที่ Windows มักจะสร้างจุดคืนค่าอัตโนมัติเมื่อคุณทำการเปลี่ยนแปลงที่สำคัญกับระบบของคุณ

ขั้นตอนด้านล่างจะแสดงวิธีการคืนค่าระบบ:

  1. คลิกขวาที่โลโก้ Windows ในทาสก์บาร์ แล้วคลิก File Explorer หรือกดปุ่มแป้นพิมพ์ Windows และ E พร้อมกัน
  2. หลังจากหน้าต่าง File Explorer เปิดขึ้น ให้ไปที่แถบด้านข้างซ้ายแล้วคลิกขวาที่พีซีเครื่องนี้
  3. เลือกคุณสมบัติจากเมนูบริบท
  4. หลังจากที่หน้าต่าง System เปิดขึ้น ให้คลิกที่ System Protection ทางด้านซ้าย
  5. แท็บการป้องกันระบบของหน้าต่างโต้ตอบคุณสมบัติของระบบจะปรากฏขึ้น

เคล็ดลับ: คุณสามารถใช้ฟังก์ชันการค้นหาของเมนูเริ่มเพื่อเรียกกล่องโต้ตอบคุณสมบัติของระบบ เพียงเปิด Start แล้วพิมพ์ "system restore" จากนั้นคลิกที่ "Create a Restore Point"

  1. คลิกที่ปุ่มการคืนค่าระบบ
  2. เมื่อวิซาร์ด System Restore เปิดขึ้นให้คลิกที่ Next
  3. เลือกจุดคืนค่าแล้วคลิกถัดไปอีกครั้ง
  4. หลังจากนั้น คลิกที่ปุ่ม เสร็จสิ้น และอนุญาตให้ Windows กู้คืนพีซีของคุณ
  5. ตรวจสอบปัญหาหลังจากดำเนินการเสร็จสิ้น

ทำการคลีนบูต

หากการแก้ไขข้างต้นไม่ได้ผล การดำเนินการต่อไปของคุณควรตรวจสอบการรบกวนแอปพลิเคชัน ในการทำเช่นนั้น คุณต้องทำคลีนบูต

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

ทำตามขั้นตอนเหล่านี้เพื่อดำเนินการคลีนบูต:

  1. ไปที่เมนู Start ค้นหา Run จากนั้นเปิดโปรแกรม คุณยังสามารถแตะปุ่มแป้นพิมพ์ Windows และ R เพื่อเปิด Run
  2. หลังจาก Run เปิดขึ้นให้พิมพ์ msconfig จากนั้นกดปุ่ม Enter
  3. เมื่อหน้าต่างโต้ตอบการกำหนดค่าระบบเปิดขึ้น ให้ไปที่แท็บบริการ
  4. ทำเครื่องหมายในช่องที่ระบุว่า "ซ่อนบริการของ Microsoft ทั้งหมด"
  5. จากนั้นคลิกที่ปุ่มปิดการใช้งานทั้งหมด
  1. หลังจากนั้นไปที่แท็บ Startup แล้วคลิก Open Task Manager
  2. ใต้แท็บ Startup ของ Task Manager ให้เลือกแต่ละโปรแกรมแล้วคลิก Disable
  3. เมื่อคุณปิดการใช้งานทุกโปรแกรมภายใต้แท็บ Startup ของ Task Manager แล้ว ให้กลับไปที่ไดอะล็อก System Configuration แล้วคลิก OK
  4. รีสตาร์ทระบบของคุณ

หากข้อผิดพลาดไม่ปรากฏขึ้นหลังจากที่ระบบของคุณเริ่มทำงาน คุณจะต้องค้นหาโปรแกรมที่ทำให้เกิดข้อผิดพลาดดังกล่าวก่อนหน้านี้ ในการทำเช่นนั้น ให้เปิดใช้งานบริการหนึ่งและรีสตาร์ทระบบของคุณเพื่อตรวจสอบว่ามีข้อผิดพลาดปรากฏขึ้นหรือไม่ ดำเนินการบริการที่เหลือต่อไปจนกว่าแอปที่มีปัญหาจะทำให้เกิดข้อผิดพลาดอีกครั้ง

คุณสามารถทำตามขั้นตอนเหล่านี้ได้หากการดูแอปทีละแอปทำงานหนักเกินไป:

  1. เปิดหน้าต่างการกำหนดค่าระบบและสลับไปที่แท็บบริการ
  2. ยกเลิกการเลือกครึ่งแรกของบริการที่คุณปิดใช้งานก่อนหน้านี้ จากนั้นคลิกที่ปุ่ม ปิดใช้งานทั้งหมด บริการเริ่มต้นในช่วงครึ่งหลังจะป้องกันไม่ให้โหลดหลังจากรีบูตครั้งถัดไป
  3. หากกล่องโต้ตอบข้อผิดพลาดไม่ปรากฏขึ้น แสดงว่าบริการใดที่คุณไม่ได้เลือกจะไม่รับผิดชอบ ยกเลิกการเลือกบริการที่เหลือ คลิกที่ ปิดใช้งาน จากนั้นรีสตาร์ทระบบของคุณ
  4. หากข้อผิดพลาดปรากฏขึ้นในครั้งแรกที่คุณรีสตาร์ทระบบ แสดงว่าหนึ่งในบริการในครึ่งแรกของรายการคือสิ่งที่คุณต้องการ คุณไม่จำเป็นต้องตรวจสอบรายการเริ่มต้นอื่นๆ อีกต่อไป อย่างไรก็ตาม ในบางกรณี มากกว่าหนึ่งแอปอาจทำให้เกิดข้อผิดพลาดได้

เมื่อคุณพบแอปที่รับผิดชอบแล้ว ให้กำจัดหรืออัปเดตแอป

บทสรุป

นั่นคือวิธีแก้ไขข้อผิดพลาด mem_bad_pointer ใน Windows 10 คุณสามารถใช้ส่วนความคิดเห็นด้านล่างเพื่อแบ่งปันความคิดและคำถามของคุณ หากคุณสับสนในสิ่งใดสิ่งหนึ่ง

ที่แนะนำ

ปกป้องพีซีจากภัยคุกคามด้วย Anti-Malware

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

Auslogics Anti-Malware เป็นผลิตภัณฑ์ของ Auslogics ซึ่งได้รับการรับรอง Microsoft Silver Application Developer
ดาวน์โหลดเดี๋ยวนี้

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