?? addname.cpp
字號:
#include <windows.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <nb30.h>
#pragma comment(lib,"netapi32.lib")
#define MAXSESSIONS 254
#define MAXNAMES 254
UCHAR LanaEnum(LANA_ENUM *lenum)
{
NCB ncb;
UCHAR ucRc;
memset(&ncb,0,sizeof(NCB));
ncb.ncb_command=NCBENUM;
ncb.ncb_buffer=(PUCHAR)lenum;
ncb.ncb_length=sizeof(LANA_ENUM);
ucRc=Netbios(&ncb);
return(ucRc);
}
UCHAR RestNCB(UCHAR lana)
{
NCB ncb;
UCHAR ucRc;
memset(&ncb,0,sizeof(NCB));
ncb.ncb_command=NCBRESET;
ncb.ncb_callname[0]=MAXSESSIONS;
ncb.ncb_callname[2]=MAXNAMES;
ncb.ncb_callname[3]=TRUE;
ncb.ncb_lana_num=lana;
ucRc=Netbios(&ncb);
return(ucRc);
}
UCHAR AddName(UCHAR *Name,UCHAR Lana,UCHAR *NameNum)
{
NCB ncb;
memset(&ncb,0,sizeof(NCB));
ncb.ncb_command=NCBADDNAME;
ncb.ncb_lana_num=Lana;
strcpy((char*)ncb.ncb_name,(const char*)Name);
Netbios(&ncb);
*NameNum=ncb.ncb_num;
return(ncb.ncb_cmd_cplt);
}
UCHAR AddGroupName(UCHAR *Name,UCHAR Lana,UCHAR *GroupNum)
{
NCB ncb;
memset(&ncb,0,sizeof(NCB));
ncb.ncb_command=NCBADDGRNAME;
ncb.ncb_lana_num=Lana;
strcpy((char*)ncb.ncb_name,(const char*)Name);
Netbios(&ncb);
*GroupNum=ncb.ncb_num;
return(ncb.ncb_cmd_cplt);
}
UCHAR DeleteName(UCHAR *Name,UCHAR Lana)
{
NCB ncb;
memset(&ncb,0,sizeof(NCB));
ncb.ncb_command=NCBDELNAME;
ncb.ncb_lana_num=Lana;
strcpy((char*)ncb.ncb_name,(const char*)Name);
Netbios(&ncb);
return(ncb.ncb_cmd_cplt);
}
void main()
{
UCHAR Name[NCBNAMSZ];
UCHAR GroupName[NCBNAMSZ];
UCHAR NameNum,GroupNum;
strcpy((char*)Name,"user1");
strcpy((char*)GroupName,"usergroup");
LANA_ENUM lenum;
if(LanaEnum(&lenum)!=NRC_GOODRET)
{
printf("lanaEnum Error!");
return;
}
printf("LanaEnum OK!");
if(RestNCB(lenum.lana[0])!=NRC_GOODRET)
printf("ResetNcb Error!");
else
printf("ResetNcb OK!");
if(AddName(Name,lenum.lana[0],&NameNum)!=NRC_GOODRET)
{
printf("AddName Error!");
return;
}
if(AddGroupName(GroupName,lenum.lana[0],&NameNum)!=NRC_GOODRET)
{
printf("AddGroupName Error!");
return;
}
printf("AddGroupName ok!\n");
DeleteName(Name,0);
DeleteName(GroupName,0);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -