VS2015 DEP0700:应用注册失败。 (0x80070005)

Posted

技术标签:

【中文标题】VS2015 DEP0700:应用注册失败。 (0x80070005)【英文标题】:VS2015 DEP0700 : Registration of the app failed. (0x80070005) 【发布时间】:2016-09-11 15:58:27 【问题描述】:

我无法部署 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    

实际上,该 PFX 文件由 Visual Studio 创建为空(0 字节)。我通过以下方式创建了一个有效的证书:

Solution Explorer > Package.appxmanifest > Packaging > Choose Certificate... > Create test certificate...

通过这样做,我摆脱了签名错误(非常有趣的是,即使证书损坏,也不会出现在第二次和随后的重新部署中,这让我认为这可能不是真正的问题)。

无论如何,通过此修复,我能够摆脱签名错误,即使在尝试清理后重新部署时也是如此;但是日志的第一个错误:

DEP0700 : Registration of the app failed.  (0x80070005)

从不离开,在晚上最好的时候陪伴我。

我尝试了所有可以通过 Google 找到的方法,但我的情况似乎有所不同,因为错误消息没有指定任何子错误,尽管它确实说这是一个拒绝访问错误 (0x80070005)。

我尝试过的事情:

使用本地帐户 断开 VS 与我的 Microsoft 帐户的连接 更改包名称(在清单中) 更改版本(在清单中) 更改发布者显示名称 重新创建 PFX 证书 禁用并重新启用开发者模式 允许 SYSTEM 用户完全控制解决方案目录 将我的帐户转为管理员(我可以这样做,因为我在这台电脑上也有一个管理员帐户)。

没有任何效果。我的机器:

Visual Studio: Community 2015, 14.0.25123.00, Update 2

Windows 10
  Version: 1511
  OS Build: 10586.318

【问题讨论】:

【参考方案1】:

部署失败并出现权限错误还有另一个原因 - 如果解决方案目录受 Windows EFS 保护!

事实上,UWP 应用程序似乎根本不喜欢 EFS。他们不会打开使用 EFS 加密的文件。

我是 UWP 新手,但这似乎是一个主要缺点。

【讨论】:

【参考方案2】:

遇到同样的问题 (error APPX0106: Loading certificate file 'MyCert.pfx) 并尝试了所有解决方案,但对我没有任何效果。 事实上,它们是.csproj 中的键名之后的新行

<PackageCertificateKeyFile>MyCert.pfx
</PackageCertificateKeyFile>

删除它并且它工作。

【讨论】:

【参考方案3】:

对于未来的观众,

我发现如果您打开了应用程序包文件夹中的任何文件,也会产生此错误。就我而言,我在查看器中打开了 SQLite 数据库文件,这导致 VS2015 失败并出现 DEP0700 错误。

【讨论】:

宾果游戏!我在外部打开了 sqlite db。关闭它,错误消失了。谢谢【参考方案4】:

我新创建的 Xamarin.forms 项目(存储在 网络驱动器上)和 VS2015 Update3 RC 也出现了 DEP0700 错误。 在我将输出目录从网络驱动器更改为本地目录后(作为快速解决方法),错误消失了... 你可以在这里找到详细信息Problem Xamarin.forms on a network-drive

【讨论】:

这是我在 VS2017 UWP 应用中出现问题的根本原因。【参考方案5】:

尝试关闭 Visual Studio 和任何模拟器。然后,作为管理员,转到 目录 %USERPROFILE%\AppData\Local\Packages(通常在 C:\Users\%username% 中)。 然后,删除带有您的包名称的目录(名称类似于 nnnn.Yourname.YourAppName_xxxxxxxxxxxxx 的目录)。 然后重启 Visual Studio 并再次尝试部署。

【讨论】:

【参考方案6】:

事实证明,我未能给予 SYSTEM 完全控制权。您需要使用高级安全设置以递归方式应用权限。正确的程序是:

右击解决方案目录 点击属性 点击安全 点击高级 在“授权”选项卡中单击“添加” 选择SYSTEM作为实体 选择完全控制 点击确定 勾选“将所有子对象权限替换为此对象的可继承权限” 点击确定

【讨论】:

以上是关于VS2015 DEP0700:应用注册失败。 (0x80070005)的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio:错误 DEP0700:应用注册失败。 [0x80073D1F]

通用 Windows 平台应用注册失败 - 被 AppLocker 阻止

使用 Visual Studio 部署 Windows 10 UWP 应用程序期间出现错误 DEP0700 0x80073cf3

npm WARN 可选 dep 失败,继续 fsevents@0.3.6

VS解决BEX错误但无法关闭DEP保护的问题

如何卸载另一个用户安装的应用程序?