ฉันจะลบตัวเลือกเพื่อถอดไดรฟ์ SATA ออกจากไอคอนถาด Windows 7 ได้อย่างไร


81

ไอคอน Safely Remove Hardware ใน Windows 7 มีความสามารถในการดีดไดรฟ์ SATA ของฉันออกรวมถึงบูตไดรฟ์ ฉันไม่เห็นว่าตัวเองเคยต้องการสิ่งนี้ - โดยเฉพาะอย่างยิ่งไม่ใช่จากความสะดวกสบายของไอคอนถาด

มีการตั้งค่าไบออสทั่วไปเพื่อปิดการใช้งาน hot-swappability หรือไม่?

นำไดรฟ์ SATA ภายในออก


2
เมื่ออัปเกรดจาก Vista เป็น Windows 7 RTM ไดรฟ์ SATA ของฉันจะไม่แสดงในเมนู Safely Remove Hardware อีกต่อไปคุณสามารถยืนยันได้ว่าปัญหานี้ยังคงเป็นปัญหาสำหรับคุณใน Windows 7 รุ่น RTM หรือไม่
bdukes

11
ฉันสงสัยว่า W7 มีความเสถียรอย่างไรหลังจากที่บูตฮาร์ดดิสก์ออก คุณสามารถขับซีพียูหรือเมนบอร์ดออกได้หรือไม่
maaartinus

1
ปัญหาเดียวกันใน Windows 8.1 ของฉันและฉันเดาว่านี่จะเหมือนกันใน Windows ทุกรุ่นตั้งแต่ 2000 ถึง XP, Vista, 7 และ 8 ฉันขอแนะนำให้คุณเพิ่มแท็กเพิ่มเติม)
LogicDaemon

คำตอบ:


62

คำตอบนั้นขึ้นอยู่กับไดรเวอร์ที่คุณติดตั้ง ฉันมีขั้วต่อ SATA 6 พอร์ต (Intel ICH9 - 2922) และฉันใช้ไดรเวอร์ MS-AHCI ที่เป็นค่าเริ่มต้น หากคุณอยู่ในเรือลำเดียวกันให้สร้างกุญแจใหม่สองสามอันที่นี่:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci

_

\Controller0\Channel0
            \Channel1
            \Channel2
            \Channel3
            \Channel4
            \Channel5

ตอนนี้สร้าง DWORD ใหม่ - ชื่อ: TreatAsInternalPort, ค่า: 1ใต้ChannelNปุ่มแต่ละปุ่ม ตอนนี้รีบูตเพื่อให้การเปลี่ยนแปลงมีผลและไม่ควรแสดงไดรฟ์ใน 'Safely Remove .. ' อีกต่อไป

สิ่งที่เกินบรรยาย:

สาเหตุที่แท้จริงของปัญหาคือไดรเวอร์ SATA ระบุว่าพอร์ต SATA ภายในของคุณไม่ถูกต้อง ดังนั้นถ้าคุณมองไปที่ค่า 'ความสามารถ' สำหรับไดรฟ์ของคุณ (s) ภายใต้HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\IDE\..\..มันอาจจะตั้งไว้ที่ 0x4 ซึ่งจะทำให้มันถอดออกได้ (ตาม Oring ธงบิตทำของค่าด้านล่าง) เมื่อคุณเพิ่มการตั้งค่ารีจิสทรีที่ ตอนนี้ไดรเวอร์ SATA คืนค่าความสามารถที่ต่างออกไป (ส่วนใหญ่น่าจะเป็น 0) และไดร์ฟหยุดแสดงภายใต้ 'Safely Remove .. '

//from inc/api/cfgmgr32.h (WINDDK)
#define CM_DEVCAP_LOCKSUPPORTED     (0x00000001)
#define CM_DEVCAP_EJECTSUPPORTED    (0x00000002)
#define CM_DEVCAP_REMOVABLE         (0x00000004)
#define CM_DEVCAP_DOCKDEVICE        (0x00000008)
#define CM_DEVCAP_UNIQUEID          (0x00000010)
#define CM_DEVCAP_SILENTINSTALL     (0x00000020)
#define CM_DEVCAP_RAWDEVICEOK       (0x00000040)
#define CM_DEVCAP_SURPRISEREMOVALOK (0x00000080)
#define CM_DEVCAP_HARDWAREDISABLED  (0x00000100)
#define CM_DEVCAP_NONDYNAMIC        (0x00000200)

3
ในการพิจารณาว่าคอนโทรลเลอร์ใดที่คุณสามารถ comapre ค่าตัวเลขภายใต้ ... \ Msahci \ enum ด้วย HardwareIds ในแท็บรายละเอียดของกล่องโต้ตอบคุณสมบัติผู้จัดการอุปกรณ์
ริชาร์ด

1
@Kapil: โปรดดู ( superuser.com/questions/420584/… ) [นี่] คำถามเมื่อสะดวก ขอบคุณล่วงหน้า.
Raheel Khan

3
จากคำตอบฉันได้รับสคริปต์ regeditสำหรับงานสกปรกอย่างรวดเร็ว
LogicDaemon

สิ่งนี้ใช้ไม่ได้อีกต่อไปสำหรับ 8 ... :(
user1643156

2
Windows 8 / Windows 10 การแก้ปัญหาคือที่นี่
willus

24

วันนี้ฉันมีปัญหาเดียวกันหลังจากอัพเกรดพีซีของพ่อจาก Windows 7 เป็น 10

ข้างต้นไม่ได้ถือครองอีกต่อไปสำหรับ Win 8, 8.1 และ 10

สิ่งที่ช่วยได้ก็คือความแตกต่างเล็กน้อยของลิงค์นี้ ฉันจะลบตัวเลือกในการนำไดรฟ์ SATA ภายในออกจากไอคอนถาด Windows 8 ได้อย่างไร

คือผมเพิ่มใหม่Multi String Valueที่เรียกว่าTreatAsInternalPort จะ HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci\Parameters\Device มีค่า:

0
1
2
4
5

(จดบันทึกบรรทัดใหม่)

การตั้งค่ารีจิสทรี TreatAsInternalPort

BTW ไดรเวอร์ AHCI เป็นของ Intel ไม่ใช่ของ Microsoft แต่โซลูชันควรทำงานกับไดรเวอร์ทั้งสอง


1
สิ่งนี้ทำงานได้อย่างสมบูรณ์แบบ: D (ฉันได้รับการอัปเดตจาก Win7 เป็น Win10 ด้วย) ขอบคุณ! (นอกจากนี้ฉันยังใช้ไดรเวอร์ Microsofts AHCI)
Mo Beigi

7
หมายเหตุ: ฉันต้องเพิ่มบรรทัดใหม่หลังจาก '5' เพื่อให้ '5' อยู่ - ถ้าฉันปล่อยเคอร์เซอร์ไว้หลัง '5' ในบรรทัดเดียวกันค่าของฉันจะถูกตัดหลังจาก '4' Windows 10.
Patrick Moore

มันทำงานได้อย่างสมบูรณ์แบบสำหรับฉันเช่นกัน Win10 MSI X570 Ryzen9 พร้อมด้วย SSD boot SSD ที่ Windows ช่วยให้ฉันขับออกได้ การเปลี่ยนแปลงรีจิสทรีของคุณแก้ไขได้หลังจากรีบูตอย่างรวดเร็ว
Toumal

16

เป็นตัวเลือกระดับ BIOS ในบอร์ดที่ใหม่กว่าจะมีตัวเลือกใน BIOS เพื่อปิดใช้งานการสลับร้อน (เมื่อคุณใช้ AHCI / RAID เป็นตัวควบคุม) เมื่อการตั้งค่า hot swap สำหรับไดรฟ์ถูกปิดการใช้งานในไบออสจะไม่มีการระบุไว้ในไดรฟ์ที่ถอดออกได้ในเมนูไอคอนถาดระบบ


นี่คือคำตอบที่ดีที่สุด เป็นเรื่องดีกว่าที่จะเปลี่ยนการตั้งค่า BIOS มากกว่าการตั้งค่ารีจิสทรี การตั้งค่ารีจิสทรีบางส่วนถูกรีเซ็ตเมื่อบู๊ต
crimbo

4

ไม่แน่ใจเกี่ยวกับความธรรมดา แต่ในการตั้งค่า CMOS (BIOS) บนเมนบอร์ด Asrock ตัวเลือกที่เรียกว่า "Hotswap" จะปรับเปลี่ยนพฤติกรรม มีให้สำหรับแต่ละช่อง SATA นอกจากนี้ยังมีตัวเลือก "External SATA" แต่ปิดใช้งานตามค่าเริ่มต้นและฉันไม่ได้แตะต้องมัน


3

หากคุณมีชิปเซ็ต NVIDIA การแก้ไขรีจิสทรีต่อไปนี้จะทำงานให้คุณ ...

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvata] 
"DisableRemovable"=dword:00000001 

ตรวจสอบคำอธิบายนี้สำหรับรายละเอียดเพิ่มเติม


2
ใช่ฉันพบวิธีแก้ปัญหานี้ใน Google แต่ไม่ได้ผลสำหรับฉัน
sblair

1

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


0

ฉันยังพบปัญหานี้เมื่อฉันมี SSD เป็นไดรฟ์สำหรับเริ่มระบบและ HDD เป็นอุปกรณ์เก็บข้อมูลเพิ่มเติม

ฉันลองใช้เทคนิคการแก้ไขรีจิสทรีทั้งหมด แต่ก็ไม่มีใครทำออกมาได้สิ่งเดียวที่ทำงานให้ฉันได้ก็คืออัปเดตไบออส

ฉันใช้โน้ตบุ๊ก Dell ฉันดาวน์โหลดการอัปเกรด BIOS ล่าสุดจากเว็บไซต์ dell.com/support ป้อนแท็กบริการซึ่งฉันพบในเมนู BIOS ภายใต้การบำรุงรักษาดาวน์โหลดไดรเวอร์และเรียกใช้โปรแกรม แก้ไขปัญหาแล้ว


-1

ใน BIOS ภายใต้การกำหนดค่าการจัดเก็บข้อมูลฉันเปลี่ยน 'กำหนดค่า SATA เป็น' จาก IDE เป็น AHCI และแก้ไขได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.