如何使c#可执行文件PC专用
本文关键字:PC 专用 可执行文件 何使 | 更新日期: 2023-09-27 18:15:59
我正在制作一个普通的c#程序,并希望它是不可共享的。我想要解决这个问题的方法是,我听说过可以找到用户pc名称的代码。我有我朋友的电脑的名字,我想只有工作时,他运行它。
我分发它的人将不可避免地试图以另一种价格复制和共享它,但我想每次都为他们制作一个特定的程序,只指定我的买家的桌面用户名。
经过一些研究,我被链接到这里:https://msdn.microsoft.com/en-us/library/aa394554 (v = vs.85) . aspx
但是我真的搞不懂。是否有任何函数/代码行直接获得用户pc的名称并检查它是否与我出售给的pc相匹配?谢谢& lt; 3
编辑:当我指的是用户名时,我指的是这台PC>属性
下的"计算机名"
您可以使用以下命令轻松验证计算机名称:
if(Environment.MachineName != "ComputerName")
{
Environment.Exit(-1);
}
环境。MachineName
可以将计算机名与Environment.MachineName一起使用。这样做的问题是,任何具有相同计算机名的人都可以运行该程序。唯一标识机器的一种方法是获取网卡MAC地址:
var macAddr =
NetworkInterface.GetAllNetworkInterfaces()
.Where(nic => nic.OperationalStatus == OperationalStatus.Up)
.Select(nic => nic.GetPhysicalAddress().ToString())
.FirstOrDefault();
您还应该对没有网卡的可能性进行故障保护。