是否可以读取当前运行的 ClickOnce 应用程序的发布者名称(您在Project Properties -> Publish -> Options -> Publisher name
在 Visual Studio 中)?
我需要它的原因是运行当前正在运行的应用程序的另一个实例,如中所述this http://www.codeproject.com/KB/dotnet/ExecuteClickOnceApp.aspx文章并将参数传递给它。
我当然是了know我的应用程序的发布者名称,但如果我对其进行硬编码,然后决定更改发布者的名称,我很可能会忘记更新这段代码。
这是另一种选择。请注意,它只会获取当前正在运行的应用程序的发布者名称,这就是我所需要的。
我不确定这是否是解析 XML 的最安全方法。
public static string GetPublisher()
{
XDocument xDocument;
using (MemoryStream memoryStream = new MemoryStream(AppDomain.CurrentDomain.ActivationContext.DeploymentManifestBytes))
using (XmlTextReader xmlTextReader = new XmlTextReader(memoryStream))
{
xDocument = XDocument.Load(xmlTextReader);
}
var description = xDocument.Root.Elements().Where(e => e.Name.LocalName == "description").First();
var publisher = description.Attributes().Where(a => a.Name.LocalName == "publisher").First();
return publisher.Value;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)