我正在尝试用 C++ 编写一个简单的演示应用程序。我只想查询我网络上的一些打印机并将传入的信息分类到几个数据库表中,但在编译我的代码时出现此错误:
Error 1 error LNK2028: unresolved token (0A00001C) "extern "C" unsigned long __stdcall SnmpCleanup(void)" (?SnmpCleanup@@$$J10YGKXZ) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ) C:\Users\Ashton\Documents\Visual Studio 2010\Projects\snmpdemo\snmpdemo\Main.obj
我的代码如下:
//#include <Snmp.h>
#include <WinSnmp.h>
#include <stdio.h>
smiLPUINT32 majorVers;
smiLPUINT32 minorVers;
smiLPUINT32 nLevel;
smiLPUINT32 translateMode;
smiLPUINT32 retranslateMode;
int main()
{
SnmpStartup(majorVers, minorVers, nLevel, translateMode, retranslateMode);
printf("%imajorVers /n %iminorVers /n "
"%inLevel /n "
"%itranslateMode /n "
"%iretranslateMode");
SnmpCleanup();
}
最佳答案
您没有为 SnmpStartup()
和 SnmpCleanup()
定义,因此链接器提示找不到对它的引用。可能您正在使用定义这些函数的库,但您是否链接到它?
编辑:
您应该将您的程序链接到 Wsnmp32.lib
或 Wsnmp32.dll
,它应该可以正常工作。
看看 this .
关于c++ - 调用WinSnmp函数SnmpStartup时报错LNK2028?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6629530/