ผู้ใช้ Windows บางรายรายงานว่าพบข้อผิดพลาดของ SmartHeap Library ทุกครั้งที่เปิดเครื่องคอมพิวเตอร์ ในทุกกรณี ข้อความแสดงข้อผิดพลาดภายในป๊อปอัปนั้นจะเป็น MEM_BAD_POINTER / MEM_BAD_POINTER ไม่ว่าผู้ใช้จะคลิกตกลงหรือยกเลิก ผลลัพธ์ที่ได้จะเหมือนกัน – คอมพิวเตอร์ทำงานได้ตามปกติ แต่ข้อความแสดงข้อผิดพลาดจะส่งคืนเมื่อเริ่มต้นระบบครั้งถัดไป
ไลบรารี SmartHeap คืออะไร
Smartheap เป็นโครงสร้างพื้นฐานเก่าที่เคยใช้เป็นไลบรารีจัดการหน่วยความจำหลักเมื่อรวบรวมโปรแกรมบางโปรแกรม
ทุกวันนี้แทบไม่มีโปรแกรมใดที่ต้องใช้องค์ประกอบการจัดการหน่วยความจำนี้ ดังนั้นจึงเป็นไปได้มากว่าโปรแกรมจะพบวิธีในคอมพิวเตอร์ของคุณเมื่อคุณติดตั้งเวอร์ชันเก่าสำหรับ Corel Draw, Autocad, Adobe Acrobat ฯลฯ
เมื่อคุณคุ้นเคยกับองค์ประกอบพื้นฐานที่รับผิดชอบปัญหานี้แล้ว ต่อไปนี้คือรายการสถานการณ์ที่ทราบว่าทำให้เกิด MEM_BAD_POINTER หรือ MEM_BAD_POINTER ข้อความแสดงข้อผิดพลาดภายในพรอมต์ไลบรารี SmartHeap:
- การติดตั้งโปรแกรมรุ่นเก่าเสียหาย – หนึ่งในสาเหตุที่พบบ่อยที่สุดที่จะทำให้เกิดปัญหานี้คืออินสแตนซ์ที่โปรแกรมดั้งเดิมที่ใช้ไลบรารี SmartHeap เสียหายบางส่วนหรือผ่านการเปลี่ยนแปลงบางอย่างที่ทำให้ไฟล์บางไฟล์เสียหาย ผู้ใช้หลายคนที่ประสบปัญหาเดียวกันได้ยืนยันว่าพวกเขาจัดการเพื่อแก้ไขปัญหาได้โดยการซ่อมแซมหรือถอนการติดตั้งแอปพลิเคชันระบบเดิมที่มีปัญหา
- แอปรุ่นเก่าที่เข้ากันไม่ได้บางส่วน – ขึ้นอยู่กับรุ่นของ Windows ที่คุณใช้และรุ่นของแอพรุ่นเก่าที่ทำให้เกิดปัญหาประเภทนี้ คุณอาจสามารถหลีกเลี่ยงป๊อปอัปทั้งหมดได้โดยกำหนดค่าโปรแกรมหลักที่สามารถเรียกใช้งานได้ให้ทำงานในโหมดความเข้ากันได้กับรุ่นของ Windows ที่ รองรับอย่างเต็มที่
- ค่ารีจิสทรีเสียหาย – รีจิสตรีคีย์ที่เหลือสามารถรับผิดชอบป๊อปอัปที่เรียกใช้ SmartHeap Library ในกรณีส่วนใหญ่ สิ่งนี้จะเกิดขึ้นเนื่องจากโครงสร้างพื้นฐานที่เรียกโดยรีจิสตรีคีย์เริ่มต้นไม่มีอยู่อีกต่อไป ในกรณีนี้ การลบรีจิสตรีคีย์ที่เหลือด้วยตนเองหรือด้วยยูทิลิตี้อย่าง CCleaner ควรแก้ไขปัญหาอย่างถาวร
- การเปลี่ยนแปลงระบบล่าสุด – การอัปเดตโครงสร้างพื้นฐานของ Windows หรือการติดตั้งไดรเวอร์ใหม่อาจเป็นสาเหตุของปัญหานี้เช่นกัน ในกรณีนี้ คุณควรพิจารณาใช้การคืนค่าระบบเพื่อเปลี่ยนสถานะพีซีของคุณกลับไปสู่จุดที่สถานการณ์ที่เป็นสาเหตุของปัญหาไม่ปรากฏ
- ความขัดแย้งของบุคคลที่สามที่ไม่ปรากฏชื่อ – ปัญหานี้เชื่อมโยงกับแอปพลิเคชันรุ่นเก่าของ Adobe, Corel และ AutoCAD แต่มีโปรแกรมรุ่นเก่าอื่นๆ ที่ใช้โครงสร้างพื้นฐาน SmartHeap Library และอาจสร้างปัญหาที่คล้ายคลึงกัน ในกรณีนี้ คุณควรคลีนบูตคอมพิวเตอร์ของคุณ และตรวจสอบกระบวนการเฉพาะหรือรายการเริ่มต้นที่อาจทำให้เกิดปัญหา
เมื่อเราได้ตรวจสอบรายชื่อผู้กระทำผิดที่อาจเกิดขึ้นแล้ว ต่อไปนี้คือบทสรุปของวิธีการที่มีประสิทธิภาพสูงสุดซึ่งผู้ใช้ที่ได้รับผลกระทบใช้อย่างประสบความสำเร็จในการป้องกันไม่ให้ป๊อปอัปเริ่มต้นที่น่ารำคาญปรากฏขึ้น
วิธีที่ 1:การซ่อมแซมหรือถอนการติดตั้งโปรแกรมเดิม (ถ้ามี)
พึงระลึกไว้เสมอว่า ในกรณีเอกสารส่วนใหญ่ ปัญหานี้เกิดจากการติดตั้งโปรแกรมดั้งเดิมที่เสียหายซึ่งกำลังใช้งานโครงสร้างพื้นฐานการจัดการหน่วยความจำ SmartHeap Library อย่างแข็งขัน ปัญหานี้ได้รับการยืนยันแล้วว่าจะเกิดขึ้นบน Windows 7, Windows 8.1 และ Windows 10
ในกรณีส่วนใหญ่ มีรายงานว่าเกิดขึ้นกับ Corel Draw เวอร์ชันเก่าและผลิตภัณฑ์ Corel อื่นๆ, Adobe Acrobat Reader และ Autocad อย่างไรก็ตาม นี่ไม่ใช่กฎ เนื่องจากคุณสามารถดู MEM_BAD_POINTER หรือ MEM_BAD_POINTER ข้อความแสดงข้อผิดพลาดเนื่องจากโปรแกรมรุ่นเก่าที่ไม่ค่อยมีคนรู้จัก
หากคุณพบว่าตัวเองอยู่ในสถานการณ์นี้โดยเฉพาะ คุณควรเริ่มต้นด้วยการพยายามซ่อมแซมหรือถอนการติดตั้งโปรแกรมเดิมเพื่อป้องกันไม่ให้ป๊อปอัปเกิดขึ้น
หมายเหตุ: คุณอาจมีสิทธิ์อัปเกรดเป็นโปรแกรมเวอร์ชันใหม่กว่า ดังนั้นจึงไม่มีเหตุผล ใช้ซอฟต์แวร์รุ่นเก่าที่ไม่สามารถใช้งานร่วมกับการติดตั้ง Windows ของคุณได้อย่างสมบูรณ์อีกต่อไป
ทำตามคำแนะนำด้านล่างเพื่อพยายามซ่อมแซมหรือถอนการติดตั้งโปรแกรมรุ่นเก่าที่สร้างป๊อปอัป SmartHeap ทุกครั้งที่ระบบเริ่มทำงาน:
- กด แป้น Windows + R เพื่อเปิด วิ่ง กล่องโต้ตอบ ในกล่องข้อความ ให้พิมพ์ 'appwiz.cpl ' และกด Enter เพื่อเปิด โปรแกรมและคุณลักษณะ เมนู.
- เมื่อคุณอยู่ในหน้าจอโปรแกรมและคุณลักษณะ ให้เลื่อนลงผ่านรายการโปรแกรมที่ติดตั้งและค้นหาโปรแกรมเดิมที่คุณสงสัยว่าอาจกำลังใช้โมดูล SmartHeap
- คลิกขวาที่โปรแกรมเดิมและดูว่าคุณมีตัวเลือกในการซ่อมแซม .หรือไม่ จากเมนูบริบทที่เพิ่งปรากฏขึ้น หากคุณมี คลิกซ่อมแซม และทำตามคำแนะนำบนหน้าจอเพื่อสิ้นสุดกระบวนการซ่อมแซม จากนั้นรีสตาร์ทคอมพิวเตอร์และดูว่าปัญหาได้รับการแก้ไขแล้วหรือไม่ในการเริ่มต้นระบบครั้งถัดไป
หมายเหตุ: หากไม่สามารถซ่อมแซมแอปพลิเคชันรุ่นเก่าได้ สิ่งเดียวที่คุณทำได้คือถอนการติดตั้งแอปพลิเคชันนั้น ในกรณีนี้ เลือก ถอนการติดตั้ง จากเมนูบริบท
- เมื่อคุณบังคับใช้การเปลี่ยนแปลงในโปรแกรมรุ่นเก่า (ซ่อมแซมหรือถอนการติดตั้ง) ให้รีบูตเครื่องคอมพิวเตอร์และดูว่าป๊อปอัปแสดงข้อผิดพลาดกลับมาหรือไม่
หากคุณยังคงพบกับ MEM_BAD_POINTER หรือ MEM_BAD_POINTER ผิดพลาด เลื่อนลงไปที่การแก้ไขที่เป็นไปได้ถัดไปด้านล่าง
วิธีที่ 2:การเรียกใช้โปรแกรมในโหมดความเข้ากันได้
คุณอาจสามารถแก้ไขปัญหาได้โดยการกำหนดค่าซอฟต์แวร์ให้ทำงานในโหมดความเข้ากันได้กับเวอร์ชัน Windows ที่รองรับอย่างสมบูรณ์ ทั้งนี้ขึ้นอยู่กับโปรแกรมเดิมที่คุณมีปัญหา
มีเอกสารอินสแตนซ์จำนวนมากที่ผู้ใช้ที่ได้รับผลกระทบสามารถแก้ไขปัญหาได้หลังจากกำหนดค่า AutoCAD เวอร์ชันเก่าให้ทำงานในโหมดความเข้ากันได้กับ Windows 7
สำคัญ: การแก้ไขนี้จะมีผลเฉพาะในกรณีที่รายการเริ่มต้นโปรแกรมปฏิบัติการหลักของโปรแกรมดั้งเดิมถูกเรียกโดยรายการเริ่มต้นทุกครั้งที่ระบบเริ่มต้น
ดังนั้นไม่ว่าคุณจะประสบปัญหานี้ขณะติดตั้ง AutoCAD หรือโปรแกรมอื่น ให้ทำตามคำแนะนำด้านล่างเพื่อกำหนดค่าโปรแกรมรุ่นเก่าให้ทำงานในโหมดความเข้ากันได้:
- คลิกขวาที่ไฟล์สั่งการหลักของโปรแกรมดั้งเดิมที่คุณสงสัยว่าต้องรับผิดชอบต่อข้อผิดพลาดในการเริ่มต้นนี้ และเลือกคุณสมบัติ จากเมนูบริบท
- เมื่อคุณอยู่ในหน้าจอคุณสมบัติของโปรแกรมรุ่นเก่า ให้คลิกที่ความเข้ากันได้ จากเมนูด้านบน
- ถัดไป ให้เลือกช่องที่เกี่ยวข้องกับความเข้ากันได้ โหมด จากนั้นเลือก Windows 7 หรือ Windows เวอร์ชันที่เก่ากว่าหากจำเป็น ก่อนที่จะคลิกใช้ เพื่อบันทึกการเปลี่ยนแปลง
- รีสตาร์ทคอมพิวเตอร์และดูว่าปัญหาได้รับการแก้ไขแล้วหรือไม่ในการเปิดคอมพิวเตอร์ครั้งถัดไป
ในกรณีที่คุณยังติดต่อกับ MEM_BAD_POINTER หรือ MEM_BAD_POINTER ผิดพลาด เลื่อนลงไปที่การแก้ไขที่เป็นไปได้ถัดไปด้านล่าง
วิธีที่ 3:เรียกใช้การสแกนรีจิสทรี
หากวิธีการข้างต้นไม่สามารถแก้ไขปัญหาได้ คุณควรเริ่มพิจารณาถึงความเป็นไปได้ที่คุณอาจกำลังจัดการกับรีจิสตรีคีย์ที่เหลือซึ่งเรียกใช้ SmartHeap Library แม้ว่าโครงสร้างพื้นฐานจะไม่มีอยู่แล้ว
หากสถานการณ์สมมตินี้ใช้ได้ ปัญหาจะได้รับการแก้ไขหลังจากที่คุณจัดการเพื่อระบุคีย์รีจิสทรีที่มีปัญหาและลบออกจากคอมพิวเตอร์ของคุณ อย่างไรก็ตาม เนื่องจากไม่แนะนำให้ใช้วิธีการด้วยตนเอง เนื่องจากมีหลายสถานการณ์ที่อาจเกิดขึ้นซึ่งอาจทำให้เกิดข้อผิดพลาดนี้ คุณควรใช้ชุดโปรแกรมของบุคคลที่สามที่สามารถระบุคีย์รีจิสทรีที่เหลือโดยอัตโนมัติและนำออกจากคอมพิวเตอร์ของคุณ
ในกรณีที่คุณกำลังมองหาคำแนะนำทีละขั้นตอน ให้ทำตามคำแนะนำด้านล่างเพื่อใช้ CCleaner เพื่อล้างรีจิสทรีของรายการที่เหลือซึ่งใช้ไม่ได้อีกต่อไป:
- เปิดเบราว์เซอร์เริ่มต้นของคุณและไปที่หน้าดาวน์โหลดอย่างเป็นทางการของ Ccleaner . เมื่อคุณอยู่ในหน้าดาวน์โหลดแล้ว การดาวน์โหลด CCleaner เวอร์ชันล่าสุดควรเริ่มต้นด้วยตัวเอง - ในกรณีที่ไม่เกิดขึ้น ให้คลิกที่ไฮเปอร์ลิงก์ดาวน์โหลดเพื่อเริ่มการดาวน์โหลดด้วยตนเอง
- เมื่อดาวน์โหลดตัวติดตั้งสำเร็จแล้ว ให้ดับเบิลคลิกและกด ใช่ เมื่อได้รับแจ้งจาก UAC (การควบคุมบัญชีผู้ใช้) เพื่อให้สิทธิ์การเข้าถึงของผู้ดูแลระบบ ถัดไป ทำตามคำแนะนำบนหน้าจอเพื่อทำการติดตั้งให้เสร็จสิ้น
- เมื่อการติดตั้งเสร็จสิ้นในที่สุด ให้เปิด CCleaner และเลื่อนไปที่ด้านซ้ายมือของหน้าจอ แล้วคลิก Registry
- ภายใน รีจิสทรี หน้าจอ ให้คลิกที่ สแกนหาปัญหา จากนั้นรอให้การดำเนินการเสร็จสิ้น
หมายเหตุ :การดำเนินการนี้จะช่วยให้แน่ใจว่าทุกอินสแตนซ์ที่ไม่ได้ใช้ของรีจิสทรีของคุณจะถูกลบออก การดำเนินการนี้จะไม่สร้างความเสียหายให้กับระบบของคุณ เนื่องจากจะจัดการเฉพาะค่ารีจิสทรีที่เสียหายและเส้นทางที่ไม่ชี้ไปยังตำแหน่งที่ใช้งานได้อีกต่อไป
- เมื่อ รีจิสทรี การสแกนเสร็จสมบูรณ์ คุณยังสามารถทำความสะอาดแบบมาตรฐานได้โดยคลิกที่ล้าง แต่นี่เป็นทางเลือกทั้งหมด
- รีสตาร์ทคอมพิวเตอร์และดูว่าการสแกนนี้สามารถแก้ไขปัญหา MEM_BAD_POINTER ได้หรือไม่ หรือ MEM_BAD_POINTER ผิดพลาด
หากคุณยังคงประสบปัญหาเดิมอยู่ ให้เลื่อนลงไปที่วิธีแก้ไขที่เป็นไปได้ถัดไปด้านล่าง
วิธีที่ 4:การใช้จุดคืนค่าระบบ
หากคุณเพิ่งเริ่มจัดการกับข้อผิดพลาดนี้ มีโอกาสที่การเปลี่ยนแปลงระบบปฏิบัติการล่าสุดมีส่วนทำให้เกิดข้อผิดพลาดนี้ ผู้ใช้ที่ได้รับผลกระทบหลายรายที่จัดการกับปัญหาประเภทเดียวกันได้ยืนยันว่าพวกเขาสามารถแก้ไขปัญหาได้โดยใช้ System Restore เพื่อเปลี่ยนสถานะคอมพิวเตอร์กลับเป็นสถานะที่ปัญหานี้ไม่เกิดขึ้น
หากคุณไม่ได้ใช้ การคืนค่าระบบ ก่อนหน้านี้ โปรดทราบว่ายูทิลิตีนี้จะช่วยให้คุณสามารถเปลี่ยนคอมพิวเตอร์ของคุณกลับสู่สถานะปกติ (ตราบใดที่คุณยังมีระบบที่พร้อมใช้งานในการกู้คืนสแน็ปช็อตให้เลือก)
หมายเหตุ: ตราบใดที่คุณไม่ได้แก้ไขการทำงานเริ่มต้นของการคืนค่าระบบ คุณควรมีสแน็ปช็อตการคืนค่ามากมายให้เลือกเนื่องจากยูทิลิตี้ได้รับการกำหนดค่าให้สร้างรายการใหม่ก่อนการเริ่มต้นระบบที่สำคัญ (เช่น การติดตั้งโปรแกรมใหม่ การอัปเดต Windows ขนาดใหญ่ ฯลฯ)
หากคุณเข้าใจว่าเครื่องมือนี้ทำงานอย่างไรและเครื่องมือนี้ทำอะไรให้คุณได้บ้าง ให้ใช้เครื่องมือนี้เพื่อระบุสแนปชอตการคืนค่าที่ดีที่สุดและปรับใช้ เพื่อแก้ไขป๊อปอัปที่เกิดจาก ไลบรารี SmartHeap
หมายเหตุ: โปรดทราบว่าเมื่อคุณดำเนินการนี้เสร็จสิ้น ทุกการเปลี่ยนแปลงที่คุณบังคับใช้ตั้งแต่การสร้างสแน็ปช็อตการคืนค่านั้นจะสูญหายไป
เมื่อปรับใช้สแน็ปช็อตการคืนค่าแล้ว ให้รีบูตครั้งสุดท้ายและดูว่าป๊อปอัปได้รับการแก้ไขหรือไม่
ในกรณีที่คุณยังเห็น MEM_BAD_POINTER . เหมือนเดิม หรือ MEM_BAD_POINTER เกิดข้อผิดพลาดในการเริ่มต้น เลื่อนลงไปที่การแก้ไขขั้นสุดท้ายด้านล่าง
วิธีที่ 5:คลีนบูตคอมพิวเตอร์ของคุณ
หากวิธีการข้างต้นไม่ได้ผลในกรณีของคุณ คุณต้องพิจารณาถึงความเป็นไปได้ที่การรบกวนจากบุคคลที่สามบางประเภททำให้เกิดข้อผิดพลาดในการเริ่มต้นนี้ หากคุณไม่ทราบว่าผู้กระทำผิดรายใดที่อาจเป็นสาเหตุของปัญหา จุดเริ่มต้นที่ดีคือการบูตคอมพิวเตอร์ในโหมดคลีนบูต และตรวจดูให้แน่ใจว่าไม่มีบริการของบุคคลที่สามและรายการเริ่มต้นที่ได้รับอนุญาตให้ทำงาน
ซึ่งจะช่วยให้คุณยืนยันได้ว่า MEM_BAD_POINTER หรือ MEM_BAD_POINTER ข้อผิดพลาดในการเริ่มต้นเกิดจากแอปพลิเคชันบุคคลที่สามหรือไม่ หากคุณยืนยันว่าแอปของบุคคลที่สามเป็นสาเหตุของปัญหา การระบุผู้กระทำผิดโดยเปิดใช้งานทุกรายการที่ถูกปิดใช้งานอีกครั้งอย่างเป็นระบบจนกว่าป๊อปอัปข้อผิดพลาดจะปรากฏขึ้นอีกครั้ง
เนื่องจากกระบวนการนี้ค่อนข้างยาว เราจึงได้รวบรวมคำแนะนำทีละขั้นตอนที่จะแนะนำคุณตลอดกระบวนการ:
- กด แป้น Windows + R เพื่อเปิด วิ่ง กล่องโต้ตอบ จากนั้นพิมพ์ ‘msconfig’ แล้วกด Enter เพื่อเปิด การกำหนดค่าระบบ เครื่องมือ.
- เมื่อคุณอยู่ในการกำหนดค่าระบบ เครื่องมือ คลิกที่ บริการ แท็บจากเมนูด้านบน เมื่อคุณเข้าไปข้างในแล้ว ให้เปิดใช้งานช่องทำเครื่องหมายที่เกี่ยวข้องกับ ซ่อนบริการทั้งหมดของ Microsoft
หมายเหตุ: การทำเช่นนี้จะช่วยให้แน่ใจว่าทุกบริการดั้งเดิมของ Microsoft ที่จำเป็นสำหรับการติดตั้ง Windows ของคุณจะถูกซ่อนไว้ ดังนั้นคุณจึงไม่สามารถปิดใช้งานได้โดยไม่ตั้งใจ
- ตอนนี้คุณเหลือเพียงบริการของบุคคลที่สาม ให้คลิกที่ ปิดใช้งานทั้งหมด และคลิกใช้ เพื่อบันทึกการเปลี่ยนแปลง
- ถัดไป คลิกที่ เริ่มต้น แท็บแล้วคลิก เปิดตัวจัดการงาน จากไฮเปอร์ลิงก์ด้านล่าง
- เมื่อคุณอยู่ในตัวจัดการงาน ยูทิลิตี ไปข้างหน้าและปิดการใช้งานทุก เริ่มต้น บริการที่ไม่ได้ลงชื่อเข้าใช้โดย Microsoft Corporation โดยคลิกขวาที่ ปิดการใช้งาน จากเมนูบริบทที่ปรากฏใหม่
- หลังจากที่คุณจัดการปิดการใช้งานบริการเริ่มต้นของบุคคลที่สามทุกรายการที่เกี่ยวข้องแล้ว ให้รีบูตคอมพิวเตอร์ตามปกติและรอให้การเริ่มต้นระบบครั้งถัดไปเสร็จสิ้น
- ในการเริ่มต้นระบบครั้งถัดไป โปรดระวัง MEM_BAD_POINTER หรือ MEM_BAD_POINTER ข้อผิดพลาด. หากปัญหาไม่กลับมา แสดงว่าคุณเพิ่งยืนยันว่าปัญหาเกิดจากองค์ประกอบของบุคคลที่สาม ณ จุดนี้ เป็นเพียงเรื่องของการระบุโปรแกรมที่ทำให้เกิดปัญหา – ในการดำเนินการนี้ ให้ดำเนินการต่อและเปิดใช้งานรายการเริ่มต้นและกระบวนการที่ปิดใช้งานก่อนหน้านี้ทั้งหมดอีกครั้งอย่างเป็นระบบ ควบคู่ไปกับการรีสตาร์ทตามปกติจนกว่าคุณจะเห็นข้อผิดพลาดกลับมา
หมายเหตุ: เมื่อคุณพบผู้ร้ายแล้ว ให้ถอนการติดตั้งแอปพลิเคชันหลักหรือปิดใช้งานบริการ/รายการเริ่มต้นที่มีปัญหาเพื่อป้องกันไม่ให้ข้อผิดพลาดกลับมา - สุดท้ายนี้ หากคุณจัดการเพื่อแก้ไขปัญหาได้ ให้เปิดใช้งานใหม่ทุกรายการที่ปิดใช้งานก่อนหน้านี้ เพื่อป้องกันไม่ให้คอมพิวเตอร์ของคุณคลีนบูตทุกครั้งที่เริ่มต้นระบบ