ทำไมไอคอน จำกัด ของ Windows ซ้อนทับกับ 15


25

เราสามารถดูคำถามที่ไม่รู้จบเกี่ยวกับ Dropbox vs TortoiseSVN เทียบกับไอคอนแอปอื่น ๆ อีกมากมายซ้อนทับความขัดแย้ง

ตัวอย่างสองประการ:
เหตุใดไอคอนโอเวอร์เลย์ (จากบุคคลที่ 3-Apps) จึงไม่ปรากฏใน Win8 Explorer
ฉันสามารถป้องกันการเปลี่ยนไอคอนซ้อนทับได้หรือไม่

ในกรณีของฉันฉันมี Dropbox และ TortoiseSVN เท่านั้น Dropbox กำลังน่ารำคาญจริงๆ - หลังจากอัพเดททุกครั้งฉันต้องเรียกใช้สคริปต์ที่ทำขึ้นเพื่อลบการวางซ้อนของ Dropbox ออกจากรีจิสตรีแล้วรีสตาร์ท Windows Explorer

ฉันเข้าใจว่า Windows จำกัด การซ้อนทับถึง 15 อาจเป็นเพราะประสิทธิภาพ
อย่างไรก็ตามการเพิ่มเป็น 25 ~ 35 จะส่งผลกระทบต่อประสิทธิภาพอย่างมากหรือไม่
เหตุใด Microsoft ไม่ได้ตระหนักว่านี่เป็นปัญหาที่ได้รับความนิยมมากและพยายามแก้ไขปัญหานี้
อย่างน้อยทำไมตัวเลือกที่ผู้ใช้ขั้นสูงสามารถเปลี่ยนเพื่อเพิ่มขีด จำกัด นี้ได้


ฉันถามไมโครซอฟท์เมื่อไม่นานมานี้และพวกเขาบอกฉันว่า พวกเขาไม่ได้เพิ่มขีด จำกัด พวกเขายังมีแผนที่จะฆ่าพวกเขาอย่างสมบูรณ์
magicandre1981

มันไม่ใช่แค่ประสิทธิภาพ ในการนำไปปฏิบัติในปัจจุบันจะมี 4 บิตในโครงสร้างที่กำหนดดัชนีการซ้อนทับเพื่อให้มีการซ้อนทับสูงสุด 15 รายการ บิตที่มีนัยสำคัญยิ่งที่จำเป็นในการเพิ่มจำนวนนี้จะถูกใช้เพื่อวัตถุประสงค์อื่น วิธีเดียวที่จะได้รับไอคอนซ้อนทับมากขึ้นคือการเปลี่ยนการใช้งานและนั่นจะมีนัยสำคัญเกี่ยวกับความเข้ากันได้ที่สำคัญ มีแอปพลิเคชั่นจำนวนมาก (แอปพลิเคชั่นที่เขียนดีซึ่งปฏิบัติตามกฎทั้งหมด) ซึ่งขึ้นอยู่กับการใช้งานในปัจจุบันและจะแตกถ้ามีการเปลี่ยนแปลง
LMiller7

คำตอบ:


23

ในกรณีของฉันฉันมี Dropbox และ TortoiseSVN เท่านั้น Dropbox กำลังน่ารำคาญจริงๆ - หลังจากอัพเดททุกครั้งฉันต้องเรียกใช้สคริปต์ที่ทำขึ้นเพื่อลบการวางซ้อนของ Dropbox ออกจากรีจิสตรีแล้วรีสตาร์ท Windows Explorer

ลบโฆษณาซ้อนทับที่ไม่ได้ใช้ออกจากตำแหน่งต่อไปนี้:

  • KEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ ShellIcon OverlayIdentifiers

  • KEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Windows \ CurrentVersion \ explor เอ้อ \ ShellIconOverlayIdentifiers

ที่มา: เหตุใดไอคอนโอเวอร์เลย์ (จากบุคคลที่ 3-Apps) จึงไม่ปรากฏใน Win8 Explorer

การเพิ่มเป็น 25 ~ 35 จะส่งผลกระทบอย่างมากต่อประสิทธิภาพหรือไม่

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

เหตุใด Microsoft ไม่ได้ตระหนักว่านี่เป็นปัญหาที่ได้รับความนิยมมากและพยายามแก้ไขปัญหานี้

ฉันคิดว่ามันจะส่งผลกระทบต่อคนน้อยลงแล้วคุณคิดว่ามันจะ มีใครบางคนจากทีม Windows Shell เท่านั้นที่รู้คำตอบนี้ จนกว่า Microsoft จะทำการตัดสินใจการตัดสินใจของพวกเขาเราสามารถทำการเดาได้อย่างรู้เท่าทันซึ่งโดยทั่วไปจะเป็นว่าไม่มีใครเพิ่มขีด จำกัด ได้

อย่างน้อยทำไมตัวเลือกที่ผู้ใช้ขั้นสูงสามารถเปลี่ยนเพื่อเพิ่มขีด จำกัด นี้ได้

มีใครบางคนจากทีม Windows Shell เท่านั้นที่รู้คำตอบนี้ จนกว่า Microsoft จะทำการตัดสินใจการตัดสินใจของพวกเขาเราสามารถทำการเดาได้อย่างรู้เท่าทันซึ่งโดยทั่วไปจะไม่มีใครเขียนรหัสเพื่อให้เราเพิ่มขีด จำกัด

Raymond Chen นักพัฒนาซอฟต์แวร์ของ Microsoft แจ้งว่ามีการซ้อนทับไอคอนดังต่อไปนี้

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

นายเฉินยังกล่าวอีกว่า:

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

แหล่งที่มา: ไอคอนซ้อนทับเหล่านั้นคืออะไร: Windows 7 edition


1

มีการโพสต์บล็อกใหม่ในหัวข้อจาก Raymond Chen: ทำไมจึงมีการ จำกัด การซ้อนทับของไอคอนเชลล์ 15 ตัว? ซึ่งจะมีรายละเอียดมากขึ้น แต่เป็นเวอร์ชั่นย่อ: สาเหตุมาจากความเข้ากันได้กับเวอร์ชันเก่าและ API ปัญหาเกี่ยวกับประสิทธิภาพและข้อเท็จจริงที่ว่าไอคอนทับซ้อนไม่แนะนำในวันนี้:

โดยทั่วไปแล้วจะเดือดลงไปที่“ มันจะเป็นงานมากและเราขี้เกียจ”

และนอกจากนี้ยังมี:

แต่เหตุผลหลักนี้ไม่ได้รับการดำเนินการก็คือว่าภาพซ้อนทับไม่แนะนำให้ใช้เป็นวิธีในการถ่ายทอดข้อมูลเมตาเกี่ยวกับแฟ้มให้กับผู้ใช้

และ:

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


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

0

ฉันต้องการแก้ไขความเข้าใจผิดด้วย ใช่มีไอคอนทั้งหมด 15 ไอคอน แต่จริงๆแล้วมันมีไอคอนซ้อนทับ 11 อันเพราะ Windows System สงวน 4 สำหรับตัวเองดังนั้นมันจึงมี 11 ไอคอนสำหรับโปรแกรมอื่น ๆ (15-4 = 11) นี่เป็นไปตามเว็บไซต์สนับสนุนของ Microsoft อย่างเป็นทางการ ( URL ที่เก็บถาวร )

จำนวนตัวจัดการโอเวอร์เลย์ไอคอนที่ระบบสามารถรองรับนั้นถูก จำกัด ด้วยจำนวนพื้นที่ว่างสำหรับไอคอนซ้อนทับในรายการอิมเมจระบบ ขณะนี้มี 15 ช่องที่จัดสรรให้กับภาพซ้อนทับไอคอนซึ่ง 4 ช่องถูกสงวนไว้โดยระบบ เมื่อมีตัวจัดการการซ้อนทับไอคอนมากกว่า 11 ตัวที่ลงทะเบียนไว้ในระบบเฉพาะการซ้อนทับไอคอน 11 ตัวแรกที่จัดทำโดยตัวจัดการการซ้อนทับไอคอนจะถูกเพิ่มในรายการอิมเมจระบบ ตัวจัดการโอเวอร์เลย์ไอคอนที่เหลือจะไม่ถูกใช้

ที่มา: เว็บไซต์สนับสนุนของ Microsoft อย่างเป็นทางการ ( URL ที่เก็บถาวร )

ประกาศ PSA:

ฉันได้ออกแบบหน้า Wikipedia ซึ่งมีไว้เฉพาะเพื่อแสดงรายการไอคอนเชลล์ทั้งหมดที่ซ้อนทับดังนั้นผู้ใช้สามารถระบุได้ว่าอันไหนที่มีประโยชน์สำหรับตัวเองมากที่สุดสำหรับ Dropbox, OneDrive, Tortoise, ฯลฯ ...

โปรดตรวจสอบหน้า Wiki ของฉันและโปรดช่วย:

https://en.wikipedia.org/wiki/List_of_Shell_Icon_Overlay_Identifiers

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