2013-09-24 56 views
2

我在Visual C++项目中使用WinPcap库。当我尝试编译项目时,出现链接器错误,但是我已正确配置项目属性以包含相应的文件和库。 这里是我得到的错误:WinPcap链接器错误

Error LNK2019: unresolved external symbol _pcap_findalldevs_ex referenced in function _main consolewinpcap.obj 
Error LNK2019: unresolved external symbol _pcap_geterr referenced in function _main consolewinpcap.obj 
Error LNK2019: unresolved external symbol _pcap_next_ex referenced in function _main consolewinpcap.obj 
Error LNK2019: unresolved external symbol _pcap_open referenced in function _main consolewinpcap.obj 

UPDATE:

这里是".vcproj"文件

<Tool 
    Name="VCCLCompilerTool" 
    Optimization="0" 
    AdditionalIncludeDirectories=".\WinPCap\Include" 
    PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WPCAP" 
    MinimalRebuild="true" 
    BasicRuntimeChecks="3" 
    RuntimeLibrary="3" 
    UsePrecompiledHeader="2" 
    WarningLevel="3" 
    DebugInformationFormat="4" 
/> 
<Tool 
    Name="VCManagedResourceCompilerTool" 
/> 
<Tool 
    Name="VCResourceCompilerTool" 
/> 
<Tool 
    Name="VCPreLinkEventTool" 
/> 
<Tool 
    Name="VCLinkerTool" 
    AdditionalDependencies="wpcap.lib Packet.lib" 
    ShowProgress="0" 
    LinkIncremental="2" 
    AdditionalLibraryDirectories=".\WinPCap\lib" 
    GenerateDebugInformation="true" 
    SubSystem="2" 
    TargetMachine="1" 
/> 

任何帮助,将不胜感激的一部分。

+0

WinPcap是一个动态库,不是吗?你有没有添加导入库到你的库链接? http://stackoverflow.com/questions/5218929/using-winpcap-in-vc-programs?rq=1 – harper

+0

是的,我没有导入它们:/ – Kira

+0

你可以在链接器/常规选项卡中启用“显示进度”,看看什么是继续,例如如果图书馆真的被搜查。 – harper

回答

1

当您对链接器进程有疑问时,启用“显示进度”选项很有用。您可以在链接器/常规选项卡中找到它。

如果您不使用GUI,您还可以更改.vcproject文件。你可以在这里找到它:

<Tool Name="VCLinkerTool" 
    ShowProgress="1" 
    ... 
/> 
+0

谢谢@harper :) – Kira