Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf ClickOnce快捷方式不';不要启动应用程序_Wpf_Windows 10_Clickonce - Fatal编程技术网

Wpf ClickOnce快捷方式不';不要启动应用程序

Wpf ClickOnce快捷方式不';不要启动应用程序,wpf,windows-10,clickonce,Wpf,Windows 10,Clickonce,我在VS 2017中创建了一个WPF应用程序,该应用程序使用ClickOnce安装。将解决方案部署到网络位置后,我可以通过访问.application链接在64位Windows 10计算机上安装 但是,应用程序安装后不会在我的计算机上运行。当我尝试使用“开始”菜单中的.appref ms快捷方式时,什么也没有发生。我添加了一些代码,以便在应用程序启动时启动调试器,但它没有被命中。从这里运行应用程序时,我在clickonce日志中没有看到任何记录。我已在注册表中将日志记录设置为详细 如果我尝试从%

我在VS 2017中创建了一个WPF应用程序,该应用程序使用ClickOnce安装。将解决方案部署到网络位置后,我可以通过访问.application链接在64位Windows 10计算机上安装

但是,应用程序安装后不会在我的计算机上运行。当我尝试使用“开始”菜单中的.appref ms快捷方式时,什么也没有发生。我添加了一些代码,以便在应用程序启动时启动调试器,但它没有被命中。从这里运行应用程序时,我在clickonce日志中没有看到任何记录。我已在注册表中将日志记录设置为详细

如果我尝试从%userprofile%\AppData\Local\Apps\2.0\install位置运行应用程序,它将正常运行并启动调试器。但是,我无法使用此位置,因为它将使用此位置的配置文件,而不是存储在%userprofile%\AppData\Local\中的配置,这允许新版本继续使用相同的配置。对用户来说也不方便

如果我返回服务器上的.application链接,我可以在部署新版本时安装它们,但它仍然不会启动应用程序或记录运行应用程序的任何问题

.appref ms如下所示,安装位置中确实存在Launcher.manifest以及清单中列出的文件:

file://192.168.10.11/Projects/Launcher.application#Launcher.application, Culture=neutral, PublicKeyToken=0000000000000000, processorArchitecture=msil
如何使用ClickOnce快捷方式查找问题

编辑:有人提到查看事件查看器,我发现了一个SecurityException,它只在从快捷方式运行时发生。Debugger.Launch()是部分类的MainWindow构造函数中的第一行,但没有命中它。以下是事件查看器中的例外情况:

Application: applaunch.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Security.SecurityException
   at System.Security.CodeAccessSecurityEngine.Check(System.Object, System.Threading.StackCrawlMark ByRef, Boolean)
   at System.Security.CodeAccessPermission.Demand()
   at MS.Internal.SecurityHelper.DemandUnmanagedCode()
   at System.Windows.Window..ctor()
   at Launcher.MainWindow..ctor()
这对我的情况有帮助(有同样的问题):

项目->属性 安全性:从部分信任更改为完全信任 标记为黄色的更改:


这个问题听起来很熟悉,我建议您检查app.manifest或查看@LittleBit,SmartScreen确实没有提示我使用此应用程序。在以前的版本中,应用程序通过快捷方式运行,并且不显示SmartScreen。当我将其从“警告”切换到“关闭”时,行为仍然相同。您是如何配置更新行为的?当我从“开始前更新”改为“开始后更新”时,我修复了这个问题(如果这不起作用,我就没有想法了),我没有设置更新。我打开了它,现在我可以看到正在尝试进行的更新。我还发现存在SecurityException,并已更新该问题。我找到并禁用了安全设置。它解决了这个问题,但我不知道它的含义,也不知道这是否是正确的解决方法。