System.ApplicationId 类
方法描述
所含信息用于唯一标识基于清单的应用程序。 此类不能被继承。
语法定义(C# System.ApplicationId 类 的用法)
[SerializableAttribute] [ComVisibleAttribute(true)] public sealed class ApplicationId
构造函数
构造函数名称 | 构造函数描述 |
---|---|
ApplicationId | 初始化 ApplicationId 类的新实例。 |
成员/方法
方法名称 | 方法描述 |
---|---|
Copy | 创建并返回当前应用程序标识的相同副本。 |
Equals | 确定指定的 ApplicationId 对象是否等效于当前 ApplicationId。 (重写 Object.Equals(Object)。) |
Finalize | 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。) |
GetHashCode | 获取当前应用程序标识的哈希代码。 (重写 Object.GetHashCode()。) |
GetType | 获取当前实例的 Type。 (继承自 Object。) |
MemberwiseClone | 创建当前 Object 的浅表副本。 (继承自 Object。) |
ToString | 创建并返回应用程序标识的字符串表示。 (重写 Object.ToString()。) |
提示和注释
应用程序标识包含发行者公钥、应用程序名称、目标处理器结构、应用程序区域性和应用程序版本。 应用程序标识属性值对应于应用程序清单中包含的信息。 有关应用程序清单的更多信息,请参见 ClickOnce 应用程序清单。
ApplicationId 由 ApplicationSecurityInfo 类用来标识基于清单的应用程序。
System.ApplicationId 类例子
下面的代码示例通过从 ApplicationSecurityInfo 实例获取 ApplicationId 来显示 ApplicationId 属性,该实例是使用当前正在执行的基于清单的应用程序的 ActivationContext 创建的。
using System; using System.Collections; using System.Text; using System.Security.Policy; using System.Reflection; using System.Security; using System.Security.Permissions; namespace ActivationContextSample { public class Program : MarshalByRefObject { [SecurityPermission(SecurityAction.Demand, ControlDomainPolicy = true)] public static void Main(string[] args) { Console.WriteLine("Full name = " + AppDomain.CurrentDomain.ActivationContext.Identity.FullName); Console.WriteLine("Code base = " + AppDomain.CurrentDomain.ActivationContext.Identity.CodeBase); ApplicationSecurityInfo asi = new ApplicationSecurityInfo(AppDomain.CurrentDomain.ActivationContext); Console.WriteLine("ApplicationId.Name property = " + asi.ApplicationId.Name); if (asi.ApplicationId.Culture != null) Console.WriteLine("ApplicationId.Culture property = " + asi.ApplicationId.Culture.ToString()); Console.WriteLine("ApplicationId.ProcessorArchitecture property = " + asi.ApplicationId.ProcessorArchitecture); Console.WriteLine("ApplicationId.Version property = " + asi.ApplicationId.Version); // To display the value of the public key, enumerate the Byte array for the property. Console.Write("ApplicationId.PublicKeyToken property = "); byte[] pk = asi.ApplicationId.PublicKeyToken; for (int i = 0; i < pk.GetLength(0); i++) Console.Write("{0:x}", pk[i]); Console.Read(); } public void Run() { Main(new string[] { }); Console.ReadLine(); } } }
线程安全
此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
版本信息
.NET Framework 受以下版本支持:4、3.5、3.0、2.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1
适用平台
Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。