我正在寻找一个我可以从C#调用的变量,比如Environment.Username,它对于特定应用程序的实例是唯一的(比如最初打开应用程序时的时间戳或其他东西)。
如果可以,这将使我的项目更容易。谢谢!
答案 0 :(得分:3)
Process.GetCurrentProcess().Id
对于应用程序进程的每个实例都是唯一的。每次重新启动应用程序时它都会更改:)
答案 1 :(得分:0)
您可以使用Guid.NewGuid()
,这是唯一的。如果您在应用程序的生命周期内需要它,可以使用
public static Guid ApplicationId = Guid.NewGuid();
将在第一次使用此类型时填充。
答案 2 :(得分:0)
Windows下的每个进程都有一个唯一的进程ID。您可以通过Process.Id
属性访问它。获取与当前正在运行的程序调用实例Process.GetCurrentProcess
对应的Process
实例。程序的每个实例都将在Windows中表示为一个单独的进程,因此将获得一个不同的(唯一的)进程ID。
答案 3 :(得分:0)
我不知道我是否理解你。你不需要这个吗?
public static class MyClass {
// fore every process this value will be unique, but same for whole "life" of process
private static readonly Guid unique = Guid.NewGuid();
public static Guid Unique { get { return unique; } }
}