如何取机器的唯一标识? 我是用C++写的读取文件用java调用的,用java直接读取我不太清楚 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 xxy802(孔明在世) 能把你的程序贴一下么?或者发到我信箱里:[email protected] #include <nb30.h>#pragma comment(lib, "NetApi32.lib")struct ASTAT{ ADAPTER_STATUS adapt; NAME_BUFFER NameBuff [30];}m_Adapter;CString csNetcardCode;{ NCB ncb; UCHAR uRetCode; LANA_ENUM lana_enum; memset(&ncb, 0, sizeof(ncb) ); ncb.ncb_command = NCBENUM; ncb.ncb_buffer = (unsigned char *) &lana_enum; ncb.ncb_length = sizeof(lana_enum); uRetCode = Netbios(&ncb); if(uRetCode == 0) { memset(&ncb, 0, sizeof(ncb)); ncb.ncb_command = NCBRESET; ncb.ncb_lana_num = 0; uRetCode = Netbios(&ncb); memset(&ncb, 0, sizeof(ncb)); ncb.ncb_command = NCBASTAT; ncb.ncb_lana_num = 0; strcpy((char *)ncb.ncb_callname, "*"); ncb.ncb_buffer = (unsigned char *) &m_Adapter; ncb.ncb_length = sizeof(m_Adapter); uRetCode = Netbios(&ncb); csNetcardCode.Format("%02X%02X-%02X%02X-%02X%02X", m_Adapter.adapt.adapter_address[0], m_Adapter.adapt.adapter_address[1], m_Adapter.adapt.adapter_address[2], m_Adapter.adapt.adapter_address[3], m_Adapter.adapt.adapter_address[4], m_Adapter.adapt.adapter_address[5]); }} 还有别人能提供一下java的解决方法么? 其实你的问题是和操作系统有关,如果是windows系列的操作系统,你可以调用windowsApi函数。在java中要用到本地方法接口(jni--java native interface,注意不是jini)。在c++是调用dll。其他vb,pb,delphi都例似。如果是linux, 系统同样也提供这些参数。如何调用我就不太清楚了。pc机具有唯一性的并且常用的硬件参数是cpu序列号,硬盘序列号,网卡序列号(MAC地址)。如果没有网卡,我想会有MODEM,其实MODEM也是网卡。也可以读出它的MAC地址。PC还有软件标志,域名与机器名的组合。都可以使用。 但是有一点要注意,windows JVM 对 jni的支持并不好。有的功能你必须用c或c++来写,生成dll,然后再在java程序中使用。详情可见 Thinking in Java 的附录。 编译异常 DataInputStream 读取中文乱码,如何解决? 怎么求阶乘??? 解析XML,希望大家指点 关于applet.ser 求jdk1.5.0_08 大家过来看一下,Sun公司也解决不了的数据库连接池,连接泄露问题 jsdk1.4的方块字体的问题? 急!Jbuilder中文显示问题? 关于java上传图片。 修改和添加数据的奇怪错误(能帮我解决问题我就送他200分,从没失言过)????? %%%%%% 高分请教, 在Java Application中如何打开Excel文件和打开IE窗口??????????????
能把你的程序贴一下么?
或者发到我信箱里:
[email protected]
#pragma comment(lib, "NetApi32.lib")struct ASTAT
{
ADAPTER_STATUS adapt;
NAME_BUFFER NameBuff [30];
}m_Adapter;
CString csNetcardCode;
{
NCB ncb;
UCHAR uRetCode;
LANA_ENUM lana_enum;
memset(&ncb, 0, sizeof(ncb) );
ncb.ncb_command = NCBENUM;
ncb.ncb_buffer = (unsigned char *) &lana_enum;
ncb.ncb_length = sizeof(lana_enum);
uRetCode = Netbios(&ncb);
if(uRetCode == 0)
{
memset(&ncb, 0, sizeof(ncb));
ncb.ncb_command = NCBRESET;
ncb.ncb_lana_num = 0;
uRetCode = Netbios(&ncb);
memset(&ncb, 0, sizeof(ncb));
ncb.ncb_command = NCBASTAT;
ncb.ncb_lana_num = 0;
strcpy((char *)ncb.ncb_callname, "*");
ncb.ncb_buffer = (unsigned char *) &m_Adapter;
ncb.ncb_length = sizeof(m_Adapter);
uRetCode = Netbios(&ncb);
csNetcardCode.Format("%02X%02X-%02X%02X-%02X%02X",
m_Adapter.adapt.adapter_address[0],
m_Adapter.adapt.adapter_address[1],
m_Adapter.adapt.adapter_address[2],
m_Adapter.adapt.adapter_address[3],
m_Adapter.adapt.adapter_address[4],
m_Adapter.adapt.adapter_address[5]);
}
}
如果是linux, 系统同样也提供这些参数。如何调用我就不太清楚了。pc机具有唯一性的并且常用的硬件参数是cpu序列号,硬盘序列号,网卡序列号(MAC地址)。如果没有网卡,我想会有MODEM,其实MODEM也是网卡。也可以读出它的MAC地址。PC还有软件标志,域名与机器名的组合。都可以使用。