Windows desktop app download

Содержание
  1. Windows Desktop App Converter Base Images
  2. Windows – Desktop App Converter Base Images
  3. Упаковка классического приложения с помощью Desktop App Converter Package a desktop application using the Desktop App Converter
  4. DAC не просто создает для вас пакет The DAC does more than just generate a package for you
  5. Сначала подготовьте свое приложение First, prepare your application
  6. Системные требования для преобразователя Make sure that your system can run the converter
  7. Запуск Desktop App Converter Start the Desktop App Converter
  8. Настройка нескольких параметров (только для приложений с установщиками) Set a few things up (apps with installers only)
  9. Упаковка приложения Package an app
  10. Краткий обзор параметров команды A quick look at command parameters
  11. Примеры Examples
  12. Упаковка приложения, имеющего файл установщика (.msi) Package an application that has an installer (.msi) file
  13. Упаковка приложения, имеющего исполняемый файл установки Package an application that has a setup executable file
  14. Упаковка приложения, не имеющего установщика Package an application that doesn’t have an installer
  15. Упаковка и подписание приложения, а также запуск проверочных тестов для пакета Package an app, sign the app, and run validation checks on the package
  16. Краткий обзор необязательных параметров A quick look at optional parameters
  17. Справка по параметрам Parameter Reference
  18. Запуск упакованного приложения Run the packaged app
  19. Изменение упакованного приложения Modify the packaged app
  20. Удаление ненужных файлов и разделов реестра Delete unnecessary files and registry keys
  21. Исправление поврежденных PE-заголовков Fix corrupted PE headers
  22. Телеметрия Desktop App Converter Telemetry from Desktop App Converter
  23. Языковая поддержка Language support
  24. Известные проблемы с Desktop App Converter Known issues with the Desktop App Converter
  25. Ошибки E_CREATING_ISOLATED_ENV_FAILED и E_STARTING_ISOLATED_ENV_FAILED E_CREATING_ISOLATED_ENV_FAILED and E_STARTING_ISOLATED_ENV_FAILED errors
  26. Ошибка «New-ContainerNetwork: объект уже существует» New-ContainerNetwork: The object already exists error
  27. Приложение .NET скомпилировано с использованием параметра сборки «AnyCPU», и его установка завершается сбоем Your .NET application is compiled with the «AnyCPU» build option and fails to install
  28. Публикация общедоступных параллельных сборок Fusion будет невозможна Publishing public side-by-side Fusion assemblies won’t work
  29. В XML обнаружена ошибка. Error found in XML. Атрибут «Executable» недействителен: значение «MyApp.EXE» недействительно с точки зрения его типа данных The ‘Executable’ attribute is invalid — The value ‘MyApp.EXE’ is invalid according to its datatype
  30. Поврежденные или деформированные подписи Authenticode Corrupted or malformed Authenticode signatures
  31. Дальнейшие действия Next steps

Windows Desktop App Converter Base Images

Windows – Desktop App Converter Base Images

From this download page you can download the latest Windows 10 Base Images (.WIM) for use with the Desktop App Converter. The Desktop App Converter is now available in the Store. Please visit the store at https://aka.ms/converter for future updates.

Desktop App Converter is a tool that enables developers to bring their existing desktop apps written for .NET 4.6.1 or Win32 to the Universal Windows Platform. The developers can run their desktop installers through the converter in an unattended (silent) mode and obtain a Windows app package that can be installed via the Add-AppXPackage PowerShell cmdlet on their development machine.

The converter runs the desktop installer in an isolated Windows environment using a clean base image provided in this download. It captures any registry and file system I/O made by the desktop installer and packages as part of the output. A Windows app package with unique identity and an ability to call a vast range of WinRT APIs is outputted by the converter.

The software may collect information about you and your use of the software and send that to Microsoft. You can learn more about Microsoft’s data collection and use in the product documentation and the Microsoft Privacy Statement. You agree to comply with all applicable provisions of the Microsoft Privacy Statement.

You can learn about how to disable telemetry in the product documentation available on MSDN.

To find out what’s new in this release of the converter, visit the product documentation on MSDN.

Supported Operating System

  • Windows 10 Anniversary Update (10.0.14393.0) and later – Pro or Enterprise edition.

Required Hardware Configuration Your computer must have the following minimum capabilities.

  • 64 bit (x64) processor.
  • Hardware-assisted virtualization.
  • Second Level Address Translation (SLAT).

Required Resources

  • Microsoft Windows 10 SDK from here.
  • Please ensure that you have the latest Windows 10 Anniversary Update OS (Build 14393 or newer).

Please see the product documentation available on MSDN for further instructions on how to use the Desktop App Converter.

Упаковка классического приложения с помощью Desktop App Converter Package a desktop application using the Desktop App Converter

Средство Desktop App Converter не рекомендуется к использованию. The Desktop App Converter tool is deprecated. Вместо этого рекомендуем использовать средство упаковки MSIX. We recommend that you use the MSIX Packaging Tool instead.

Desktop App Converter (DAC) создает пакеты для классических приложений для интеграции с последними функциями Windows, включая распространение и обслуживание с помощью Microsoft Store. The Desktop App Converter (DAC) creates packages for desktop applications to integrate with the latest Windows features, including distribution and servicing via the Microsoft Store. Сюда входят приложения Win32 и приложения, созданные с помощью .NET 4.6.1. This includes Win32 apps and apps that you’ve created by using .NET 4.6.1.

Хотя в названии этого средства содержится термин Converter (преобразователь), на самом деле оно не преобразует ваше приложение. While the term «Converter» appears in the name of this tool, it doesn’t actually convert your app. Приложение остается без изменений. Your application remains unchanged. Однако это средство создает пакет приложения для Windows с идентификатором пакета и позволяет вызывать разнообразные API WinRT. However, this tool generates a Windows app package with a package identity and the ability to call a vast range of WinRT APIs.

Чтобы установить этот пакет на компьютер, на котором ведется разработка, можно использовать командлет Add-AppxPackage для PowerShell. You can install that package by using the Add-AppxPackage PowerShell cmdlet on your development machine.

Преобразователь запустит классическую программу установки в изолированной среде Windows, используя чистый базовый образ, предоставляемый в составе скачиваемых файлов преобразователя. The converter runs the desktop installer in an isolated Windows environment by using a clean base image provided as part of the converter download. Он захватывает любые операции ввода-вывода реестра и файловой системы, инициализируемые классической программой установки, и упаковывает их в виде части выходных данных. It captures any registry and file system I/O made by the desktop installer and packages it as part of the output.

Средство Desktop App Converter поддерживается в Windows 10 версии 1607 и более поздних версий. Desktop App Converter is supported on Windows 10, version 1607, and later. Его можно использовать только в проектах, предназначенных для юбилейного обновления Windows 10 (10.0, сборка 14393) или более поздней версии в Visual Studio. It can only be used in projects that target Windows 10 Anniversary Update (10.0; Build 14393) or a later release in Visual Studio.

DAC не просто создает для вас пакет The DAC does more than just generate a package for you

Вот несколько дополнительных возможностей, предоставляемых DAC. Here’s a few extra things it can do for you.

Windows 10 Creators Update Windows 10 Creators Update

✔️ Автоматическая регистрация ваших обработчиков просмотра, эскизов, обработчиков свойств, правил брандмауэра, флагов URL-адресов. Automatically register your preview handlers, thumbnail handlers, property handlers, firewall rules, URL flags.

✔️ Автоматическая регистрация сопоставлений типов файлов, которые позволяют группировать файлы с помощью столбца Вид в проводнике. Automatically register file type mappings that enable users to group files by using the Kind column in File Explorer.

✔️ Регистрация ваших общедоступных COM-серверов. Register your public COM servers.

Юбилейное обновление Windows 10 или более поздняя версия Windows 10 Anniversary Update or later

✔️ Автоматическое подписывание пакета, позволяющее протестировать ваше приложение. Automatically sign your package so that you can test your app.

✔️ Проверка приложения на соответствие требованиям для упакованных приложений и Microsoft Store. Validate your application against packaged app and Microsoft Store requirements.

Полный список параметров см. в разделе Параметры этого руководства. To find a complete list of options, see the Parameters section of this guide.

Если вы готовы приступить к созданию пакета, давайте начнем. If you’re ready to create your package, let’s start.

Сначала подготовьте свое приложение First, prepare your application

Прежде чем приступить к созданию пакета для приложения, ознакомьтесь с этим руководством. Prepare to package a desktop application (Подготовка к упаковке классического приложения). Review this guide before you begin creating a package for your application: Prepare to package a desktop application.

Системные требования для преобразователя Make sure that your system can run the converter

Убедитесь, что ваша система соответствует следующим требованиям: Make sure that your system meets the following requirements:

  • Юбилейное обновление Windows 10 Pro или Корпоративная (10.0.14393.0 и более поздней версии). Windows 10 Anniversary Update (10.0.14393.0 and later) Pro or Enterprise edition.
  • 64-разрядный процессор (x64) 64 bit (x64) processor
  • Аппаратные средства виртуализации Hardware-assisted virtualization
  • преобразование адресов второго уровня (SLAT); Second Level Address Translation (SLAT)
  • Пакет средств разработки программного обеспечения (SDK) для Windows 10.Windows Software Development Kit (SDK) for Windows 10.

Запуск Desktop App Converter Start the Desktop App Converter

Скачайте и установите Desktop App Converter. Download and install the Desktop App Converter.

Запустите Desktop App Converter от имени администратора. Run the Desktop App Converter as an administrator.

Откроется окно консоли. A console window appears. Оно будет использоваться для выполнения команд. You’ll use that console window to run commands.

Настройка нескольких параметров (только для приложений с установщиками) Set a few things up (apps with installers only)

Вы можете пропустить этот раздел, если ваше приложение не включает установщик. You can skip ahead to the next section if your application doesn’t have an installer.

Определите номер версии вашей операционной системы. Identify the version number of your operating system.

Для этого введите winver в диалоговом окне Выполнить, а затем нажмите ОК. To do that, type winver in the Run dialog box, and then choose the OK button.

Версия сборки Windows указана в диалоговом окне О программе. You’ll find the version of your Windows build in the About Windows dialog box.

Убедитесь, что номер версии, указанный в имени файла, соответствует номеру версии вашей сборки Windows. Make sure that the version number that appears in the name of the file matches the version number of your Windows build.

Если вы используете номер сборки 15063, а дополнительный номер версии сборки равен или выше .483 (например, 15063.540), не забудьте скачать файл BaseImage-15063-UPDATE.wim. If you’re using build number 15063, and the minor version of that build is equal to or greater than .483 (For example: 15063.540), make sure to download the BaseImage-15063-UPDATE.wim file. Если дополнительный номер версии этой сборки меньше .483, скачайте файл BaseImage-15063.wim. If the minor version of that build is less than .483, download the BaseImage-15063.wim file. Если вы уже установили несовместимую версию этого базового файла, это можно исправить. If you’ve already setup an incompatible version of this base file, you can fix it. В этой записи блога объясняется, как это сделать. This blog post explains how to do that.

Поместите скачанный файл в любое расположение на вашем компьютере, где вы сможете найти его в дальнейшем. Place the downloaded file anywhere on your computer where you’ll be able to find it later.

В окне консоли, которое появилось при запуске Desktop App Converter, выполните следующую команду: Set-ExecutionPolicy bypass . In the console window that appeared when you started the Desktop App Converter, run this command: Set-ExecutionPolicy bypass .

Настройте преобразователь, выполнив следующую команду: DesktopAppConverter.exe -Setup -BaseImage .\BaseImage-1XXXX.wim -Verbose . Set up the converter by running this command: DesktopAppConverter.exe -Setup -BaseImage .\BaseImage-1XXXX.wim -Verbose .

Перезапустите компьютер при появлении соответствующего запроса. Restart your computer if you’re prompted to do so.

По мере развертывания базового образа в окне консоли будут появляться сообщения о состоянии. Status messages appear in the console window as the converter expands the base image. Если вы не видите эти сообщения, нажмите любую клавишу. If you don’t see any status messages, press any key. Это может привести к обновлению содержимого в окне консоли. This can cause the contents of the console window to refresh.

Читайте также:  Linux сервера для начинающих

Когда базовый образ будет полностью развернут, перейдите к следующему разделу. When the base image is fully expanded, move to the next section.

Упаковка приложения Package an app

Для упаковки вашего приложения выполните команду DesktopAppConverter.exe в окне консоли, которое открылось при запуске Desktop App Converter. To Package your app, run the DesktopAppConverter.exe command in the console window that opened when you started the Desktop App Converter.

С помощью параметров укажите имя пакета, издателя и номер версии приложения. You’ll specify the package name, publisher and version number of the application by using parameters.

Если вы зарезервировали имя приложения в Microsoft Store, имена пакета и издателя можно получить с помощью Центра партнеров. If you’ve reserved your app name in the Microsoft Store, you can obtain the package and publisher names by using Partner Center. Если планируется, что приложение будет загружено на другие системы в неопубликованном виде, вы можете указать для этих атрибутов собственные имена при условии, что имя издателя совпадает с именем, указанным в сертификате, который используется для подписания приложения. If you plan to sideload your app onto other systems, you can provide your own names for these as long as the publisher name that you choose matches the name on the certificate you use to sign your app.

Краткий обзор параметров команды A quick look at command parameters

Вот список обязательных параметров: Here are the required parameters.

Вы можете прочитать о каждом из них здесь. You can read about each one here.

Примеры Examples

Вот несколько распространенных способов упаковки приложения. Here’s a few common ways to package your app.

Упаковка приложения, имеющего файл установщика (.msi) Package an application that has an installer (.msi) file

Укажите файл установщика с помощью параметра Installer . Point to the installer file by using the Installer parameter.

Существует два важных аспекта, о которых следует помнить. There are two important things to keep in mind here. Во-первых, убедитесь, что ваш установщик находится в независимой папке и что в ней размещаются только файлы, связанные с этим установщиком. First, make sure that your installer is located in an independent folder and that only files related to that installer are in the same folder. Преобразователь копирует все содержимое этой папки в изолированную среду Windows. The converter copies all of the contents of that folder to the isolated Windows environment.
Во-вторых, если в Центре партнеров пакету назначен идентификатор, который начинается с цифры, не забудьте также передать параметр -AppId и используйте в качестве значения этого параметра только суффикс строки (после точки-разделителя). Secondly, if Partner Center assigns an identity to your package that begins with a number, make sure that you also pass in the -AppId parameter, and use only the string suffix (after the period separator) as the value of that parameter.

Если ваш установщик включает установщики для зависимых библиотек или платформ, возможно, потребуется организовать все несколько иначе. If your installer includes installers for dependent libraries or frameworks, you might have to organize things a bit a differently. См. публикацию об объединении нескольких установщиков в цепочку с помощью моста для классических приложений. See Chaining multiple installers with the Desktop Bridge.

Упаковка приложения, имеющего исполняемый файл установки Package an application that has a setup executable file

Укажите исполняемый файл установки с помощью параметра Installer . Point to the setup executable by using the Installer parameter.

Если в Центре партнеров пакету назначен идентификатор, который начинается с цифры, не забудьте также передать параметр -AppId и используйте в качестве значения этого параметра только суффикс строки (после точки-разделителя). If Partner Center assigns an identity to your package that begins with a number, make sure that you also pass in the -AppId parameter, and use only the string suffix (after the period separator) as the value of that parameter.

Параметр InstallerArguments является необязательным. The InstallerArguments parameter is an optional parameter. Однако так как преобразователю Desktop App Converter необходимо, чтобы ваш установщик работал в автоматическом режиме, этот параметр может потребоваться, чтобы указать флаги для работы вашего приложения без вмешательства пользователя, если таковые ему нужны. However, because the Desktop App Converter needs your installer to run in unattended mode, you might have to use it if your application needs silent flags to run silently. Флаг /S — очень распространенный флаг автоматического режима, но ваш флаг может отличаться в зависимости от того, какие технологии вы использовали для создания файла установки. The /S flag is a very common silent flag, but the flag that you use might be different depending on which installer technology you used to create the setup file.

Упаковка приложения, не имеющего установщика Package an application that doesn’t have an installer

В этом примере используйте параметр Installer , чтобы указать корневую папку ваших файлов приложения. In this example, use the Installer parameter to point to the root folder of your application files.

Используйте параметр AppExecutable , чтобы указать исполняемый файл приложения. Use the AppExecutable parameter to point to your apps executable file.

Если в Центре партнеров пакету назначен идентификатор, который начинается с цифры, не забудьте также передать параметр -AppId и используйте в качестве значения этого параметра только суффикс строки (после точки-разделителя). If Partner Center assigns an identity to your package that begins with a number, make sure that you also pass in the -AppId parameter, and use only the string suffix (after the period separator) as the value of that parameter.

Упаковка и подписание приложения, а также запуск проверочных тестов для пакета Package an app, sign the app, and run validation checks on the package

Этот пример похож на первый, но с одним исключением: здесь описывается, как можно подписать приложение для локального тестирования, а затем проверить его на соответствие требованиям Microsoft Store и упакованных приложений. This example is similar to first one except it shows how you can sign your application for local testing, and then validate your application against packaged app and Microsoft Store requirements.

Если в Центре партнеров пакету назначен идентификатор, который начинается с цифры, не забудьте также передать параметр -AppId и используйте в качестве значения этого параметра только суффикс строки (после точки-разделителя). If Partner Center assigns an identity to your package that begins with a number, make sure that you also pass in the -AppId parameter, and use only the string suffix (after the period separator) as the value of that parameter.

Параметр Sign создает сертификат, а затем подписывает с его помощью ваше приложение. The Sign parameter generates a certificate and then signs your application with it. Для запуска приложения вам придется установить этот сертификат. To run your app, you’ll have to install that generated certificate. Дополнительные сведения см. в разделе о запуске упакованного приложения этого руководства. To learn how, see the Run the packaged app section of this guide.

Проверить приложение можно с помощью параметра Verify . You can validate you application by using the Verify parameter.

Краткий обзор необязательных параметров A quick look at optional parameters

Параметры Sign и Verify являются необязательными. The Sign and Verify parameters are optional. Существует множество других необязательных параметров. There are many more optional parameters. Вот некоторые из наиболее часто используемых: Here are some of the more commonly used optional parameters.

Вы можете прочитать о них в следующем разделе. You can read about all of them in the next section.

Справка по параметрам Parameter Reference

Ниже приведен полный список параметров (упорядоченных по категориям), которые можно использовать при запуске Desktop App Converter. Here’s the complete list of parameters (organized by category) that you can use when you run the Desktop App Converter.

Чтобы просмотреть весь список, можно также выполнить в окне консоли команду Get-Help . You can also view the entire list by running the Get-Help command in the app console window.

Параметры установки Setup parameters Обязательный или необязательный Required or optional? Описание Description
-Setup [ ] -Setup [ ] Обязательный Required Запускает DesktopAppConverter в режиме установки. Runs DesktopAppConverter in setup mode. Режим установки поддерживает развертывание предоставляемого базового образа. Setup mode supports expanding a provided base image.
-BaseImage -BaseImage Обязательный Required Полный путь к неразвернутому базовому образу. Full path to an unexpanded base image. Этот параметр необходим, если указана программа установки. This parameter is required if -Setup is specified.
-LogFile -LogFile Необязательный Optional Определяет файл журнала. Specifies a log file. Если этот параметр пропущен, для файла журнала будет создано временное расположение. If omitted, a log file temporary location will be created.
-NatSubnetPrefix -NatSubnetPrefix Необязательный Optional Значение префикса, которое необходимо использовать для экземпляра Nat. Prefix value to be used for the Nat instance. Как правило, это значение будет необходимо изменить, только если ваш хост-компьютер подключен к тому же диапазону адресов подсети, что и NetNat преобразователя. Typically, you would want to change this only if your host machine is attached to the same subnet range as the converter’s NetNat. Вы можете запросить текущую конфигурацию NetNat преобразователя, используя командлет Get-NetNat. You can query the current converter NetNat config by using the Get-NetNat cmdlet.
-NoRestart [ ] -NoRestart [ ] Обязательный Required Подавляет вывод запроса на перезагрузку при выполнении программы установки (перезагрузка необходима для включения функции контейнеров). Don’t prompt for reboot when running setup (reboot is required to enable the container feature).
Параметры преобразования Conversion parameters
-AppInstallPath -AppInstallPath Необязательный Optional Полный путь к корневой папке вашего приложения для установленных файлов, если они были установлены (например, «C:\Program Files (x86)\MyApp»). The full path to your application’s root folder for the installed files if it were installed (e.g., «C:\Program Files (x86)\MyApp»).
-Destination -Destination Обязательный Required Желаемое расположение создаваемого преобразователем пакета AppX. DesktopAppConverter может создать это расположение, если оно еще не существует. The desired destination for the converter’s appx output — DesktopAppConverter can create this location if it doesn’t already exist.
-Installer -Installer Обязательный Required Путь к программе установки вашего приложения, которая должна поддерживать выполнение в автоматическом режиме. The path to the installer for your application — must be able to run unattended/silently. Если выполняется преобразование для приложения без установщика, указывается путь к корневому каталогу файлов приложения. No-installer conversion, this is the path to the root directory of your application files.
-InstallerArguments -InstallerArguments Необязательный Optional Список с разделителями-запятыми или строка аргументов, чтобы перевести выполнение программы установки в автоматический режим. A comma-separated list or string of arguments to force your installer to run unattended/silently. Этот параметр необязателен, если вы используете программу установки msi. This parameter is optional if your installer is an msi. Для получения журнала из установщика укажите в этом месте аргумент журнала для установщика и используйте путь , являющийся маркером, который преобразователь заменит соответствующим путем. To get a log from your installer, supply the logging argument for the installer here and use the path , which is a token that the converter replaces with the appropriate path.

ПРИМЕЧАНИЕ. Типы флага автоматического режима и аргументов журнала зависят от технологий, использующихся в установщике. NOTE: The unattended/silent flags and log arguments will vary between installer technologies.

Пример использования этого параметра: -InstallerArguments «/silent /log \install.log». Другой пример, в котором не создается файл журнала, может выглядеть так: -InstallerArguments «/quiet», «/norestart» Опять же, чтобы преобразователь осуществлял захват пути маркера и помещал его в папку с конечным журналом, вы должны в буквальном смысле направлять все журналы по пути маркера . An example usage for this parameter: -InstallerArguments «/silent /log \install.log» Another example that doesn’t produce a log file may look like: -InstallerArguments «/quiet», «/norestart» Again, you must literally direct any logs to the token path if you want the converter to capture it and put it in the final log folder.

-InstallerValidExitCodes -InstallerValidExitCodes Необязательный Optional Разделенный запятыми список кодов завершения, указывающих на то, что программа установки была выполнена успешно (например: 0, 1234, 5678). A comma-separated list of exit codes that indicate your installer ran successfully (for example: 0, 1234, 5678). По умолчанию это 0 для программ установки, отличных от MSI, и 0, 1641, 3010 для программ установки MSI. By default this is 0 for non-msi, and 0, 1641, 3010 for msi.
-MakeAppx [ ] -MakeAppx [ ] Необязательный Optional Переключатель, который при его наличии, сообщает этому сценарию, что MakeAppx должен вызвать выходные данные. A switch that, when present, tells this script to call MakeAppx on the output.
-MakeMSIX [ ] -MakeMSIX [ ] Необязательный Optional Параметр, который (при наличии) сообщает этому скрипту, что выходные данные необходимо упаковать как пакет MakeAppx. A switch that, when present, tells this script to package the output as an MSIX Package.
Параметры идентификатора пакета Package identity parameters
-PackageName -PackageName Обязательный Required Имя вашего пакета универсального приложения для Windows. The name of your Universal Windows App package. Если в Центре партнеров пакету назначен идентификатор, который начинается с цифры, не забудьте также передать параметр -AppId и используйте в качестве значения этого параметра только суффикс строки (после точки-разделителя). If Partner Center assigns an identity to your package that begins with a number, make sure that you also pass in the -AppId parameter, and use only the string suffix (after the period separator) as the value of that parameter.
-Publisher -Publisher Обязательный Required Издатель вашего пакета универсального приложения для Windows The publisher of your Universal Windows App package
-Version -Version Обязательный Required Номер версии вашего пакета универсального приложения для Windows The version number for your Universal Windows App package
Параметры манифеста пакета Package manifest parameters
-AppExecutable -AppExecutable Необязательный Optional Имя основного исполняемого файла вашего приложения (например, «MyApp.exe»). The name of your application’s main executable (eg «MyApp.exe»). Этот параметр является обязательным для преобразования приложений, не имеющих установщика. This parameter is required for a no-installer conversion.
-AppFileTypes -AppFileTypes Необязательный Optional Список с разделителями-запятыми типов файлов, с которыми будет связано приложение. A comma-separated list of file types which the application will be associated with. Пример использования: -AppFileTypes «‘.md’, ‘.markdown'». Example usage: -AppFileTypes «‘.md’, ‘.markdown'».
-AppId -AppId Необязательный Optional Указывает значение, которое нужно задать идентификатору приложения в манифесте пакета приложения для Windows. Specifies a value to set Application Id to in the Windows app package manifest. Если параметр не настроен, ему будет задано значение, передаваемое для PackageName. If it is not specified, it will be set to the value passed in for PackageName. Во многих случаях достаточно использовать PackageName. In many cases, using the PackageName is fine. Но если в Центре партнеров пакету назначен идентификатор, который начинается с цифры, не забудьте также передать параметр -AppId и используйте в качестве значения этого параметра только суффикс строки (после точки-разделителя). However, if Partner Center assigns an identity to your package that begins with a number, make sure that you also pass in the -AppId parameter, and use only the string suffix (after the period separator) as the value of that parameter.
-AppDisplayName -AppDisplayName Необязательный Optional Указывает значение, которое нужно задать отображаемому имени приложения в манифесте пакета приложения для Windows. Specifies a value to set Application Display Name to in the Windows app package manifest. Если параметр не настроен, ему будет задано значение, передаваемое для PackageName. If it is not specified, it will be set to the value passed in for PackageName.
-AppDescription -AppDescription Необязательный Optional Указывает значение, которое нужно задать описанию приложения в манифесте пакета приложения для Windows. Specifies a value to set Application Description to in the Windows app package manifest. Если параметр не настроен, ему будет задано значение, передаваемое для PackageName. If it is not specified, it will be set to the value passed in for PackageName.
-PackageDisplayName -PackageDisplayName Необязательный Optional Указывает значение, которое нужно задать отображаемому имени пакета в манифесте пакета приложения для Windows. Specifies a value to set Package Display Name to in the Windows app package manifest. Если параметр не настроен, ему будет задано значение, передаваемое для PackageName. If it is not specified, it will be set to the value passed in for PackageName.
-PackagePublisherDisplayName -PackagePublisherDisplayName Необязательный Optional Указывает значение, которое нужно задать отображаемому имени издателя пакета в манифесте пакета приложения для Windows. Specifies a value to set Package Publisher Display Name to in the Windows app package manifest. Если параметр не настроен, ему будет задано значение, передаваемое для Publisher. If it is not specified, it will be set to the value passed in for Publisher.
Параметры очистки Cleanup parameters
-Cleanup [ ] -Cleanup [ ] Обязательный Required Запускает очистку артефактов DesktopAppConverter. Runs cleanup for the DesktopAppConverter artifacts. Есть 3 допустимых варианта режима отчистки. There are 3 valid options for the Cleanup mode.
-Cleanup All -Cleanup All Удаляет все развернутые базовые образы, удаляет все временные файлы преобразователя, удаляет контейнерную сеть и отключает необязательную функцию Windows — «Контейнеры». Deletes all expanded base images, removes any temporary converter files, removes the container network, and disables the optional Windows feature, Containers.
-Cleanup WorkDirectory -Cleanup WorkDirectory Обязательный Required Удаляет все временные файлы преобразователя. Removes all the temporary converter files.
-Cleanup ExpandedImage -Cleanup ExpandedImage Обязательный Required Удаляет все развернутые базовые образы, установленные на хост-компьютере. Deletes all the expanded base images installed on your host machine.
Параметры архитектуры пакета Package architecture parameters
-PackageArch -PackageArch Обязательный Required Создает пакет с выбранной архитектурой. Generates a package with the specified architecture. Допустимые типы архитектуры: «x86» или «x64»; например — PackageArch x86. Valid options are ‘x86’ or ‘x64’; for example, -PackageArch x86. Этот параметр необязателен. This parameter is optional. Если не выбрать тип архитектуры пакета, DesktopAppConverter попытается определить ее автоматически. If unspecified, the DesktopAppConverter will try to auto-detect package architecture. Если автоматически определить архитектуру не удается, будет использоваться архитектура пакета по умолчанию — x64. If auto-detection fails, it will default to x64 package.
Прочие параметры Miscellaneous parameters
-ExpandedBaseImage -ExpandedBaseImage Необязательный Optional Полный путь к уже развернутому базовому образу. Full path to an already expanded base image.
-LogFile -LogFile Необязательный Optional Определяет файл журнала. Specifies a log file. Если этот параметр пропущен, для файла журнала будет создано временное расположение. If omitted, a log file temporary location will be created.
-Sign [ ] -Sign [ ] Необязательный Optional Сообщает этому скрипту, что требуется подписать выходной пакет приложения для Windows, используя созданный сертификат для тестирования. Tells this script to sign the output Windows app package by using a generated certificate for testing purposes. Этот параметр следует использовать вместе с параметром -MakeAppx . This switch should be present alongside the switch -MakeAppx .
Обязательный Required Этот командлет поддерживает общие параметры: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable и OutVariable. This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. Дополнительные сведения см. в разделе about_CommonParameters. For more info, see about_CommonParameters.
-Verify [ ] -Verify [ ] Необязательный Optional Если указан этот переключатель, он передает DAC команду проверить пакет приложения на соответствие требованиям для упакованного приложения и Microsoft Store. A switch that, when present, tells the DAC to validate the app package against packaged app and Microsoft Store requirements. Результат — отчет о проверке VerifyReport.xml, который лучше всего отображается в браузере. The result is a validation report «VerifyReport.xml», which is best visualized in a browser. Этот параметр следует использовать вместе с параметром -MakeAppx . This switch should be present alongside the switch -MakeAppx .
-PublishComRegistrations -PublishComRegistrations Необязательный Optional Сканирует все общедоступные регистрации COM, выполненные вашим установщиком, и публикует в манифесте те из них, которые являются допустимыми. Scans all public COM registrations made by your installer and publishes the valid ones in your manifest. Используйте этот флаг, только если хотите, чтобы эти регистрации стали доступны для других приложений. Use this flag only if you want to make these registrations available to other applications. Не указывайте этот флаг, если эти регистрации будут использоваться только вашим приложением. You don’t need to use this flag if these registrations will be used only by your application.

Ознакомьтесь с этой статьей, чтобы убедиться, что поведение ваших регистраций COM после упаковки приложения соответствует ожидаемому. Review this article to make sure that your COM registrations behave as you expect after you package your app.

Запуск упакованного приложения Run the packaged app

Существует два способа запуска вашего приложения. There’s two ways to run your app.

Первый — открыть командную строку PowerShell, а затем ввести следующую команду: Add-AppxPackage –Register AppxManifest.xml . One way is to open a PowerShell command prompt, and then type this command: Add-AppxPackage –Register AppxManifest.xml . Возможно, это наиболее простой способ запустить приложение, так как его не нужно подписывать. It’s probably the easiest way to run your application because you don’t have to sign it.

Другой способ — подписать ваше приложение с помощью сертификата. Another way is to sign your application with a certificate. Если вы используете параметр sign , Desktop App Converter создаст файл сертификата, а затем подпишет ваше приложение. If you use the sign parameter, the Desktop App Converter will generate one for you, and then sign your application with it. Этот файл называется auto-generated.cer и находится в корневой папке вашего упакованного приложения. That file is named auto-generated.cer, and you can find it in the root folder of your packaged app.

Чтобы установить созданный сертификат и запустить приложение, выполните следующие действия: Follow these steps to install the generated certificate, and then run your app.

Дважды щелкните файл auto-generated.cer, чтобы установить этот сертификат. Double-click the auto-generated.cer file to install the certificate.

При появлении запроса пароля используйте пароль по умолчанию «123456». If you’re prompted for a password, use the default password «123456».

В диалоговом окне Сертификат нажмите кнопку Установить сертификат. In the Certificate dialog box, choose the Install Certificate button.

В окне Мастер импорта сертификатов установите сертификат на локальный компьютер, а затем поместите его в хранилище сертификатов Доверенные лица. In the Certificate Import Wizard, install the certificate onto the Local Machine, and place the certificate into the Trusted People certificate store.

В корневой папке упакованного приложения дважды щелкните файл пакета приложения для Windows. In root folder of your packaged app, double click the Windows app package file.

Установите приложение, нажав кнопку Установить. Install the app, by choosing the Install button.

Изменение упакованного приложения Modify the packaged app

Скорее всего, вы будете вносить изменения в упакованное приложение, чтобы устранить ошибки, добавить визуальные ресурсы или улучшить приложение с помощью современных функций, таких как живые плитки. You’ll likely make changes to your packaged application to address bugs, add visual assets, or enhance your application with modern experiences such as live tiles.

После внесения изменений запускать преобразователь повторно не требуется. After you make your changes, you don’t need to run the converter again. В большинстве случаев можно просто переупаковать приложение с помощью средства MakeAppx и файла appxmanifest.xml, созданного для вашего приложения преобразователем DAC. In most cases, you can just repackage your application by using the MakeAppx tool and the appxmanifest.xml file the DAC generates for your app. См. раздел о создании пакета приложений для Windows. See Generate a Windows app package.

Если вы изменили какие-либо визуальные ресурсы вашего приложения, создайте новый файл индекса ресурсов пакета и запустите средство MakeAppx, чтобы создать новый пакет. If you modify any of the visual assets of your app, generate a new Package Resource Index file, and then run the MakeAppx tool to generate a new package. См. раздел о создании файла индекса ресурсов пакета (PRI). See Generate a Package Resource Index (PRI) file.

Если вы хотите добавить значки или плитки, которые отображаются на панели задач Windows, в представлении задач, в окне, вызываемом с помощью клавиш ALT+TAB, в Snap Assist и в правом нижнем углу плиток начального экрана, см. раздел о добавлении специальных ресурсов без покрытия (необязательно). If you want to add icons or tiles that appear on the Windows taskbar, task view, LT+TAB, snap assist, and the lower right corner of Start tiles, see (Optional Add Target-based unplated assets.

Если вы изменили параметры реестра, заданные вашим установщиком, необходимо повторно запустить Desktop App Converter, чтобы восстановить эти изменения. If you make changes to registry settings that your installer makes, you will have to run the Desktop App Converter again to pick up those changes.

В следующих двух разделах описываются несколько дополнительных исправлений, которые могут потребоваться для упакованного приложения. The following two sections describe a couple of optional fix-ups to the packaged application that you might consider.

Удаление ненужных файлов и разделов реестра Delete unnecessary files and registry keys

Desktop App Converter использует очень консервативный подход к фильтрации файлов и системного шума в контейнере. The desktop App Converter takes a very conservative approach to filtering out files and system noise in the container.

При желании можно просмотреть папку VFS и удалить все файлы, которые не требуются вашему установщику. If you want, you can review the VFS folder and delete any files that your installer doesn’t need. Кроме того, вы можете просмотреть содержимое файла Reg.dat и удалить все разделы, которые не установлены или не требуются вашему приложению. You can also review the contents of Reg.dat and delete any keys that are not installed/needed by the app.

Исправление поврежденных PE-заголовков Fix corrupted PE headers

В процессе преобразования DesktopAppConverter автоматически запускает PEHeaderCertFixTool, чтобы исправить все поврежденные PE-заголовки. During the conversion process, the DesktopAppConverter automatically runs the PEHeaderCertFixTool to fixup any corrupted PE headers. Но вы также можете запустить PEHeaderCertFixTool для пакета приложения UWP для Windows, свободных файлов или определенного двоичного файла. However, you can also run the PEHeaderCertFixTool on a UWP Windows app package, loose files, or a specific binary. Пример. Here’s an example.

Телеметрия Desktop App Converter Telemetry from Desktop App Converter

Desktop App Converter может собирать сведения о вас и об используемом вами программном обеспечении и отправлять эти данные в Майкрософт. Desktop App Converter may collect information about you and your use of the software and send this info to Microsoft. Подробнее о процессе сбора данных корпорацией Майкрософт и их использовании в документации по продуктам см. в заявлении о конфиденциальности корпорации Майкрософт. You can learn more about Microsoft’s data collection and use in the product documentation and in the Microsoft Privacy Statement. Вы соглашаетесь выполнять требования всех применимых положений заявления о конфиденциальности корпорации Майкрософт. You agree to comply with all applicable provisions of the Microsoft Privacy Statement.

По умолчанию для Desktop App Converter телеметрия будет включена. By default, telemetry will be enabled for the Desktop App Converter. Добавьте следующий раздел реестра для настройки телеметрии: Add the following registry key to configure telemetry to a desired setting:

  • Добавьте или измените значение DisableTelemetry с помощью DWORD со значением 1. Add or edit the DisableTelemetry value by using a DWORD set to 1.
  • Для включения телеметрии удалите раздел или задайте значение 0. To enable telemetry, remove the key or set the value to 0.

Языковая поддержка Language support

Desktop App Converter не поддерживает Юникод, поэтому в нем нельзя использовать символы китайского языка или символы, отличные от набора ASCII. The Desktop App Converter does not support Unicode; thus, no Chinese characters or non-ASCII characters can be used with the tool.

Известные проблемы с Desktop App Converter Known issues with the Desktop App Converter

Ошибки E_CREATING_ISOLATED_ENV_FAILED и E_STARTING_ISOLATED_ENV_FAILED E_CREATING_ISOLATED_ENV_FAILED and E_STARTING_ISOLATED_ENV_FAILED errors

Если возникла какая-либо из этих ошибок, убедитесь, что вы используете правильный базовый образ из центра загрузки. If you receive either of these errors, make sure that you’re using a valid base image from the download center. Если вы используете правильный базовый образ, попробуйте выполнить команду -Cleanup All . If you’re using a valid base image, try using -Cleanup All in your command. Если это не поможет устранить проблему, отправьте ваши журналы по адресу converter@microsoft.com, чтобы мы могли их изучить. If that does not work, please send us your logs at converter@microsoft.com to help us investigate.

Ошибка «New-ContainerNetwork: объект уже существует» New-ContainerNetwork: The object already exists error

Эта ошибка может возникнуть при установке нового базового образа. You might receive this error when you setup a new base image. Это происходит, если на вашем компьютере для разработки, на котором ранее было установлено средство Desktop App Converter, есть тестируемая возможность, предназначенная для участников программы предварительной оценки Windows. This can happen if you have a Windows Insider flight on a developer machine that previously had the Desktop App Converter installed.

Чтобы решить эту проблему, попробуйте выполнить команду Netsh int ipv4 reset из командной строки с повышенными привилегиями, а затем перезагрузите компьютер. To resolve this issue, try running the command Netsh int ipv4 reset from an elevated command prompt, and then reboot your machine.

Приложение .NET скомпилировано с использованием параметра сборки «AnyCPU», и его установка завершается сбоем Your .NET application is compiled with the «AnyCPU» build option and fails to install

Это может произойти, если главный исполняемый файл или некая зависимость были размещены где-то в иерархии папок Program Files или Windows\System32. This can happen if the main executable or any of the dependencies were placed anywhere in the Program Files or Windows\System32 folder hierarchy.

Чтобы решить эту проблему, попробуйте использовать установщик рабочего стола определенной архитектуры (32-разрядный или 64-разрядный), чтобы создать пакет приложения для Windows. To resolve this issue, try using your architecture-specific desktop installer (32 bit or 64 bit) to generate a Windows app package.

Публикация общедоступных параллельных сборок Fusion будет невозможна Publishing public side-by-side Fusion assemblies won’t work

В ходе процесса установки приложение может публиковать располагающиеся рядом друг с другом общедоступные сборки Fusion, которые являются доступными для любого другого процесса. During install, an application can publish public side-by-side Fusion assemblies, accessible to any other process. Во время создания контекста активации процесса эти сборки извлекаются системным процессом с именем CSRSS.exe. During process activation context creation, these assemblies are retrieved by a system process named CSRSS.exe. Когда эта процедура выполняется для преобразованного процесса, будет происходить сбой процессов создания контекста активации и загрузки модулей этих сборок. When this is done for a converted process, activation context creation and module loading of these assemblies will fail. Параллельные сборки Fusion регистрируются в следующих расположениях: The side-by-side Fusion assemblies are registered in the following locations:

  • реестр: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\Winners ; Registry: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\Winners
  • файловая система: %windir%\SideBySide. File System: %windir%\SideBySide

Это известное ограничение, и решения этой проблемы пока не существует. This is a known limitation and no workaround currently exists. Несмотря на сказанное, входящие сборки, такие как ComCtl, поставляются вместе с операционной системой, поэтому указание зависимости от них является безопасным. That said, Inbox assemblies, like ComCtl, are shipped with the OS, so taking a dependency on them is safe.

В XML обнаружена ошибка. Error found in XML. Атрибут «Executable» недействителен: значение «MyApp.EXE» недействительно с точки зрения его типа данных The ‘Executable’ attribute is invalid — The value ‘MyApp.EXE’ is invalid according to its datatype

Эта проблема может произойти, если исполняемые файлы в вашем приложении имеют расширение .EXE, написанное прописными буквами. This can happen if the executables in your application have a capitalized .EXE extension. Несмотря на то что регистр расширения не должен влиять на работу вашего приложения, он может привести к возникновению этой ошибки в DAC. Although, the casing of this extension shouldn’t affect whether your application runs, this can cause the DAC to generate this error.

Чтобы решить эту проблему, попробуйте во время упаковки указать флаг -AppExecutable и использовать расширение основного исполняемого файла, записанное в нижнем регистре (например, MYAPP.exe). To resolve this issue, try specifying the -AppExecutable flag when you package, and use the lower case «.exe» as the extension of your main executable (For example: MYAPP.exe). Либо вы можете изменить регистр всех исполняемых файлов в вашем приложении с верхнего на нижний (например, из EXE в exe). Alternately you can change the casing for all executables in your application from uppercase to lowercase (For example: from .EXE to .exe).

Поврежденные или деформированные подписи Authenticode Corrupted or malformed Authenticode signatures

Этот раздел содержит инструкции по выявлению проблем с переносимыми исполняемыми (PE) файлами в пакете приложения для Windows, который может содержать поврежденные или деформированные подписи Authenticode. This section contains details on how to identify issues with Portable Executable (PE) files in your Windows app package that may contain corrupted or malformed Authenticode signatures. Наличие недействительных подписей Authenticode в файлах PE, которые могут иметь любой двоичный формат (например, .exe, .dll, .chm и т. д.), приведет к тому, что вы не сможете правильно подписать пакет, а значит и развернуть его из пакета приложения для Windows. Invalid Authenticode signatures on your PE files, which may be in any binary format (e.g. .exe, .dll, .chm, etc.), will prevent your package from being signed properly, and thus prevent it from being deployable from an Windows app package.

Расположение подписи Authenticode файла PE определяется записью в таблице сертификатов в каталогах данных необязательных заголовков и соответствующей таблице сертификатов атрибутов. The location of the Authenticode signature of a PE file is specified by the Certificate Table entry in the Optional Header Data Directories and the associated Attribute Certificate Table. Во время проверки подписи сведения, указанные в этих местах, используются для поиска подписи на файле PE. During signature verification, the information specified in these structures is used to locate the signature on a PE file. При повреждении этих значений процесс подписывания файла может быть выполнен некорректно. If these values get corrupted then it is possible for a file to appear to be invalidly signed.

Чтобы подпись Authenticode была правильной, применительно к ней должны быть выполнены следующие условия: For the Authenticode signature to be correct, the following must be true of the Authenticode signature:

  • Начало записи WIN_CERTIFICATE в файле PE не должно выходить за границу исполняемого файла. The start of the WIN_CERTIFICATE entry in the PE file cannot extend past the end of the executable
  • Запись WIN_CERTIFCATE должна размещаться в конце образа. The WIN_CERTIFCATE entry should be located at the end of the image
  • Размер записи WIN_CERTIFICATE должен быть положительным. The size of the WIN_CERTIFICATE entry must be positive
  • Запись WIN_CERTIFICATE должна начинаться после структуры IMAGE_NT_HEADERS32 для 32-разрядных исполняемых файлов и после структуры IMAGE_NT_HEADERS64 для 64-разрядных исполняемых файлов. The WIN_CERTIFICATE entry must start after the IMAGE_NT_HEADERS32 structure for 32-bit executables and IMAGE_NT_HEADERS64 structure for 64-bit executables

Обратите внимание, что при попытке подписывания пакета приложения для Windows средство SignTool.exe может выводить информацию о поврежденных или деформированных двоичных файлах. Note that SignTool.exe can output a list of the corrupted or malformed binaries when attempting to sign an Windows app package. Чтобы это сделать, включите регистрацию подробных сведений в журнале, задав переменной среды APPXSIP_LOG значение 1 (например, set APPXSIP_LOG=1 ) и перезапустите средство SignTool.exe. To do this, enable verbose logging by setting the environment variable APPXSIP_LOG to 1 (e.g., set APPXSIP_LOG=1 ) and re-run SignTool.exe.

Чтобы исправить эти деформированные двоичные файлы, убедитесь, что они соответствуют требованиям выше. To fix these malformed binaries, ensure they conform to the requirements above.

Дальнейшие действия Next steps

Получение ответов на вопросы Find answers to your questions

Есть вопросы? Have questions? Задайте их на Stack Overflow. Ask us on Stack Overflow. Наша команда следит за этими тегами. Our team monitors these tags. Вы также можете задать нам вопросы здесь. You can also ask us here.

Запуск приложения / поиск и устранение проблем Run your application / find and fix issues

Распространение приложения Distribute your app

Читайте также:  Windows media player file types supported
Оцените статью