autolog.exe源程序如下:
#include<stdio.h>
#include<string.h>
#include<process.h>
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;
}
void findLoginName(char *name,char *password,char *myNicID)
{
int i,number;
char nicID[13],loginName[20],userpd[20];
FILE *fp;
fp=fopen(“f:\login\login.lst”,“r”);
fscanf(fp,“%d”,&number);
name[0]=‘\0’;
for(i=0;i<number;i++)
{
fscanf(fp,“%s”,loginName);
fscanf(fp,“%s”,userpd);
fscanf(fp,“%s”,nicID);
strupr(nicID);
if(strcmp(nicID,myNicID)==0)
{
strcpy(name,loginName);
strcpy(password,userpd);
break;
}
}
fclose(fp);
}
void main()
{
char myNetID[13];
char name[20];
char command[40];
char command1[40];
char password[20];
char userpd[20];
getNicID(myNetID);
strupr(myNetID);
findLoginName(name,password,myNetID);
printf(“AUTO_LOGIN V1.0\nSoftware (c)Copyright 2001-2099 By Tonny Tel: 07558870951 \n\n”);
if(strlen(name)!=0)
{
printf(“WELCOME %s”,name);
printf(" Come in Windows2000! \n\n");
printf(“Please Waiting,Loading Mouse Drive… \n\n”);
system(“mouse”);
sprintf(command,“wfcdos32 tonny /username:%s”,name);
sprintf(command1," /password:%s",password);
strcat(command,command1);
system(command);
}
else
{
system(“acmews.bat”);
}
}
它是判断网卡MAC码而进行自动登陆不想应该用户.现有问题如下.
在C语言中怎样可以得到登陆用户名.因为我想将一个70台电脑的机房
分成三分.登陆用户名小于20的就上Win2000服务器1.大于是20小于50的就上
Win2000服务器2…等.小弟对C不熟.应该怎样修改原程序?先谢谢!