2

我正在制作一个 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;
        }
4

1 回答 1

3

当然,那会奏效。我很快签入了 LINQPad 4,结果很好:

MYMACHINEMicrosoft Windows NT 6.1.7601 Service Pack 14myuser4.0.30319.296

如果您希望字符串没有空格,您可能会考虑用下划线或类似的东西替换空格 - 也许......

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

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

更新:

要遵循以下评论,Windows 7 帮助论坛有快速步骤来创建以特定用户身份运行命令的快捷方式:为了测试,我设置了一个以cmd.exe非管理员用户身份运行的快捷方式myuser,我为此创建了该快捷方式。同样,我在这里的测试是然后从命令行运行set-systeminfo类比myuser测试,但我认为足够了。

更新:

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

于 2013-04-27T08:33:14.997 回答