分享
 
 
 

黑客软件编写基础知识集合(4)

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

得到计算机的主机名和IP地址

#include

链接库:Wsock32.lib

{

WORD wVersionRequested;

WSADATA wsaData;

char name[255];

CString ip;

PHOSTENT hostinfo;

wVersionRequested = MAKEWORD( 2, 0 );

if ( WSAStartup( wVersionRequested, &wsaData ) == 0 )

{

if( gethostname ( name, sizeof(name)) == 0)

{

if((hostinfo = gethostbyname(name)) != NULL)

{

ip = inet_ntoa (*(struct in_addr *)*hostinfo-h_addr_list);

}

}

WSACleanup( );

}

}

***********************************************

用VC++读取网卡MAC地址的程序

运行VC++6.0,选择创建一个Win32 Console程序,然后输入以下代码:

#include "stdafx.h"

#include

#include

#include

#include

#include

nb30.h #include

typedef struct _ASTAT_

{

ADAPTER_STATUS adapt;

NAME_BUFFER NameBuff [30];

}ASTAT, * PASTAT;

ASTAT Adapter;

void getmac_one (int lana_num)

{

NCB ncb;

UCHAR uRetCode;

memset( &ncb, 0, sizeof(ncb) );

ncb.ncb_command = NCBRESET;

ncb.ncb_lana_num = lana_num;

uRetCode = Netbios( &ncb );

printf( "The NCBRESET return code is:

0x%x \n", uRetCode );

memset( &ncb, 0, sizeof(ncb) );

ncb.ncb_command = NCBASTAT;

ncb.ncb_lana_num = lana_num;

strcpy( (char *)ncb.ncb_callname,

"* " );

ncb.ncb_buffer = (unsigned char *) &Adapter;

ncb.ncb_length = sizeof(Adapter);

uRetCode = Netbios( &ncb );

printf( "The NCBASTAT

return code is: 0x%x \n", uRetCode );

if ( uRetCode == 0 )

{

printf( "The Ethernet Number[%d]

is: %02X%02X-%02X%02X-%02X%02X\n",

lana_num,

Adapter.adapt.adapter_address[0],

Adapter.adapt.adapter_address[1],

Adapter.adapt.adapter_address[2],

Adapter.adapt.adapter_address[3],

Adapter.adapt.adapter_address[4],

Adapter.adapt.adapter_address[5]);

}

}

int main(int argc, char* argv[])

{

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 );

printf( "The NCBENUM return

code is:

0x%x \n", uRetCode );

if ( uRetCode == 0 )

{

printf( "Ethernet Count is : %d\n\n", lana_enum.length);

for ( int i=0; i

getmac_one( lana_enum.lana);

}

return 0;

}

----------------------------------------------------------

***********************************************

解决VC++语言程序中的2000年问题

PROCTIME.C源程序清单:

#include

#include

#include

void goto_ xy(int x,int y)

{

union REGS r;

r.h.ah=2; r.h.bh=0;

r.h.dh=(char)x;

r.h.dl=(char)y;

int86(0x10,&r,&r);

}

get_key()

{

union REGS r;

r.h.ah=0;

return int86(0x16,&r,&r);

}

int wherex()

{int x;

union REGS r;

r.h.ah=3; r.h.bh=0;

int86(0x10,&r,&r);

(char)x=r.h.dh;

return x;

}

int wherey()

{ int y;

union REGS r;

r.h.ah=3; r.h.bh=0;

int86(0x10,&r,&r);

(char)y=r.h.dl;

return y;

}

void write_video(int x,int y,char *p,int attrib)

{

register int I;

union REGS r;

for (I=y;*p;I++) {

if (*p==\n)

{ goto_ xy(x+1,2);break; }

goto_ xy(x,I);

r.h.ah=9; r.h.bh=0;

r.x.cx=1; r.h.al=*p++;

r.h.bl=(char)attrib;

int86(0x10,&r,&r);

}

}

void disptime(int x,int y)

{

struct tm *newtime;

time_t aclock;

long startsec,currsec;

int dqx,dqy,YEAR;

char sj[50],week[3];

time(&aclock);

newtime=localtime(&aclock);

YEAR=newtime->tm_year+1990

startsec=newtime->tm_sec;

switch(newtime->tm_wday)

{

case 0: strcpy(week,"日"); break;

case 1: strcpy(week,"一"); break;

case 2: strcpy(week,"二"); break;

case 3: strcpy(week,"三"); break;

case 4: strcpy(week,"四"); break;

case 5: strcpy(week,"五"); break;

case 6: strcpy(week,"六"); break;

}

while(!kbhit())

{

time(&aclock);

newtime=localtime(&aclock);

sprintf(sj,"%d.%2d.%2d 星期%s %d:%2d:%2d",YEAR,newtime->tm_mon+1,newtime- >tm_mday,week,newtime->tm_hour,newtime->tm_min,newtime->tm_sec);

currsec=newtime->tm_sec;

if(startsec!=currsec)

{

dqx=wherex(); dqy=wherey();

write_video(x,y,sj,0x0a);

goto_ xy(dqx,dqy);

return;

}

}

}

main ()

{

union inkey { char ch[2]; int I; }c;

for(;;) {

for(;;) {

if (kbhit()) { c.I=get_key(); break; }

disptime(0,54);

if (c.ch[0]==27) exit(0);

}

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有