Настройте Windows 8.1 StartScreen путем декодирования файла двоичных данных *.itemdata-ms (Windows 8.1, StartScreen, C#)

Я попытаюсь отредактировать стартовый экран Windows 8.1 более удобным и не зависящим от пользователя способом.

Я знаю, что это не способ Microsoft использовать свою ОС, но в корпоративной среде должен быть способ настроить StartScreen. Ф.э. если я развертываю новый пакет программного обеспечения, на StartScreen должен быть значок (в правой группе, в заранее определенной позиции).

Итак, я обнаружил, что файлы appsFolder.itemdata-ms и appsFolder.itemdata-ms.bak имеют двоичную кодировку. Если я открою их в шестнадцатеричном редакторе, будет видно несколько имен групп и ссылок, но не в формате дампа. Также нет возможности отредактировать этот тайл в шестнадцатеричном редакторе так, как это необходимо.

Часть файла appsFolder.itemdata-ms

?%?????☺↔         ▼   ♠   S t o r e           Y+↨♣♦?BGJ   F   1SPS?w?

Пробовал писать декодер (использовал C#), безуспешно, все можно посмотреть, но только так, как было в hex-редакторе.

Пробовал команду PowerShell Export-StartLayout -as xml все экспортировалось правильно, группы, тайлы, позиции в:

export.xml

<launcher version="2">
   <view name="Start">
     <group name="Desktop">
       <tile FencePost="0" size="wide310x150" AppID="Microsoft.Windows.Desktop"/>
       <tile FencePost="0" size="square150x150" AppID="Microsoft.InternetExplorer.Default"/>
       <tile FencePost="0" size="square150x150" AppID="Chrome"/>
     </group>
     <group name="Entwicklung">
       <tile FencePost="0" size="square150x150" AppID="{7C5A40EF-A0FB-4BFC-874A-C0F2E0B9FA8E}\Fiddler2\Fiddler.exe"/>
       <tile FencePost="0" size="square150x150" AppID="{7C5A40EF-A0FB-4BFC-874A-C0F2E0B9FA8E}\Notepad++\notepad++.exe"/>
      </group>
    </view>
</launcher>

Но Import-StartLayout не работает должным образом, с помощью этой команды ранее экспортированный макет не может быть применен к текущему пользователю (только с помощью gpo, но тогда блокируется стартовый экран).

Я также использовал ILSpy для проверки PowerShell Cmt-Let, но это закончилось неуправляемыми частями кода.

Короче говоря, есть ли способ декодировать двоичные файлы, чтобы отредактировать их (может быть, с помощью стороннего инструмента?) и записать их обратно, чтобы применить изменения к текущему пользователю?


person Martin    schedule 17.09.2013    source источник
comment
в Windows 8.1 можно настроить начальный экран как часть развертывание операционной системы. Я уверен, что какая-то предприимчивая третья сторона уже придумала более детальное решение.   -  person Luke    schedule 18.09.2013
comment
@Luke - я знаю метод во время развертывания. но что, если пользователь получит новый программный пакет, как я могу добавить эту плитку на свой стартовый экран в заранее определенное положение. Но, насколько мне известно, я надеюсь, что кто-то может помочь мне понять, как Microsoft более подробно обрабатывает стартовый экран.   -  person Martin    schedule 18.09.2013
comment
Кажется, это также можно сделать через групповая политика.   -  person Luke    schedule 19.09.2013
comment
таким образом пользователь не может редактировать тайлы. как я уже сказал, для меня лучше всего подходит, если у пользователя есть f.e. одна группа фиксированная, а остальные настраиваемые. И последнее и невозможное: если пользователь получит новый программный пакет, как можно добавить эту плитку на его стартовый экран? (в правильном положении)   -  person Martin    schedule 19.09.2013
comment
Есть ли какие-либо новые исследования или результаты, возможно, с новым обновлением 1 для Windows 8.1. Я обнаружил некоторые серьезные изменения и очень хорошие улучшения, которые они сделали с этим обновлением в отношении приложений, но ничего, касающегося настройки начального экрана.   -  person Martin    schedule 17.06.2014


Ответы (3)


Нет, это невозможно, и это по замыслу (не то чтобы я согласен с таким выбором дизайна). У меня было несколько споров с Группой продуктов Windows по этому поводу.

Это похоже на то, как Microsoft заблокировала панель задач. См. здесь:

«Примечание. Приложения не могут программно прикрепляться к панели задач. Эта функция предназначена исключительно для пользователя».

Либо:

  1. Вы устанавливаете плитки начального экрана для всех пользователей с помощью групповой политики или в образе. (закрытая среда)
  2. Вы позволяете пользователям настраивать свой рабочий стол по своему усмотрению (определяемая пользователем среда).
person Keith S Garner    schedule 09.10.2013
comment
+1, к сожалению, это верно для Windows 8. Было бы неплохо, если бы администратор мог указать разумные значения по умолчанию для моей организации, но при этом позволить пользователям настраивать их по своему усмотрению. Я слышал, что это будет в 8.1. - person Joel Coehoorn; 09.10.2013
comment
+1 Но не тот ответ, который я хотел увидеть. Я надеюсь, что это изменится в Windows 8.2 или, может быть, 9;) - person Martin; 10.10.2013
comment
+1, у меня такое чувство, что Windows 10 рискует стать еще хуже. Программное обеспечение от крупных компаний часто меняется вот так. Удаление панели быстрого запуска в Windows по умолчанию — еще один пример, который объясняется тем, что панель задач является заменой (windows.microsoft.com/en-GB/windows7/desktop). что, если вы хотите много ярлыков, которые вскоре заполнили бы всю ширину панели задач. Если бы только они могли предоставить больше опций, даже если они скрыты по умолчанию, чтобы облегчить работу новичков. - person Kioshiki; 16.02.2015

Я тоже ищу способы редактировать файл данных начального экрана. Я заставил его работать через объект групповой политики, и я использовал .Net Reflector для анализа командлета Export-StartLayout. Он работает, вызывая метод COM-интерфейса, определенный в windows\system32\twinapi.dll, поэтому декодировать формат файла данных непросто.

Файл xml содержит идентификаторы приложений, которые определены в реестре и могут быть перечислены командлетом PS get-startapps, поэтому для этого можно создать редактор.

Я работаю со школами и колледжами, поэтому контролировать рабочий стол очень сложно. На данный момент большинство школ, с которыми я имею дело, воздерживаются от Windows 8 из-за подобных проблем. Кажется, MS просто не слушает, что действительно нужно людям!

person Doobiferkin    schedule 09.12.2013
comment
+1 ;) ... Я тоже успешно отредактировал xml файл и выкатил через gpo. Но в нашей среде необходимо добавлять плитки, если наш упаковщик программного обеспечения установил программное обеспечение на клиенте. Кроме того, должна быть возможность заставить f.e. первая группа плиток должна быть исправлена, а другой пользователь обработан. Но как я вижу, тем больше и я должен осознать, что я должен сказать им, чтобы они забыли эту идею - person Martin; 10.12.2013

Убедитесь, что вы экспортируете файл конфигурации в двоичном формате, так как Import-StartLayout не будет импортировать XML-файлы. Вот команда экспорта:

Export-StartLayout -As BIN -Path CustomStartScreenLayout.bin -Verbose
person user3784409    schedule 27.06.2014