LNK2001错误,我太急了,谁能帮帮我啊!!!谢谢了!

cxj1 2007-07-03 07:09:00
// InternetForbid.cpp : 定义 DLL 应用程序的入口点。
//

#include "stdafx.h"
#include "iphlpapi.h"

#ifdef _MANAGED
#pragma managed(push, off)
#endif

BOOL APIENTRY DllMain( HMODULE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
return TRUE;
}

/////////////////////////////////////////
// 导出函数: 禁止或允许上网。
// 版权所有 盛光科技 //
/////////////////////////////////////////

bool WINAPI InternetForbid(bool forbid)
{
PMIB_IFROW p1,p2;
  GetIfEntry(p2);
p1 = new _MIB_IFROW; // 申请内存
p1->dwIndex = p2->dwIndex;
  p1->dwAdminStatus = MIB_IF_ADMIN_STATUS_DOWN;
  return SetIfEntry(p1) == 0;
}
#ifdef _MANAGED
#pragma managed(pop)
#endif

这里我使用 IP Helper API (iphlpapi.h)中的函数和结构。编译成dll,def文件里公开InternetForbid函数。
但是却发生如下错误:

错误 2 error LNK2019: 无法解析的外部符号 _SetIfEntry@4,该符号在函数 "bool __stdcall InternetForbid(bool)" (?InternetForbid@@YG_N_N@Z) 中被引用 InternetForbid.obj
错误 3 error LNK2019: 无法解析的外部符号 _GetIfEntry@4,该符号在函数 "bool __stdcall InternetForbid(bool)" (?InternetForbid@@YG_N_N@Z) 中被引用 InternetForbid.obj
错误 4 fatal error LNK1120: 2 个无法解析的外部命令 I:\C++实用\InternetForbid\Debug\InternetForbid.dll 1
这是为什么呢?
...全文
169 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jixingzhong 2007-07-03
  • 打赏
  • 举报
回复
没有连接需要的资源。

在工程选项中,
添加连接库 iphlpapi.lib
飞哥 2007-07-03
  • 打赏
  • 举报
回复
you should link the library :Iphlpapi.lib.

1.you can add it to project setting/ link / object.library modules
2.you can add it into your code like this:
#pragma comment(lib,"Iphlpapi.lib.")
cxj1 2007-07-03
  • 打赏
  • 举报
回复
在 iphlpapi.h 中相关内容:

DWORD
WINAPI
GetIfEntry(
IN OUT PMIB_IFROW pIfRow
);

DWORD
WINAPI
SetIfEntry(
IN PMIB_IFROW pIfRow
);

typedef struct _MIB_IFROW
{
WCHAR wszName[MAX_INTERFACE_NAME_LEN];
DWORD dwIndex;
DWORD dwType;
DWORD dwMtu;
DWORD dwSpeed;
DWORD dwPhysAddrLen;
BYTE bPhysAddr[MAXLEN_PHYSADDR];
DWORD dwAdminStatus;
DWORD dwOperStatus;
DWORD dwLastChange;
DWORD dwInOctets;
DWORD dwInUcastPkts;
DWORD dwInNUcastPkts;
DWORD dwInDiscards;
DWORD dwInErrors;
DWORD dwInUnknownProtos;
DWORD dwOutOctets;
DWORD dwOutUcastPkts;
DWORD dwOutNUcastPkts;
DWORD dwOutDiscards;
DWORD dwOutErrors;
DWORD dwOutQLen;
DWORD dwDescrLen;
BYTE bDescr[MAXLEN_IFDESCR];
} MIB_IFROW,*PMIB_IFROW;

我是新来的,给分不多,回答后我一定加分!

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧