您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> VC/MFC >> ████帮忙测试下:写了一个DLL获得MAC地址,winXP sp3系统下失效

████帮忙测试下:写了一个DLL获得MAC地址,winXP sp3系统下失效

来源:网络整理     时间:2016/8/16 10:35:30     关键词:

关于网友提出的“ ████帮忙测试下:写了一个DLL获得MAC地址,winXP sp3系统下失效”问题疑问,本网通过在网上对“ ████帮忙测试下:写了一个DLL获得MAC地址,winXP sp3系统下失效”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: ████帮忙测试下:写了一个DLL获得MAC地址,winXP sp3系统下失效
描述:

在 xp sp2和2003系统下都能正常,sp3系统就失效了,请高手指点
写了个测试工具,请帮忙测试下:http://www.fileden.com/getfile.php?file_path=http://www.fileden.com/files/2009/9/14/2574444/TestDll.rar
标明系统和测试情况,是否能显示mac地址。谢谢
DLL源码:

extern "C" _declspec(dllexport) char * __stdcall GetEthernetCardMac(void)// CxyzdllApp::
{
  AFX_MANAGE_STATE(AfxGetStaticModuleState());
  //用于获取网卡MAC地址的结构   
  typedef   struct   _ASTAT_   
  {
  ADAPTER_STATUS   adapt;   
  NAME_BUFFER         NameBuff   [30];   
  }ASTAT,   *   PASTAT;   
  ASTAT   Adapter;   
    
  NCB   ncb;   
          UCHAR   uRetCode   =   0;   
  char   *   MAC   =   new   char[13];   
          memset(   &ncb,   0,   sizeof(ncb)   );//为网卡结构分配内存   
  //指定命令代码和是否异步处理NCB结构的标志,大多数有意义的比特包含该标志。     
  //如果ASYNCH常数和命令代码组合(使用OR操作),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,     "*                               "   );//16个字符   
          ncb.ncb_buffer   =   (PUCHAR)&Adapter;   
          ncb.ncb_length   =   sizeof(Adapter);   
    
          uRetCode   =   Netbios(   &ncb   );//读取网卡参数   
          if   (   uRetCode   ==   0   ){   
                  sprintf(MAC,   "%02x%02x%02x%02x%02x%02x\0",   
                                  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]   );   
  for(int   len   =   0;   MAC[len]   !=   0x0;   len++){   
  if(   MAC[len]   >   96   )     //如果是字母   
  MAC[len]   =   MAC[len]   -   32   ;   //转换为大写   
  }  
  //CString a;a.Format(_T("MAC=%s"),MAC);
   //AfxMessageBox(a);
  return   MAC;   
          }   
  //AfxMessageBox(_T("MAC=NULL"));
  return   NULL;   
  }    


解决方案1:

看完楼主的这个帖子以后,我的心久久不能平静,震撼啊!为什么会有如此好的帖子!我纵横网络bbs多年,自以为再也不会有任何帖子能打动我,没想到今天看到了如此精妙绝伦的这样一篇帖子.楼主,是你让我深深地理解了'人外有人,天外有天'这句话.谢谢你!在看完这帖子以后,我没有立即回复,因为我生怕我庸俗不堪的回复会玷污了这网上少有的帖子.但是我还是回复了,因为我觉得如果不能在如此精彩的帖子后面留下自己的网名,那我死也不会瞑目的!能够在如此精彩的帖子后面留下自己的网名是多么骄傲的一件事啊!楼主,请原谅我的自私!我知道无论用多么华丽的辞藻来形容楼主您帖子的精彩程度都是不够的,都是虚伪的,所以我只想说一句:您的帖子太好了!我愿意一辈子的看下去!这篇帖子构思新颖,题材独具匠心,段落清晰,情节诡异,跌宕起伏,主线分明,引人入胜,平淡中显示出不凡的文学功底,可谓是字字珠玑,句句经典,是我辈应当学习之典范.就小说艺术的角度而言,这篇帖子可能不算太成功,但它的实验意义却远远大于成功本身.正所谓:"一马奔腾,射雕引弓,天地都在我心中!"楼主真不愧为无厘界新一代的开山怪!本来我已经对这个社区失望了,觉得这个社区没有前途了,心里充满了悲哀.但是看了你的这个帖子,又让我对社区产生了希望.是你让我的心里重新燃起希望之火,是你让我的心死灰复燃,是你拯救了我一颗拨凉拨凉的心!本来我决定不会在社区回任何帖子了,但是看了你的帖子,我告诉自己这个帖子是一定要回的!这是百年难得一见的好贴啊!苍天有眼啊,让我在优生之年得以观得 如此精彩绝伦的帖子!楼主的话真如"大音希声扫阴翳",犹如"拨开云雾见青天",使我等网民看到了希望,看到了未来!晴天霹雳,醍醐灌顶或许不足以形容大师文章的万一;巫山行云,长江流水更难以比拟大师的文才!黄钟大吕,振聋发聩!你烛照天下,明见万里;雨露苍生,泽被万方!透过你深邃的文字,我仿佛看到了你鹰视狼顾,龙行虎步的伟岸英姿;仿佛看到了你手执如椽大笔,写天下文章的智慧神态;仿佛看见了你按剑四顾,江山无数的英武气概!楼主,你说的多好啊!我在社区打滚这么多年,所谓阅人无数,见怪不怪了,但一看到楼主的气势,我就觉得楼主同在社区里灌水的那帮小混蛋有着本质的差别,那忧郁的语调,那熟悉的签名,还有字里行间高屋建瓴的辞藻.没用的,楼主,就算你怎么换马甲都是没有用的,你的亿万拥戴者早已经把你认出来了,你一定就是传说中的最强id.自从社区改版之后,我就已经心灰意冷,对社区也没抱什么希望了,传说已经幻灭,神话已经终结,留在社区还有什么意思.没想到,没想到,今天可以再睹楼主的风范,我激动得忍不住就在屏幕前流下了眼泪.是啊,只要在楼主的带领下,社区就有希望了.我的内心再一次沸腾了,我胸腔里的血再一次燃烧了.楼主的话概括扼要,一语道出了我们苦想多年的而不可得答案的几个重大问题的根本.楼主就好比社区的明灯,楼主就好比社区的方向,楼主就好比社区的栋梁.有楼主在,社区的明天必将更好!楼主你的高尚情操太让人感动了.在现在这样一个物欲横流的金钱社会里,竟然还能见到楼主这样的性情中人,无疑是我这辈子最大的幸运.让我深深感受到了人性的伟大.楼主的帖子,就好比黑暗中刺裂夜空的闪电,又好比撕开乌云的阳光,一瞬间就让我如饮甘露,让我明白了永恒的真理在这个世界上是真实存在着的.只有楼主这样具备广阔胸怀和完整知识体系的人,才能作为这真理的唯一引言者.看了楼主的帖子,让我陷入了严肃的思考中,我认为,如果不把楼主的帖子顶上去,就是对真理的一种背叛,就是对谬论的极大妥协.因此,我决定义无返顾的顶了!楼主,在遇到你之前,我对人世间是否有真正的圣人是怀疑的;而现在,我终于相信了!我曾经忘情于汉廷的歌赋,我曾经惊讶于李杜的诗才,我曾经流连于宋元的词曲;但现在,我才知道我有多么浅薄!楼主的帖子实在是写得太好了.文笔流畅,修辞得体,深得魏晋诸朝遗风,更将唐风宋骨发扬得入木三分,能在有生之年看见楼主的这个帖子.实在是我三生之幸啊.看完楼主的这个帖子之后,我竟感发生出一种无以名之的悲痛感――啊,这么好的帖子,如果将来我再也看不到了,那我该怎么办?那我该怎么办?直到我毫不犹豫的把楼主的这个帖子收藏了,我内心的那种激动才逐渐平复下来.可是我立刻想到,这么好的帖子,倘若别人看不到,那么不是浪费楼主的心血吗?经过痛苦的思想斗争,我终于下定决心,我要把这个帖子一直往上顶,往上顶到所有人都看到为止!我现在终于明白我缺乏的是什么了,正是楼主那种对真理的执着追求和楼主那种对理想的艰苦实践所产生的厚重感.面对楼主的帖子,我震惊得几乎不能动弹了,楼主那种裂纸欲出的大手笔,竟使我忍不住一次次的翻开楼主的帖子,每看 一次,赞赏之情就激长数分,我总在想,是否有神灵活在它灵秀的外表下,以至能使人三月不知肉味,使人有余音穿梁,三日不绝的感受.楼主,你写得实在是太好了!我唯一能做的,就只有把这个帖子顶上去这件事了.楼主,我支持您!  

解决方案2:

http://tech.ddvip.com/2008-12/1229763750101706.html


以上介绍了“ ████帮忙测试下:写了一个DLL获得MAC地址,winXP sp3系统下失效”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3326154.html

相关图片

相关文章