Comment puis-je supprimer l'option d'éjecter les disques SATA internes de l'icône de la barre d'état de Windows 8?

13

L'icône Retirer le périphérique en toute sécurité dans Windows 8 (et 8.1) offre la possibilité d'éjecter mes disques SATA internes, y compris le disque de démarrage (voir l'exemple):

entrez la description de l'image ici

Je ne me vois jamais avoir besoin de cela - surtout pas à cause de la commodité de l'icône de la barre d'état.

Pour Windows 7 existe une solution bien connue ( réponse 1 , réponse 2 , etc.). Mais dans Windows 8, le pilote msahci a été remplacé par storahci. Malheureusement, la solution de contournement TreatAsInternalPort ne fonctionne plus.

Anton
la source
dans Win7, il a aidé à installer les pilotes Intel. Quel chipset possédez-vous? Essayez d'installer les pilotes AHCI du fabricant du chipset (AMD, Intel, nVIDIA)
magicandre1981
@ magicandre1981 J'ai un contrôleur AHCI Intel ICH9 (pas ICH9 R ). Les pilotes AHCI d'Intel (Matrix / RST) ne sont pas officiellement disponibles pour ce Southbridge. Par ailleurs, ICH9 pris en charge par le pilote MS storahci. Ma question initiale concernait uniquement le pilote storahci. Je suppose que je devrais parler plus clairement.
Anton

Réponses:

10

La TreatAsInternalPortvaleur existe toujours dans le storahcipilote Windows 8 , mais sa syntaxe a changé.

Il est maintenant dans la clé HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\storahci\Parameters\Device, et est une REG_MULTI_SZliste de numéros de port à forcer à traiter comme interne.

Par exemple, pour désactiver l'amovibilité sur les ports 0 et 1, vous utiliseriez

Éditeur de registre Windows version 5.00

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ storahci \ Parameters \ Device]
"TreatAsInternalPort" = hex (7): 30,00,00,00,3,3,00,00,00,00,00

Malheureusement, je n'ai aucune idée de la façon dont ces ports sont numérotés. 😕

kinokijuf
la source
Conseil rapide: cliquez avec le bouton droit sur la touche et sélectionnez "modifier les données binaires" pour obtenir la vue hexadécimale. Sinon, en utilisant la vue par défaut, vous vous tromperez.
masi
A travaillé pour moi sur ATI / AMD X1200 fossilisé avec Windows 10. Merci!
LogicDaemon
3

ou Windows 10:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\storahci\Parameters\Device]
"TreatAsInternalPort"=hex(7):30,00,31,00,32,00,33,00,34,00,35,00,00

(Merci à kinokijuf pour la longueur d'avance, mais son code n'a désactivé que 1 lecteur pour moi (lecteur 0 sur mon 2ème contrôleur).
Celui-ci a fonctionné pour les 5 lecteurs que j'ai. (Et probablement le 6ème aussi).
Je pense que c'était car il y avait une nouvelle ligne BLANK entre ses valeurs (00 dans hex est newline), (30 dans hex est 0, 31 est 1, etc.).

Celui-ci a fonctionné sur les 4 ports: capture d'écran

Abei Villafane
la source
Cela a fonctionné pour moi, mais l'emplacement de était légèrement différent. Je l'ai trouvé dans HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ storahci \ Parameters \ Device
Sasha
1

J'ai eu le même problème dans Windows 8.1 avec des disques durs connectés à une puce intégrée ASMedia 106x et utilisant le pilote storahci au lieu du pilote ASMedia (gèlerait ma boîte féroce!).

J'ai fini par le résoudre en utilisant la suggestion de Raiddinn trouvée ici .

Essentiellement, j'ai créé une tâche planifiée qui s'exécute au démarrage du système et qui importe le fichier de registre suivant, en modifiant la clé "Capabilities" sous les 2 périphériques HDD:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\SCSI\Disk&Ven_WDC&Prod_WD6400AAKS-22A7B\5&288c89f1&2&000000]
"Capabilities"=dword:000000e0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\SCSI\Disk&Ven_WDC&Prod_WD6401AALS-00L3B\5&1272cb31&2&000000]
"Capabilities"=dword:000000e0

Le problème sera pour vous de retrouver les clés ci-dessus pour votre configuration car elles sont légèrement différentes pour chaque installation. Cependant, si vous trouvez le lecteur en question dans votre "Gestionnaire de périphériques", puis regardez les propriétés, en particulier "Chemin d'instance de périphérique" sur l'onglet "Détails", vous trouverez où dans le registre l'entrée se trouve (toujours ci-dessous HKLM\SYSTEM\CurrentControlSet\Enum\. Donc, en combinant HKLM\SYSTEM\CurrentControlSet\Enum\avec le "Chemin d'instance de périphérique", vous devriez trouver le bon emplacement qui contient la valeur "Capacités".

J'espère que cela est quelque peu utile.

Jonas M. Hunziker
la source
Merci d'avoir signalé cette solution générique. Fonctionne comme un charme. Je voudrais mentionner que la solution ci-dessus a été initialement attribuée à Guillaume à Parallel Interface ( Empêcher le lecteur interne de s'afficher dans "Retirer le matériel en toute sécurité" )
Anton
1
Downvoted car c'est un hackjob.
kinokijuf
2
J'ai voté parce que c'est la seule solution que j'ai trouvée qui fonctionne réellement dans Windows 10.
willus
@willus Vous devriez vérifier le mien. C'est beaucoup plus propre.
kinokijuf
@kinokijuf D'accord, le vôtre est plus propre. À l'époque, je ne pouvais pas comprendre quelle valeur cette clé "TreatAsInternalPort" devait avoir car tout ce que j'ai essayé ne fonctionnerait pas.
Jonas M. Hunziker