À ce stade, tout le monde sait qu'il existe une limite au nombre de ShellIconOverlayIdentifiers
(à partir de MSDN):
Le nombre de gestionnaires de superposition d'icônes différents que le système peut prendre en charge est limité par la quantité d'espace disponible pour les superpositions d'icônes dans la liste d'images système. Il y a actuellement quinze emplacements alloués pour les superpositions d'icônes, dont certains sont réservés par le système. Pour cette raison, les gestionnaires de superposition d'icônes ne devraient être implémentés que s'il n'y a pas d'alternatives satisfaisantes
Je peux comprendre la limite de 15 superpositions dans Windows 95. Mais dans un environnement où il y a des gigaoctets de RAM, de nombreux cœurs et GPU, y a-t-il une raison technique pour un nombre aussi bas dans un système d'exploitation moderne?
Et pourquoi cette valeur n'est-elle pas configurable?
Avant de donner la réponse `` performances '', considérez: Windows permet une configuration telle que vous pouvez tuer les performances ... pourquoi choisir spécifiquement ce problème?
Réponses:
À moins que quelqu'un ici ne travaille dans l'équipe Windows Shell, je doute que vous obteniez une réponse qui aborde vraiment les limites techniques et la façon dont elles affectent le choix de conception. Mais j'essayerai...
Je suppose qu'il n'y a pas de limitation technique, ou du moins il n'y en a pas maintenant. La vraie raison est vraisemblablement que personne n'a jamais pris le temps de s'asseoir et de mettre à jour le code, la conception et les spécifications pour lever cette limitation. Les fonctionnalités ne sont pas implémentées par défaut, et ce n'est pas parce que l'environnement informatique a changé au cours des dernières années que quelqu'un s'est assis et a réécrit Windows pour tirer pleinement parti de tous ces changements.
Vous devez également considérer qu'il s'agit plus que probablement d'un choix de conception conscient, plutôt que d'une limitation imposée. Raymond Chen (qui en fait fait le travail de l'équipe shell) a publié une entrée de blog répondant à la rumeur sur Windows 7 enlever la couverture de la « main de partage ». Il fait un argument convaincant selon lequel la superposition d'icônes n'est vraiment pas un moyen souhaitable de montrer des informations (au-delà du fait que le système est limité à 15) [italiques ajoutés]:
Il me semble raisonnable que l'encombrement supplémentaire ajouté à la coque n'en vaut tout simplement pas la peine dans la majorité des cas réels. L'équipe Windows Shell est évidemment parvenue à la même conclusion et a coupé la superposition "partage de main". Explication directe de Raymond:
Et je sais que vous avez spécifiquement demandé de ne pas mentionner les performances, mais Windows essaie vraiment de vous empêcher de vous tirer une balle dans le pied. Les utilisateurs exigent de la réactivité dans le shell, et les icônes de superposition peuvent interférer avec cela. Comme preuve supplémentaire qu'ils ne sont pas la priorité , un autre article de blog du même Raymond Chen châtie:
la source
ShellIconOverlayIdentifiers
entrée de registre avec OneDrive crud à partir de Win10. Pour un développeur en utilisant quelque chose comme TortoiseSVN / GIT, ces superpositions sont cruciales et le fait que seul peut être montré est une raison POURQUOI .Excellente réponse sur les questions pratiques par Cody. Quant à savoir pourquoi 15 et pas un autre nombre, la limite est intégrée au contrôle ImageList lui-même.
la source
Tout cela est très bien, comme l'explique Cody Gray, mais franchement, c'est assez sans imagination, et comme rapporté dans les coulisses, cela semble un peu frustré.
En 2015 et avec Windows 10, il peut et doit sûrement y avoir une meilleure capacité, comme je l'ai noté une trentaine de superpositions présentes et j'ai dû prioriser celles que je voulais le plus voir, ce qui n'est pas du tout ce dont la plupart des gens devraient s'inquiéter. De plus, je vois des fournisseurs agressifs comme Box sur-concurrencer pour essayer de se prioriser, et cela ne sera jamais bon.
Voici une possibilité: que se passe-t-il si les icônes superposées à plusieurs reprises avaient un indicateur de superposition générique; une petite matrice rectangle de plusieurs couleurs comme le bouton Google Chrome Apps? Une seule superposition afficherait simplement la superposition sur une longue liste.
Ensuite, lorsque le pointeur de la souris rencontre l'icône, une petite fenêtre déroulante rassemble toutes les variations d'icônes à visualiser (à petite taille d'icône ou un peu plus grande). Chaque icône superposée annonce à son tour par une info-bulle de quoi il s'agit, lorsque vous passez la souris dessus.
Vous pouvez maintenant avoir toutes les superpositions d'icônes dont vous avez besoin, pour l'état dans divers nuages, pour les indications de référentiel comme pour les outils Tortoise, et ainsi de suite.
la source