链接时提示类似如下错误:
xxxx.obj : error LNK2001: unresolved external symbol __imp__InternetOpenA@20工程比较大,我知道xxxx.obj对于此工程肯定是不需要的(它是另一个关联工程的),我如何查找头文件看是从哪儿包含进来的?

解决方案 »

  1.   

    针对这种链接的错误,楼主rebuild一下工程试试看。
      

  2.   

    MSDN上针对每个API都会在后面标示所属的头文件和库文件,比如你查看InternetOpen函数,下面有如下的说明:
    Requirements
    Client
     Requires Windows Vista, Windows XP, Windows 2000 Professional, Windows NT Workstation 4.0, Windows Me, Windows 98, or Windows 95.
     
    Server
     Requires Windows Server 2008, Windows Server 2003, Windows 2000 Server, or Windows NT Server 4.0.
     
    Version
     Requires Internet Explorer 3.0 or later.
     
    Header
     Declared in Wininet.h.
     
    Library
     Use Wininet.lib.
     
    DLL
     Requires Wininet.dll.
     
    Unicode
     Implemented as InternetOpenW (Unicode) and InternetOpenA (ANSI).
     
    所以,你要在代码中添加wininet.lib的引用,如#pragma comment(lib, "wininet.lib") 或者在链接选项中添加
      

  3.   

    #pragma comment(lib, "wininet.lib") 
    嗯 如果要查看使用DLL的情况,可以在VC中的 DEPENDS工具下查看
      

  4.   

    同上,
    #pragma comment(lib, "wininet.lib")
      

  5.   

    用msdn搜索__imp__InternetOpenA中的InternetOpen就可以
    自己的文件的话就在工程中搜索,看看是不是少import了库文件