如何将windows桌面应用程序转换为通用windows应用程序

随着windows10的周年更新,微软使开发人员能够将传统的Windows桌面应用程序转换为通用Windows平台(universalwindows Platform,UWP)应用程序。但任何人都可以用任何应用程序做到这一点——不仅仅是开发人员。...

如何将windows桌面应用程序转换为通用windows应用程序

随着windows10的周年更新,微软使开发人员能够将传统的Windows桌面应用程序转换为通用Windows平台(universalwindows Platform,UWP)应用程序。但任何人都可以用任何应用程序做到这一点——不仅仅是开发人员。

使用Windows10的转换器,只要给它一个.msi或.exe文件,它就会输出一个.appx包。然后,您可以在自己的PC上侧载此应用程序,或者–如果您是应用程序的开发人员–您可以将生成的UWP应用程序提交到Windows应用商店。这项功能将随着Windows10周年纪念版的更新而普及,为Windows应用商店带来许多“遗留”应用程序。

你为什么要这么做

相关报道:windows10周年更新的新功能

此功能是Microsoft Project Centennial的最终成果,该项目旨在将那些“遗留”的Win32和.NET Windows桌面应用程序引入Windows应用商店和新的通用Windows平台。

你可能想知道为什么有人想把一个桌面应用程序转换成一个新的UWP应用程序。首先,Windows应用商店中只允许使用UWP应用程序。这使得开发人员能够更多地关注他们的应用程序,更不用说单击安装、轻松购买和自动更新了。

微软新的UWP应用程序平台是沙盒,但你转换的桌面应用程序不是。这些应用程序可以完全访问您的系统,就像传统的桌面应用程序一样。正如微软的文档所说:“作为一个UWP应用程序,你的应用程序能够像一个经典的桌面应用程序那样做一些事情。它与注册表和文件系统的虚拟化视图交互,这与实际的注册表和文件系统没有区别。”

局限性

相关报道:如何成为Windows内部人士并测试windows10的新功能

这里有一些重要的限制。首先,您只能在Windows 10周年更新上执行此操作。目前,它将与Windows10InsiderPreviewBuild14316及更高版本配合使用,因此您需要加入WindowsInsider程序并使用Windows10的InsiderPreviewBuild。

此功能还需要Windows 10的专业版或企业版。Windows10家庭用户将无法使用桌面应用程序转换器。从构建14316开始,它只在windows10enterprise上运行,但对windows10professional的支持即将到来。目前,此工具只能在64位版本的Windows上使用,并且生成的AppX包只能安装在64位版本的Windows上。这将在未来的Windows10内部版本中改变。

由此产生的应用程序是为Windows10个人电脑设计的,它们不能在Windows10移动智能**、Xbox One、HoloLens、Surface Hub和其他运行UWP应用程序的Windows10平台上运行。不过,如果你是一名开发人员,微软提供了一种将你的桌面应用程序导入跨平台UWP应用程序的途径:“如果你选择将应用程序的所有功能从应用程序的完全信任分区移到应用程序容器分区,那么你的应用程序将能够在任何Windows 10设备上运行。”

但是,不支持某些类型的应用程序行为。应用程序不能要求以管理员身份运行或使用其他类型的低级系统访问。Microsoft提供了不允许的行为列表。

如何设置桌面应用程序转换器

假设您使用的是足够新的windows10insiderpreview版本,您可以从微软的开发者网站下载并安装桌面应用程序转换器。下载两个DesktopAppConverter.zip文件和BaseImage-14316.wim文件。解压缩下载的DesktopAppConverter.zip文件将文件保存到计算机上的文件夹中,并将BaseImage文件放在同一目录中。(如果有新版本的Windows10可用,您应该会看到一个新的BaseImage文件。您需要使用与已安装的Windows 10版本号相同的BaseImage文件。)

您还需要下载并安装Windows10SDK。

如何将windows桌面应用程序转换为通用windows应用程序

接下来,以管理员身份打开PowerShell窗口。为此,请打开“开始”菜单,搜索“PowerShell”,右键单击其快捷方式,然后选择“以管理员身份运行”

通过运行以下命令更改PowerShell的执行策略。事后键入y表示同意更改。

Set-ExecutionPolicy bypass

运行下面的命令,将C:\Users\NAME\Downloads\DesktopAppConvertor替换为计算机上目录的路径:

cd -Path C:\Users\NAME\Downloads\DesktopAppConvertor

通过运行以下命令设置桌面应用程序转换器:

.\DesktopAppConverter.ps1 -Setup -BaseImage .\BaseImage-14316.wim

如果在运行这些命令时被要求重新启动,请重新启动计算机,然后再次运行该命令。

如何将windows桌面应用程序转换为通用windows应用程序

如何转换桌面应用程序

现在可以运行DesktopAppConverter.ps1从管理员PowerShell窗口中编写脚本,以在单个命令中将桌面应用程序转换为UWP应用程序。您需要应用程序的安装程序来完成此操作。作为一个例子,我们将在这里使用VLC。

要查看选项的详细列表,可以随时运行以下命令:

get-help .\DesktopAppConverter.ps1 -detailed

下面是一个可以根据应用程序使用和调整的命令:

.\DesktopAppConverter.ps1 -ExpandedBaseImage C:\ProgramData\Microsoft\Windows\Images\BaseImage-14316 –Installer C:\Installer\MyApp.exe -InstallerArguments "/S" -Destination C:\Output\MyApp -PackageName "MyApp" -Publisher "CN=<publisher_name>" -Version 0.0.0.1 -MakeAppx -Verbose

您需要调整命令以添加您自己的发布者名称、版本、包名称,并将其指向您喜欢的安装程序文件和目标目录。这里的-InstallerArguments“/S”选项将/S开关传递给安装程序,这使得许多应用程序安装程序在没有任何用户输入的情况下进行静默安装。应用程序必须可以在没有任何用户输入的情况下安装,否则无法转换它们。

应用程序的安装程序应该位于自己的目录中,而不包含任何其他文件,因为与安装程序位于同一目录中的文件将被复制到生成的.appx包中。

例如,我们在这里使用VLC,所以下面是我们将使用的命令:

.\DesktopAppConverter.ps1 -ExpandedBaseImage C:\ProgramData\Microsoft\Windows\Images\BaseImage-14316 –Installer C:\Users\chris\Downloads\vlc\vlc-2.2.2-win32.exe -InstallerArguments "/S" -Destination C:\Output\VLC -PackageName "VLC" -Publisher "CN=VideoLAN" -Version 0.2.2.2 -MakeAppx -Verbose

如何将windows桌面应用程序转换为通用windows应用程序

该工具将为您提供一个.appx包,这是应用程序的UWP版本。

如何将windows桌面应用程序转换为通用windows应用程序

如何在不签名的情况下安装应用程序

通常,在安装应用程序之前,需要先对其进行有效签名。Microsoft建议您创建一个自签名证书,并使用您计算机上的证书对应用程序进行签名。如果你愿意,你可以按照下面的说明来做。

不过,如果你只想在自己的电脑上安装这个应用程序,你可以自己更快地完成,而不会弄乱任何签名。如果您是从目录安装“未打包”的应用程序,Windows 10允许您安装应用程序而无需对其进行签名。

为此,请以管理员身份打开PowerShell窗口并运行以下命令:

Add-AppxPackage -Path C:\Path\to\AppxManifest.xml -Register

你会发现AppxManifest.xml文件文件旁边的应用程序.appx指定的输出目录中的文件。

现在可以从“开始”菜单启动应用程序。它将是一个“Windows应用程序”而不是一个“桌面应用程序”,但在其他方面,它的外观和工作方式将与普通桌面应用程序一样。

如何将windows桌面应用程序转换为通用windows应用程序

如何签名和安装应用程序

如果已经安装了应用程序,则不需要遵循这些说明。这是更难的办法。

如果.appx包具有有效的签名,则通常只能安装该包。Microsoft建议使用signtool.exeWindows10SDK附带的应用程序,用于创建自签名证书,该证书允许您在自己的计算机上安装和测试该应用程序。

只需以管理员身份打开命令提示符窗口,并运行以下命令即可创建自签名证书,并用它对.appx包进行签名:

cd "C:\Program Files (x86)\Windows Kits\10\bin\x64" MakeCert.exe -r -h 0 -n "CN=Publisher" -eku 1.3.6.1.5.5.7.3.3 -pe -sv my.pvk my.cer pvk2pfx.exe -pvk my.pvk -spc my.cer -pfx my.pfx signtool.exe sign -f my.pfx -fd SHA256 -v C:\Path\to\application.appx

请注意,您指定的发布服务器(即“CN=publisher”)必须与您先前在创建AppX文件时指定的发布服务器匹配。因此,继续上面的VLC示例,我们必须使用“CN=VideoLAN”。

系统将要求您输入密码。你可以把密码留空。

如何将windows桌面应用程序转换为通用windows应用程序

现在可以使用Add AppxPackage命令在PowerShell(管理员)窗口中安装.appx包:

Add-AppxPackage C:\Path\to\application.appx

任何人都可以使用此功能,但只有开发人员(可能还有一些系统管理员)愿意使用此功能。幸运的是,这个过程对于开发人员来说非常简单。

  • 发表于 2021-04-09 18:26
  • 阅读 ( 113 )
  • 分类:互联网

你可能感兴趣的文章

如何在Windows10中自定义任何图标

...此,如果你还没有桌面快捷方式,你应该为你想要更改的应用程序图标创建一个桌面快捷方式。 ...

  • 发布于 2021-03-11 08:07
  • 阅读 ( 397 )

从microsoft应用商店下载windows桌面应用程序的3个原因

...域客观上更好。Windows最多只能依靠Ninite之类的批量安装应用程序。但在未来几年,这种情况可能会改变。 ...

  • 发布于 2021-03-12 08:17
  • 阅读 ( 231 )

如何在windows10上使用命令提示符转换媒体文件

...提示符。如果您喜欢命令而不是图形用户界面,下面介绍如何使用命令提示符转换音频和视频文件。 使用命令提示符设置ffmpeg以转换音频和视频 默认情况下,命令提示符不提供转换媒体文件的选项。您需要安装一个第三方实...

  • 发布于 2021-03-31 13:18
  • 阅读 ( 173 )

如何将windows膝上型电脑转变成台式电脑

...果您将笔记本电脑放在显示器的右侧,只需单击并将设置应用程序中的显示器1图标拖动到正确的位置。 再次打开“设置”&gt;“系统”&gt;“显示”,向下滚动至“多个显示器”。在这里,您可以选择复制显示器、扩展显示器或...

  • 发布于 2021-03-31 19:57
  • 阅读 ( 169 )

如何在Windows10上更改快捷方式的图标

...快捷方式,然后选择“属性” 在“属性”中,确保位于应用程序快捷方式的“快捷方式”选项卡上,然后单击“更改图标”按钮。 (如果快捷方式指向网页而不是应用程序,请查看“web文档”选项卡,然后单击“更改图标”按...

  • 发布于 2021-04-01 17:40
  • 阅读 ( 101 )

windows 10的平板电脑模式可能会被桌面取代

...将PC转换为笔记本电脑自动切换到平板电脑模式时,您的应用程序将变为全屏。你可以并排使用应用程序,但你不能再使用窗口应用程序或与桌面交互。 您的“开始”菜单也将替换为全屏Windows 8样式的“开始”屏幕。任务栏图...

  • 发布于 2021-04-03 05:13
  • 阅读 ( 182 )

如何旋转电脑屏幕(或固定侧面屏幕)

...同,但具有相同的方向选项。 如果在Windows 10的“设置”应用程序或Windows 7的“控制面板”中看不到屏幕方向选项,请尝试更新计算机的图形驱动程序。如果您使用的是不适合计算机图形硬件的通用视频驱动程序,则此选项可能...

  • 发布于 2021-04-05 06:46
  • 阅读 ( 188 )

如何将virtualbox虚拟机转换为mac桌面并行

...)。将虚拟机文件夹粘贴到哪里并不重要。Parallels将处理如何在正确的位置创建转换后的虚拟机。 第四步:在parallels desktop for mac中打开并转换.vbox文件 在Mac上,打开Parallels Desktop,然后进入“文件”&gt;“打开”。 导航到将克...

  • 发布于 2021-04-08 11:30
  • 阅读 ( 214 )

如何在Windows10上配置笔及其按钮

...其工作方式及其按钮的功能。 这以前需要特定于设备的应用程序,如用于在Surface设备上配置Surface笔的Microsoft Surface应用程序。Microsoft Surface应用程序仍然允许您调整Surface笔的压力敏感度,其他特定于设备的工具可能仍有其他设...

  • 发布于 2021-04-08 12:48
  • 阅读 ( 176 )

如何在windows 10上安装.appx或.appxbundle软件

Microsoft新的通用Windows平台应用程序使用.Appx或.AppxBundle文件格式。它们通常是从Windows应用商店安装的,但是windows10允许您从任何地方加载Appx包。 与其他软件一样,您应该只安装来自您信任的源的.Appx或.AppxBundle包。 什么是.appx...

  • 发布于 2021-04-08 13:08
  • 阅读 ( 412 )
u的还是深呼吸
u的还是深呼吸

0 篇文章

相关推荐