📄 id.cpp
字号:
//根据网卡ID号自动注册
#include<stdio.h>
#include<string.h>
#include<process.h>
//通过DOS中断的eeH功能可以获取网卡的ID号
mov ah,eeH;
int 21H
//当ax返回值不是ee00H时,cx、bx、ax返回网卡ID号
void getNicID(char *nicID)
{
unsigned int rCX,rBX,rAX;
asm {
mov ah, 0xee;
int 0x21;
mov word ptr rAX,ax;
mov word ptr rBX,bx;
mov word ptr rCX,cx;
}
if(rAX!=0xee00) sprintf( nicID, "%04x%04x%04x",rCX, rBX,rAX);
else sprintf( nicID, "000000000000");
}
void findLoginName(char *name,char *myNicID)
{
int i,number;
char nicID[13],loginName[20];
FILE *fp;
fp=fopen("login.lst","r"); //打开文件login.lst
fscanf(fp,"%d",&number); //读出登记注册人数
name[0]='\0';
for(i=0;i<number;i++) //逐个登记记录检查
{
fscanf(fp,"%s",loginName); //得到注册名
fscanf(fp,"%s",nicID); //得到注册网卡ID
strupr(nicID);
if(strcmp(nicID,myNicID)==0) //如果参数输入的网卡ID已被注册过返回对应的注册名函数结束
{
strcpy(name,loginName);
break;
}
}
fclose(fp);
}
void main()
{
char myNetID[13];
char name[20];
char command[80];
getNicID(myNetID); /*取得网卡ID*/
strupr(myNetID);
findLoginName(name,myNetID); //查找ID是否注册过
if(strlen(name)!=0)
{
printf("Login Name :%s\n",name); //输出信息
printf("Nic ID is:%s\n",myNetID);
sprintf(command,"f:login %s",name);
system(command);
}
else
{
printf("Nic ID is:%s\n",myNetID);
sprintf(command,"f:\\login\\login");
system(command);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -