在c++中为当前机器生成GUID的简单方法是什么?
What is a easy way to generate a GUID for the current machine in C++?
我目前正在开发一款第一人称射击游戏。
我想知道是否有一种方法来生成一个GUID,将始终返回相同的值为同一台机器,但将是不同的另一台机器。
我需要做这个生成来有效地禁止麻烦的用户。
我希望它能同时在microsoftvisualc++和g++上工作
我支持MAC地址的投票,因为每个MAC地址在制造时都是唯一的,但是你会遇到欺骗的问题。我建议您基于多个值,例如卷序列号、CPU型号/步进、MAC地址和磁盘制造商。这取决于您,但要尽量避免只依赖于单个值,因为它总是会改变,但是,如果您的任何标识因素发生变化,GUID也会改变,因此您需要在机器之间选择某种持久值。像产品键或产品id这样的东西可能是更好的选择,但我不确定这是否容易访问。
您可以在HKEY_LOCAL_MACHINESOFTWAREMicrosoftCryptography
注册表项处读取MachineGuid键。
这在Windows上可以工作,但在其他操作系统上你需要另一种方法。
你可以使用MAC地址
这里描述了一种方法
HKEY_CLASSES_ROOT中也有TMID。
相关文章:
- 在c++中用vector填充一个简单的动态数组
- (C++)分析树以计算返回错误值的简单算术表达式
- 我的简单if-else语句是如何无法访问的代码
- 使用简单类型列表实现的指数编译时间.为什么
- 如何在BST的这个简单递归实现中消除警告
- 一种在C++中读取TXT配置文件的简单方法
- 关于简单C++函数(is_palindrome)的逻辑的问题
- 显示错误输出的简单数组排序程序
- 当无法使用模板和宏时,生成类型变体C++代码的最简单方法是什么?
- 退出简单while循环时出现问题
- 为什么简单的算术减法在"if"条件下不起作用?
- C++-字符串是否包含一个带有简单循环的单词
- 关于 c++ 函数中指针赋值的简单问题
- 从函数返回任意简单类型的数据
- 如何在没有函数的情况下编写此代码并使C++更简单?
- 有没有办法简单地从 GPU 调用多个 cpp 输出文件?
- 在简单示例中,Python3 + ctypes 回调会导致内存泄漏
- 当简单捕获中的标识符显示为参数的声明符 ID 时,没有编译器诊断
- 如何使用 samtools C API 构建一个简单的主.cpp文件
- 在c++中为当前机器生成GUID的简单方法是什么?