我要写一个 Dll 里面有一个导出的函数,
使用GetIfEntry函数得到系统接口的信息
这个Dll的函数就是返回GetIfEntry函数得到结构的dwSpeed成员。
我该如何写,我初学,帮我写出那个函数好吗?#include "Iphlpapi.h"
#include "iprtrmib.h"TEST_API int test(void)
{   
PMIB_IFROW pifRow=NULL;
GetIfEntry (pifRow);
return pifRow->dwSpeed;
}
//总报错,我不知道该怎么写
你来看看这个贴子也可以
http://expert.csdn.net/Expert/topic/1163/1163475.xml?temp=.8314783
回答好了分都是你的

解决方案 »

  1.   

    不清除你说的报错是什么期间的事情. 但:
    PMIB_IFROW pifRow=NULL;  // 肯定是不行的, 应该给MIB_IFROW结构分配空间:TEST_API int test(void)
    {   
    MIB_IFROW ifRow;
    GetIfEntry (&pifRow);
    return ifRow.dwSpeed;
    }
      

  2.   

    偶有篇文章~是我在学dll时写的笔记~
    http://expert.csdn.net/Expert/topic/1034/1034807.xml?temp=.2713434
    希望能对你有帮助~还有去看看Windows核心编程~
      

  3.   

    同意 clumsy(希望, 你可还在?) 的说法
    但是要注意:dwSpeed的类型是DWORD
      

  4.   

    第一种情况 pifRow 在 GetIfEntry 调用前分配
    MIB_IFROW ifRow;
    GetIfEntry( &ifRow );第二种情况 pifRow 在 GetIfEntry 中分配 那么GetIfEntry应这
    样声明:
    GetIfEntry( PMIB_IFROW * lpValue );调用:
    PMIB_IFROW ifRow = NULL;
    GetIfEntry( &ifRow );
    if ( ifRow )
    {
         delete ifRow;
         ifRow = NULL;
    }