Почему Microsoft не допускает неподписанные темы в Windows [закрыто]

3

Мне просто любопытно, почему Microsoft не допускает создание пользовательских тем в своей операционной системе Windows. Фонд существовал со времен XP, они просто отключили эту функцию, так как они официально представили графические темы в Windows XP. Я знаю, как обойти ограничение и наслаждаться моей темой, мне просто интересно, почему такая полезная функциональность была намеренно отключена? Windows (кроме RT) позволяет устанавливать любое программное обеспечение и имеет встроенную функцию для замены всей оболочки EXPLORER. Почему они блокируют темы, не подписанные ими?

jmans25
источник
Проще говоря. Вредоносные темы у нас проблема прежде чем они ее заблокировали
Ramhound
@Ramhound Пользователи по-прежнему могут устанавливать вредоносные программы «Диспетчер тем», поэтому запрет тем, основанных на UXTheme, не снижает вероятность того, что пользователь установит вредоносное ПО. Фактически, это увеличивает вероятность, так как сделать исполняемый файл вредоносным ПО НАМНОГО проще, чем файл темы .msstyles.
jmans25
Ваша логика не имеет смысла. Вы спросили: «Почему Microsoft не разрешает создавать пользовательские темы», а затем говорите: «Пользователи по-прежнему могут устанавливать программное обеспечение диспетчера тем». Так что в принципе все еще можно установить пользовательские темы. Большинство людей не устанавливают пользовательское программное обеспечение для установки темы, что ограничивает доступ к файлам вредоносных тем.
Ramhound
@Ramhound позвольте мне перефразировать: Microsoft не позволяет устанавливать собственные темы без какой-либо исполняемой программы, которая либо исправляет файл UXTHEMES.dll, либо внедряет что-либо в проводник, либо полностью заменяет проводник. "Most people won't install custom software to install a theme, thus limiting the exposer to malicious theme files." Именно моя точка зрения. Если бы существовал встроенный способ установки тем, больше людей устанавливали бы темы, так как не было бы необходимости в специальном программном обеспечении.
jmans25

Ответы:

1

Windows делает расширяемость легкой, имея очень четкие контракты на то, что будет делать система и что должна делать написанная вами программа. Microsoft придает большое значение обратной совместимости, и если бы они документировали интерфейсы для создания собственной темы (путем замены themeui.dll ) можно ожидать, что они не будут ломать его с каждым выпуском, что серьезно ограничит их способность повторять свой дизайн пользовательского интерфейса.

Каждая версия Windows, начиная с XP, внесла значительные изменения в общий внешний вид и работу различных частей пользовательского интерфейса. Поддерживать совместимый контракт через многократные итерации было бы кошмаром ( маленький пример ).

Помимо этого, программирование оболочки является трудным. Вы должны не только предвидеть сбои вашего собственного кода, но и код процесса, в который вы загружены. Другие модули, с которыми вы вынуждены играть смешной вещи с глобальное состояние и вообще усложняют вашу жизнь. А так как в отчете о сбое говорится «explorer.exe», любой сбой в вашем коде заставляет Microsoft выглядеть плохо.

Если технических причин было недостаточно, изменение внешнего вида еще больше фрагментирует идентичность «Windows» почти так же, как в Android в настоящее время происходит кризис идентичности. Это усложняет обучение и, в конце концов, ничего не делает, чтобы значительно улучшить удобство использования системы.

Mitch
источник
Так как мой вопрос был заблокирован (я понимаю, почему - он философский по своей природе), и потому что ваш ответ хорошо написан и подтверждает вашу точку зрения, я приму его;) Хотя ваше высказывание имеет смысл: разрешать темы фрагментировать бренд Microsoft ,
jmans25