วิธีทำให้แอพ 32 บิตทำงานบน Windows 64 บิต

ระบบ Windows เครื่องแรกใช้เคอร์เนลที่ใช้ MS-DOS 16 บิตเพื่อเรียกใช้เชลล์กราฟิกเพื่อเข้าถึงบริการของระบบ หากประโยคสุดท้ายนั้นทำให้คุณสับสนในการหาอภิธานศัพท์ด้านเทคโนโลยี ให้สบายใจ ข้อมูลในบทความนี้จะเข้าถึงได้โดยผู้เชี่ยวชาญและฆราวาส คุณอาจประสบปัญหาบางอย่างเมื่อเรียกใช้แอปพลิเคชัน 32 บิตใน Windows รุ่น 64 บิต ถ้าใช่ อ่านต่อไปเพื่อเรียนรู้ว่าทำไมสิ่งนี้ถึงเกิดขึ้นและวิธีแก้ไข

วิธีทำให้แอพ 32 บิตทำงานบน Windows 64 บิต

แนวคิดที่จำเป็นบางประการ

ข้อเท็จจริงง่ายๆ คือ คุณไม่ควรมีปัญหานี้ตั้งแต่แรก Windows มีอีมูเลเตอร์ซึ่ง—หากทำงานอย่างถูกต้อง—ให้สภาพแวดล้อมที่จำเป็นสำหรับทั้งแอปพลิเคชัน 64 และ 32 บิตเพื่อให้ทำงานตามปกติ อีมูเลเตอร์นี้ (WOW64) แยกแอปพลิเคชัน 32 บิตออกจากแอปพลิเคชัน 64 บิต เพื่อป้องกันไฟล์และ/หรือการชนกันของรีจิสทรี ในหมายเหตุทางเทคนิค กระบวนการแบบ 32 บิตไม่สามารถเรียกใช้ DLL แบบ 64 บิตได้ ดังนั้นสิ่งนี้อาจเป็นสาเหตุของปัญหาของคุณ

แนวคิดที่จำเป็นบางประการ

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

ทำให้เข้ากันได้

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

ในการเรียกใช้แอปพลิเคชันในโหมดความเข้ากันได้ ให้ไปที่แอปพลิเคชันใน file explorer และคลิกขวา เช่นเดียวกับด้านบน ให้คลิกที่ Properties จากเมนู ภายใต้ คุณสมบัติ ให้คลิกที่แท็บ ความเข้ากันได้ คลิกช่องที่ระบุว่า "เรียกใช้โปรแกรมนี้ในโหมดความเข้ากันได้สำหรับ:" และเลือกเวอร์ชัน Windows ที่คุณต้องการใช้ จากนั้นคลิก Apply และลองเรียกใช้แอปพลิเคชันของคุณ ควรมีเพียงไม่กี่ตัวเลือกเท่านั้น ดังนั้นพยายามผ่านตัวเลือกเหล่านั้นทั้งหมดcompmode

เปิดใช้งานแอปพลิเคชัน 32 บิต

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

  1. เริ่มต้นด้วยการเข้าถึงคุณลักษณะของ Windows โดยพิมพ์ "คุณลักษณะของ Windows" ลงในช่องค้นหาของ Windows และเลือกรายการที่ตรงกันที่สุด
  2. ทำเครื่องหมายในช่องที่อ่าน Internet Information Services แล้วคลิกตกลง การติดตั้งฟีเจอร์นี้จะใช้เวลาสักครู่
  3. เปิดตัวจัดการ IIS โดยพิมพ์ “บริการข้อมูลอินเทอร์เน็ต” ในช่องค้นหาของ Windows และเลือกรายการที่ตรงกันที่สุด
  4. คุณจะเห็นชื่อคอมพิวเตอร์ของคุณในหน้าต่างด้านซ้าย ขยายและคลิกที่ Application Pools
  5. ในหน้าต่างด้านขวา ให้คลิกขวาที่ DefaultAppPools แล้วเลือก การตั้งค่าขั้นสูง
  6. เลือก "เปิดใช้งานแอปพลิเคชัน 32 บิต" และเปลี่ยนจาก "เท็จ" เป็น "จริง"
  7. คลิกตกลงและรีสตาร์ทคอมพิวเตอร์ของคุณ

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

ไฟล์โปรแกรมไม่ถูกต้อง

โปรแกรมที่เก่ากว่าบางครั้งอาจมีการติดตั้งปะปนกัน และไฟล์ของพวกเขาอาจไปอยู่ในโฟลเดอร์ที่ไม่ถูกต้อง ซึ่งตรวจพบได้ยากเป็นพิเศษ เนื่องจากการติดตั้งดูเหมือนจะหายไปโดยไม่มีปัญหาใดๆ

ใน Windows รุ่น 64 บิต แอปพลิเคชัน 64 บิตทั้งหมดจะถูกติดตั้งในโฟลเดอร์ “Program Files (x86)” ซึ่งรวมถึงไฟล์ใดๆ ที่เกี่ยวข้องกับแอปพลิเคชันที่ติดตั้ง อย่างไรก็ตาม โปรแกรม 32 บิตจะลงเอยในโฟลเดอร์ชื่อ "Program Files" แยกต่างหาก หากเส้นทางถูกเข้ารหัสอย่างไม่ถูกต้องในการติดตั้ง แสดงว่าแอปพลิเคชันอาจติดตั้งในโฟลเดอร์ที่ไม่ถูกต้อง

ไฟล์โปรแกรมไม่ถูกต้อง

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

โกนหนวดและตัดผมสองบิต

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

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


$config[zx-auto] not found$config[zx-overlay] not found