我无法部署DirectX 12通用应用程序。我的困难之夜始于签名错误,VS20015抱怨自动生成的MyDx12App_TemporaryKey.pfx无法签名。
Error DEP0700 : Registration of the app failed. (0x80070005) MyDx12App
Warning APPX0106 Loading certificate file 'MyDx12App_TemporaryKey.pfx' failed. Errore non specificato.
MyDx12App C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\AppxPackage\Microsoft.AppXPackage.Targets 1908
Warning APPX0106 Loading certificate file 'MyDx12App_TemporaryKey.pfx' failed. Errore non specificato.
MyDx12App C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\AppxPackage\Microsoft.AppXPackage.Targets 1908
Warning APPX0107 The certificate specified is not valid for signing. For more information about valid certificates, see http://go.microsoft.com/fwlink/?LinkID=241478. MyDx12App C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\AppxPackage\Microsoft.AppXPackage.Targets 1908
实际上,Visual Studio创建的PFX文件为空(0字节)。我通过执行以下操作创建了有效的证书:
Solution Explorer > Package.appxmanifest > Packaging > Choose Certificate... > Create test certificate...
通过这样做,我摆脱了签名错误(非常有趣的是,在干净后,即使使用损坏的证书,也不会出现在第二次和随后的重新部署中,这导致我认为可能不是&#39 ;真正的问题)。
无论如何,通过这个修复,我能够摆脱签名错误,即使在干净后尝试重新部署也是如此;但是日志的第一个错误:
DEP0700 : Registration of the app failed. (0x80070005)
永远不会离开,并让我在晚上的最佳时刻保持良好的合作。
我尝试了我可以在Google上找到的所有内容,但是我的情况似乎有所不同,因为错误消息没有指定任何子错误,尽管它确实说它是一个拒绝访问错误(0x80070005)。
我尝试的事情:
没有任何效果。我的机器:
Visual Studio: Community 2015, 14.0.25123.00, Update 2
Windows 10
Version: 1511
OS Build: 10586.318
答案 0 :(得分:6)
事实证明我没有给SYSTEM完全控制。您需要使用高级安全设置,以递归方式应用权限。正确的程序是:
答案 1 :(得分:3)
对于未来的观众,
我发现如果您打开应用包文件夹中的任何文件,也会生成此错误。就我而言,我在查看器中打开了SQLite数据库文件,导致VS2015因DEP0700错误而失败。
答案 2 :(得分:2)
尝试关闭Visual Studio和任何模拟器。然后,作为管理员,转到 目录%USERPROFILE%\ AppData \ Local \ Packages(通常在C:\ Users \%username%中)。 然后,删除包含名称的目录(名称为nnnn.Yourname.YourAppName_xxxxxxxxxxxxx的目录)。 然后重新启动Visual Studio并尝试再次部署。
答案 3 :(得分:1)
我的新创建的Xamarin.forms项目(存储在网络驱动器)和VS2015 Update3 RC上也出现了DEP0700错误。
在我将输出目录从网络驱动器更改为本地目录(作为快速解决方法)后,错误已经消失...
您可以在Problem Xamarin.forms on a network-drive
答案 4 :(得分:0)
遇到相同的问题(error APPX0106: Loading certificate file 'MyCert.pfx
),并尝试了所有解决方案,但对我没有任何帮助。
实际上,它们是.csproj
中键名之后的新行:
<PackageCertificateKeyFile>MyCert.pfx
</PackageCertificateKeyFile>
将其删除,并且可以正常工作。
答案 5 :(得分:0)
部署失败并出现权限错误还有另一个原因 - 如果解决方案目录受 Windows EFS 保护!
事实上,UWP 应用程序似乎根本不喜欢 EFS。他们不会打开使用 EFS 加密的文件。
我是 UWP 的新手,但这似乎是一个主要缺点。