87 votes

Comment puis-je supprimer l'option d'éjection des disques SATA de l'icône de la barre d'état système de Windows 7?

L'icône Retirer le périphérique en toute sécurité dans Windows 7 offre la possibilité d'éjecter mes disques SATA, y compris le disque de démarrage. Je ne pense pas avoir jamais besoin de cela - surtout pas depuis l'icône de la barre d'état.

Y a-t-il un paramètre BIOS commun pour désactiver le hot-swap ?

Éjecter les disques SATA internes

2 votes

Lors de la mise à niveau de Vista vers Windows 7 RTM, mes disques SATA ne s'affichent plus dans le menu Retirer le périphérique en toute sécurité. Pouvez-vous confirmer que ce problème persiste pour vous sur la version RTM de Windows 7?

12 votes

Je me demande à quel point W7 fonctionne de manière stable après l'éjection du disque dur de démarrage. Peut-on éjecter également le CPU ou la carte mère ?

1 votes

Même problème dans mon Windows 8.1, et je suppose que ce sera la même chose dans tous les Windows de 2000 à XP, Vista, 7 et 8. Je suggère d'ajouter plus de balises ;)

65voto

La réponse dépend vraiment du pilote avec lequel vous êtes configuré. J'ai un connecteur SATA à 6 ports (Intel ICH9 - 2922) et j'utilise le pilote MS-AHCI par défaut. Si vous êtes dans le même bateau, créez quelques clés ici :

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci

_

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

Créez maintenant un nouveau DWORD - nom : TreatAsInternalPort, valeur : 1 sous chacune des clés ChannelN. Redémarrez maintenant pour que les changements prennent effet et les lecteurs ne devraient plus apparaître sous 'Retirer en toute sécurité...'

Trucs de geek :

La cause profonde du problème est que le pilote SATA a incorrectement déterminé que votre port SATA interne est externe. Donc, si vous regardez la valeur 'Capabilities' de votre/vos lecteur(s) sous HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\IDE\..\.., elle est probablement définie sur 0x4 ce qui le rend amovible (selon l'opération de OU binaire effectuée des valeurs ci-dessous). Une fois que vous ajoutez le paramètre au registre, le pilote SATA retourne maintenant une valeur 'Capabilities' différente (très probablement 0) et le lecteur cesse d'apparaître sous 'Retirer en toute sécurité...'

//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 votes

Pour déterminer quel contrôleur est lequel, vous pouvez comparer les valeurs numériques sous ...\Msahci\enum avec les HardwareIds dans l'onglet détails de la boîte de dialogue des propriétés du gestionnaire de périphériques.

1 votes

@Kapil: Veuillez jeter un œil à (superuser.com/questions/420584/…) [ce] question lorsque vous aurez le temps. Merci d'avance.

3 votes

Selon la réponse, j'ai obtenu un script regedit pour un travail rapide et sale.

27voto

expiredninja Points 659

Aujourd'hui, j'ai eu le même problème après avoir mis à niveau le PC de mon père de Windows 7 à 10

Ce qui précède ne s'applique plus à Win 8, 8.1 & 10

Ce qui a aidé était une légère variation de ce lien Comment puis-je supprimer l'option d'éjection des disques SATA internes de l'icône de la barre d'état de Windows 8?

C'est-à-dire, j'ai ajouté une nouvelle Valeur de chaîne multiple appelée TreatAsInternalPort à HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci\Parameters\Device avec la valeur:

0
1
2
4
5

(notez les nouvelles lignes)

Paramètre de registre TreatAsInternalPort

BTW Le pilote AHCI était celui d'Intel, pas celui de Microsoft, mais la solution devrait fonctionner avec les deux pilotes.

1 votes

Cela a parfaitement fonctionné :D (J'ai également mis à jour de Win7 à Win10). Merci! (J'ai également utilisé le pilote AHCI de Microsoft).

9 votes

Note : J'ai dû ajouter un saut de ligne après '5' pour que le '5' reste - si je laisse le curseur juste après '5' sur la même ligne, ma valeur tronquée après '4'. Windows 10.

0 votes

Cela a fonctionné parfaitement pour moi aussi, Win10 MSI X570 Ryzen9 avec un SSD de démarrage SATA que Windows m'a soudainement permis d'éjecter. Votre modification du registre a résolu ce problème après un redémarrage rapide.

18voto

cybersans Points 181

C'est une option de niveau BIOS. Sur les nouvelles cartes mères, il y a des options dans le BIOS pour désactiver le hot swapping (lorsque vous utilisez AHCI/RAID comme contrôleur). Lorsque le paramètre hot swap pour un lecteur est désactivé dans le BIOS, il ne sera pas répertorié dans les lecteurs éjectables dans le menu de l'icône de la barre d'état système.

0 votes

Ceci est la meilleure réponse. Il est nettement préférable de modifier un paramètre du BIOS plutôt qu'un paramètre du registre. Certains des paramètres du registre sont réinitialisés au démarrage.

6voto

John D. Points 266

Pas sûr de la fréquence à laquelle cela se produit, mais dans le BIOS CMOS de Asrock motherboards, l'option appelée "Hotswap" modifie le comportement. Elle est disponible pour chaque canal SATA. De plus, il y a une option "SATA Externe", mais elle est désactivée par défaut et je ne l'ai pas touchée.

1 votes

Il s'avère qu'il n'existe pas une telle option dans le BIOS pour certains anciennes cartes mères ASRock - mais il y a une option pour la désactiver dans le Panneau de configuration (comme décrit dans la réponse de @Randy Horca)

3voto

Sean Moubry Points 821

Si vous avez une puce NVIDIA, la modification du registre suivante devrait fonctionner pour vous ...

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

Consultez cette description pour plus de détails.

2 votes

Oui, j'ai trouvé ce contournement sur Google, mais cela n'a pas fonctionné pour moi.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X