- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
当使用 ClickOnce 而不是 exe 名称部署应用程序时,FriendlyName 似乎设置为“DefaultDomain”。我想消除我的窗口与其他可能也是“DefaultDomain”的潜在 ClickOnce 应用程序之间的歧义。
说明:我们正在使用非托管调用,
[DllImport("user32.dll")]
public static extern int GetClassName(IntPtr hWnd, StringBuilder lpClassName, int nMaxCount);
检索用户桌面周围窗口的类名,并需要确保我们以某种方式响应应用程序创建的窗口。当由 ClickOnce 部署时,我们的窗口不再将 exe 名称作为域,并且不会轻易与其他潜在的 ClickOnce 部署应用程序区分开来。
最佳答案
好问题。
我不能确定为什么会这样,但我相信应用程序的“托管”方式可能有所不同,因为启动应用程序的是“ClickOnce 应用程序部署支持库”。
但是,如果您一直希望使用 AppDomain.FriendlyName 来区分您的应用程序,那么也许您可以自己创建应用程序域并定义自己的友好名称。
另一个可以达到相同目的的想法是使用应用程序全名,如下所示:
private static string GetAppName()
{
if (System.Deployment.Application.ApplicationDeployment.IsNetworkDeployed)
{
ApplicationDeployment curDeployment = ApplicationDeployment.CurrentDeployment;
string fullname = curDeployment.UpdatedApplicationFullName;
Match match = Regex.Match(fullname, "#.+/(?<app>.+).exe");
return match.Groups["app"].ToString();
}
return null;
}
我很快就创建了正则表达式,所以没有任何保证。这是一个解释命名约定的链接:http://blogs.msdn.com/b/shawnfa/archive/2004/06/30/170241.aspx
另一个想法是只使用反射来获取调用程序集的名称,但这在所有部分信任的环境中都不会很好地工作。
关于c# - 如何在 ClickOnce 场景中设置 AppDomain FriendlyName?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6377225/
我需要根据 COM# 名称确定 COM 端口的“友好名称”。 我找到了一些答案,但它们要么适用于 C#,要么适用于 C++。java中有一个方法(可能是纯的)吗? 最佳答案 经过长时间的搜索,我最终编
我想用 AspNetRoles 创建下拉列表。我使用这段代码: 身份 session : public class ApplicationRoleManager : RoleManager {
我已经开始使用 SOAP 和 SAML,当我创建属性时,我想知道设置名称或为属性设置友好名称有什么区别。 XSAny value = (XSAny) builder.buildObject(Attri
当使用 ClickOnce 而不是 exe 名称部署应用程序时,FriendlyName 似乎设置为“DefaultDomain”。我想消除我的窗口与其他可能也是“DefaultDomain”的潜在
我正在编写一个允许同步到 USB 存储设备的应用程序,我想显示可以在注册表中找到的设备的 FriendlyName,位于 HKLM\SYSTEM\CurrentControlSet\枚举\USBSTO
我正在尝试创建一个 nunit 测试结果 xml 文件并将其附加到我在开发操作中构建的测试运行。我在我的测试项目中安装了 NUnit3TestAdapter.3.13.0 包,并在 VS 测试任务的控
我正在尝试按照这篇文章 Writing loggers for command line test runner vstest.console.exe 实现我的自定义 vstest 记录器我在 VS
我正在尝试按照 Twilio 文档添加来电显示作为经过验证的外出电话号码。 Twilio c# 帮助程序库有一个看起来像这样的方法签名 void AddOutgoingCallerId (phoneN
我是一名优秀的程序员,十分优秀!