标签: clickonce

从 C# 启动 ClickOnce 应用程序

我希望能够从另一个可执行文件启动 ClickOnce 应用程序。我知道如何使用 Process.Start(" http://PathToMyApp ") 在浏览器中执行此操作。但是,这会为进程返回 null。因此,我无法检查以确保该进程已启动或稍后终止该进程。

如何启动单击一次应用程序并获取其进程 ID 并确定其是否启动成功?

c# clickonce

2
推荐指数
1
解决办法
2005
查看次数

无法使用 MageUI 选择入口点

我正在使用 ClickOnce 发布我的 wpf 应用程序,但我也想对其进行混淆。
我将我的应用程序发布到本地文件夹,对其进行混淆,然后使用 mageui 放弃它,然后将其上传到我的网络服务器。
问题是,我似乎无法将我的可执行文件定义为入口点,每次我选择它时,它都会默认返回为空文件类型。
奇怪的是,即使我不混淆我的程序集并尝试按原样辞职,也会发生这种情况。我可以定义我引用的其他 dll 作为入口点(当然这不是它们的用途),但不能定义启动我的应用程序的可执行文件。
有什么建议么?

.net c# wpf clickonce

2
推荐指数
1
解决办法
2078
查看次数

使用 ConfuserEx 混淆 clickOnce 应用程序

我实际上是在尝试混淆 ClickOnce 应用程序。

我的混淆器是 ConfuserEx。我遵循了以下步骤:

  1. 单击项目属性上的“发布向导..\立即发布”按钮。这将自动在 Debug/Release 文件夹中构建您的项目。我使用它是因为它还创建了 ClickOnce 中使用的文件。我们稍后将使用这些文件。
  2. 打开 Confuser 并拖放文件 在您希望 confuser 处理的 Debug/Release 文件夹中。
  3. 这将使用混淆的程序集创建一个 Confused 文件夹(使用默认输出目录设置)。
  4. 将项目运行所需的所有依赖项/文件(如果有)复制到刚刚创建的“Confused”文件夹。
  5. 您的项目现在应该使用混淆的程序集。我运行该程序只是为了确保。:D
  6. 将 .manifest 文件从 Debug/Release 文件夹复制到 Confused 文件夹并使用 MageUI 编辑它。
  7. 在 MageUI 的“文件”部分,找到 Confused 文件夹(可能已被选中)并选中将 .deploy 放在文件上的选项,然后单击“填充”。
  8. 您的项目文件将重命名为 *.deploy
  9. 保存 .manifest 文件并使用发布项目时创建的 *TemporaryKey.pfx 对其进行签名(这应该在您的项目文件夹中)。
  10. 将 .application 文件从 Debug/Release 文件夹复制到 Confused 文件夹并使用 MageUI 编辑它。
  11. 在 MageUI 的“应用程序参考”部分单击“选择清单..”并选择您在步骤 6 中保存的 .manifest 文件。
  12. 保存 .application 文件并使用 *TemporaryKey.pfx 对其进行签名。
  13. 最后,这可能是可选的,只需将发布文件夹中的 setup.exe 和 publish.html 文件复制到 Confused 文件夹即可。

关于这个话题:

https://confuser.codeplex.com/discussions/428378

不幸的是,当我之后尝试安装 ClickOnce 应用程序时出现以下错误:

无法处理从 …

c# obfuscation clickonce

2
推荐指数
1
解决办法
4617
查看次数

在 ClickOnce WPF 应用程序中找不到资源文件的部分路径

我在测试环境中发布了单击一次应用程序,但在需要访问文件的部分中出现“找不到部分路径”异常。

Could not find a part of the path 'C:\Users\admin\AppData\Local\Apps\2.0\E65K03BT.792\Resources\file.pem'.
Run Code Online (Sandbox Code Playgroud)

我在代码中指定此路径,如下所示:

..\\..\\Resources\\file.pem
Run Code Online (Sandbox Code Playgroud)

当我从 Visual Studio 运行它时,一切都运行良好。

它仅在实际部署的应用程序上失败。

c# clickonce

2
推荐指数
1
解决办法
1948
查看次数

安装 .net 4.8 时 Clickonce 应用程序不启动

首先是简单的事情:我有一个 .net 4.7.2 clickonce winform 应用程序,它不会在 .net 4.8(Windows 更新附带)安装后立即启动。如果您卸载 .net 4.8 一切正常。当您单击.appref.ms开始菜单中的快捷方式时会发生什么,它会启动对新版本的检查,然后它就会消失。所以我检查了事件日志,它揭示了这一点:

System.Configuration.ConfigurationErrorsException
   at System.Configuration.BaseConfigurationRecord.EvaluateOne(System.String[], System.Configuration.SectionInput, Boolean, System.Configuration.FactoryRecord, System.Configuration.SectionRecord, System.Object)
   at System.Configuration.BaseConfigurationRecord.Evaluate(System.Configuration.FactoryRecord, System.Configuration.SectionRecord, System.Object, Boolean, Boolean, System.Object ByRef, System.Object ByRef)
   at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(System.String, Boolean, Boolean, Boolean, Boolean, System.Object ByRef, System.Object ByRef)
   at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(System.String, Boolean, Boolean, Boolean, Boolean, System.Object ByRef, System.Object ByRef)
   at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(System.String, Boolean, Boolean, Boolean, Boolean, System.Object ByRef, System.Object ByRef)
   at System.Configuration.BaseConfigurationRecord.GetSection(System.String)
   at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection(System.String)
   at System.Configuration.ConfigurationManager.GetSection(System.String)
   at System.ServiceModel.Activation.AspNetEnvironment.GetConfigurationSection(System.String)
   at System.ServiceModel.Configuration.ConfigurationHelpers.GetAssociatedSection(System.Configuration.ContextInformation, System.String)
   at System.ServiceModel.Configuration.ConfigurationHelpers.GetAssociatedBindingCollectionElement(System.Configuration.ContextInformation, System.String)
   at System.ServiceModel.BasicHttpsBinding.ApplyConfiguration(System.String)
   at xx.xx.xx.xx.WinClient.Initialize.Execute() …
Run Code Online (Sandbox Code Playgroud)

c# clickonce .net-4.8

2
推荐指数
1
解决办法
858
查看次数

测试证书不可信

我为 Word 和 Excel 开发 VSTO 解决方案。从昨天开始,由于没有明显的原因,我现在无法调试我的任何解决方案。即使当我尝试调试新的空白 VSTO 项目时,我也会遇到相同的症状。

当加载项启动时(通常在 Excel 或 Word 启动时),将显示以下内容:

System.Security.SecurityException:此应用程序中的自定义功能将不起作用,因为用于签署 ExcelAddIn1 部署清单的证书或其位置不受信任。请联系您的管理员以获得进一步帮助。

在此输入图像描述

Word 和 Excel 都会出现这种情况。我在 Windows 10 和 Office 365(即点即用版本)下从 Visual Studio 2017 进行调试。这是VS2017没有正确注册测试证书的问题吗?或者可能是我的 Windows 配置有问题(证书包含列表等)?

更新

更新和修复Visual Studio 2017没有任何效果。安装 VS2019 并使用新的空白 Excel VSTO 插件进行测试没有任何效果。使用 EV 代码签名证书(来自 Sectigo,仍然有效且过去多次使用)发布空白加载项也会产生同样的问题。

我现在怀疑这可能是由于部署清单分区造成的。如何调查清单的注册位置及其“有效”位置?这样我就可以验证两者是否匹配。

clickonce vsto code-signing

2
推荐指数
1
解决办法
4447
查看次数

单击"一次迁移URL"

我有一个已经发布到同一位置几年的Click Once App,我现在想要发布一个更新程序但是想将它迁移到另一个url,它是一个两步部署吗?我不想让用户更改url位置并安装了2个应用程序,有没有一种简单的方法可以做到这一点,而不是进入重定向和那种类型的东西?

clickonce

1
推荐指数
1
解决办法
1099
查看次数

MsBuild任务GenerateDeploymentManifest.CreateDesktopShortcut不起作用

在自动化ClickOnce发布过程中,我们使用Mage生成应用程序清单和MsBuild GenerateDeploymentManifest任务.

<GenerateDeploymentManifest AssemblyName="App.exe.application"
                                AssemblyVersion="$(AppVersion)"
                                Product="Application"
                                Install="true"
                                UpdateEnabled="true"
                                UpdateMode="Foreground"
                                OutputManifest="$(PrepareFolder)\App.exe.application"
                                MapFileExtensions="true"
                                EntryPoint="@(RelativeApplicationManifestFile)"
                                CreateDesktopShortcut="true"
                                MinimumRequiredVersion="$(AppVersion)"
                                />
Run Code Online (Sandbox Code Playgroud)

但CreateDesktopShortcut无效,并且不会在部署清单文件中创建所需的标记.

得到这个:

<deployment install="true" 
            mapFileExtensions="true" 
            minimumRequiredVersion="2.19.13.0">
Run Code Online (Sandbox Code Playgroud)

代替

<deployment install="true" 
            mapFileExtensions="true" 
            minimumRequiredVersion="2.19.13.0" 
            co.v1:createDesktopShortcut="true">
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

msbuild clickonce msbuild-task

1
推荐指数
1
解决办法
2243
查看次数

.NET单击一次部署App.config

我正在使用VS2008 SP1 ClickOnce部署来部署应用程序.该应用程序引用一个Web服务,该服务在app.config文件中存储连接详细信息.例如,存储以下内容:

<client>
 <endpoint address="http://someservice.com/someservice" binding="customBinding" bindingConfiguration="ServiceSoapBinding" contract="AService.AService" name="AServicePort"  behaviorConfiguration="endPointBehavior"/>
</client>
Run Code Online (Sandbox Code Playgroud)

我需要能够在已部署的应用程序上验证此端点地址的值.我可以完全访问服务器上的每个已部署文件,但是我没有看到对任何app.config条目的引用.

app.config设置存储在已发布数据中的哪些位置以及如何访问它们?

亲切的问候,
F.

.net c# clickonce app-config

1
推荐指数
1
解决办法
3585
查看次数

如何在Post Build Event中签署ClickOnce应用程序?

我有通过ClickOnce部署的WinForms应用程序.我有使用SignTool签署程序集的Post Build Event.我将应用程序发布为ClickOnce安装程序,我在VS输出中看到文件已签名,但在安装后没有签名的程序集.我如何签署将包含在ClickOnce包中的程序集?

c# clickonce signing signtool

1
推荐指数
1
解决办法
1380
查看次数