c++ - 调用WinSnmp函数SnmpStartup时报错LNK2028?

标签 c++ snmp winsnmp

我正在尝试用 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.libWsnmp32.dll,它应该可以正常工作。
看看 this .

关于c++ - 调用WinSnmp函数SnmpStartup时报错LNK2028?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6629530/

相关文章:

c++ - WinSNMP v1 陷阱

c++ - 数组编译时生成?

c++ - 操作系统 : Symbols not found for architecture i386

c++ - 如何使用单一职责原则

c++ - 无法将C共享库链接到C++程序

SNMP MIB : revision for last update is missing

linux - 将 SNMP "Timeout: No Response from <IP_Address>"替换为特定文本

powershell - 在打印机上测试 SNMP 社区字符串