生成PC ID(无需唯一+不需要管理员)

时间:2013-04-27 08:25:03

标签: c#

我正在制作一个WCF应用程序,我只想在连接到服务器的用户上获得一些额外的信息。它不必是唯一ID。

我真的想要一些简单的东西。这会有用吗?

static UserInfo() // d-constructor
        {

            MachineID = Environment.MachineName;
            MachineID = MachineID + Convert.ToString(Environment.OSVersion);
            MachineID = MachineID + Environment.ProcessorCount;
            MachineID = MachineID + Environment.UserName;
            MachineID = MachineID + Environment.Version;
        }

1 个答案:

答案 0 :(得分:3)

当然,那会有用。我很快就在LINQPad 4中登记了,它回来了很好:

  

MYMACHINEMicrosoft Windows NT 6.1.7601 Service Pack 14myuser4.0.30319.296

如果你想让字符串没有空格,你可以考虑用下划线或类似的东西替换空格 - 也许......

MachineID = MachineID.Replace(' ', '_');

...已添加到UserInfo()方法的末尾。

<强>更新

要按照以下评论进行操作,Windows 7 Help Forums可以快速创建以特定用户身份运行命令的快捷方式:测试我设置快捷方式以非管理员用户{{1}运行cmd.exe我为此目的而创建的。同样,我在这里的测试是从命令行运行myuserset systeminfo - 通过类比测试,但我认为足够了。

<强>更新

为了进一步说明,我创建了另一个快捷方式来运行LINQPad 4作为非管理员用户myuser,然后重新运行代码:没有问题也经过这样的测试。我的目标是取悦。 :)