
При запуске winget list
в Windows 10 я получаю следующий вывод (на французском, но важен столбец ID
):
Nom ID Version Disponible Source
---------------------------------------------------------------------------------------------------------------------------------------
...
Messages Microsoft Microsoft.Messaging_8wekyb3d8bbwe 4.1901.10241.1000
Visionneuse 3D Microsoft.Microsoft3DViewer_8wekyb3d8bbwe 7.2107.7012.0
Microsoft Edge Microsoft.MicrosoftEdge.Stable_8wekyb3d8bbwe 98.0.1108.50
...
Python 3 Python.Python.3 3.9.2150.0 3.10.2150… winget
Как вы видите, пакеты Microsoft имеют ряд букв и цифр в своем идентификаторе ( 8wekyb3d8bbwe
в этом примере). О чем это говорит?
решение1
8wekyb3d8bbwe
этоИдентификатор издателядля Майкрософт.
Вы можете увидеть больше деталей, если запуститеПолучить-AppXPackageКомандлет PowerShell.
Эти идентификаторы должны соответствовать издателям Microsoft Store и быть уникальными для каждого издателя.
решение2
Строка 8wekyb3d8bbwe
— это случайная строка, выбранная Microsoft для различения названий своих приложений от пользовательских приложений. У нее нет других целей, кроме как избегать конфликтов с идентификаторами пользователей. Похоже, какой-то сотрудник Microsoft развлекался с клавиатурой, пока ее изобретал.
Вы увидите эту строку, повторяющуюся для всех приложений в списке приложений Microsoft по адресу
Имена пакетов для приложений, подготовленных в Windows 10, версия 1709.
Происхождение этой строки неизвестно и не объяснено корпорацией Microsoft.
решение3
Winget поддерживает пакеты из 2 источников - его 'собственные' репозитории и магазин Windows. Для приложений магазина Windows,приложения имеют руководство, и в каком-то смысле я подозреваю, что это было сделано для удобства наличия «одного и того же» пакета для «разных» форматов, и что магазин Windows, по-видимому, является расширением магазина приложений Windows Phone.
Интересно, что в winget, похоже, есть 3 разных формата (или больше?), а названия пакетов кажутся произвольными.
Xbox Game Speech Window Microsoft.XboxSpeechToTextOverlay_8wekyb3d8bbwe 1.21.13002.0
Microsoft Teams MicrosoftTeams_8wekyb3d8bbwe 22006.600.1133.7409
Windows Web Experience Pack MicrosoftWindows.Client.WebExperience_cw5n1h2txyewy 421.20070.45.0
Microsoft использует Microsoft.ProductName_DevID -за исключением MSteamsMS, похоже, также использует 2 разных идентификатора разработчика. 8wekyb3d8bbwe для большинства вещей, но пакет веб-интерфейса находится ниже
За исключением случаев, когда они этого не делают.
Microsoft Edge Microsoft.Edge 98.0.1108.50 winget
Microsoft 365 - en-us O365HomePremRetail - en-us 16.0.14827.20192
Конечно, это не приложения магазина, но некоторыеконсистенциябольно? Edge использует Microsoft как devid, edge как product id. O365 не имеет dev id, только product id
7-Zip 7zip.7zip 19.00 21.07 winget
7zip здесь — это приложение winget, использующее идентификатор разработчика.продукта. Приложения в репозитории winget, как правило, имеют «более простое» имя.издателя.(версия?). Здесь это 7zip для обоих.
команда winget listтакжепоказывает программное обеспечение, установленное другими способами
Quake II Steam App 2320 Unknown
Windows Driver Package - Google, Inc. (WinUSB) AndroidUsbDeviceClass (08/28/2014 11.0.0000.00000) 092555911492C6959D2596D612F52DCA71881CA2 08/28/2014 11.0.0000.00000
Cyberpunk 2077 1423049311_is1 1.31
Epson Customer Research Participation {B26449A6-6007-4460-B4FE-C4776115BCEA} 1.83.0000
NVIDIA Graphics Driver 511.65 {B2FE1952-0186-46C3-BAEC-A80AA35AC5B8}_Display.Driv… 511.65
Да, это смесь случайных GUID, различных идентификаторов и... как бы люди ни захотели это назвать.
Если посмотреть на все это — последовательность букв и цифр в имени пакета не имеет никакого «реального» значения. Это GUID, номера версий и имена пакетов, используемые различными источниками данных, к которым обращается winget. Любое реальное значение будет зависеть от контекста того, как установлена программа, и того, как разработчик решит ее выпустить