代码之家  ›  专栏  ›  技术社区  ›  Kyle

基于OS的Win32 C++导入路径?

  •  3
  • Kyle  · 技术社区  · 15 年前

    我正在处理一些具有这样的导入的遗留代码:

    #import "C:\Program Files\Common Files\System\ado\msado15.dll" rename("EOF", "EndOfFile")
    

    问题是,在x64计算机上,此导入的路径位于“Program Files(x86)”目录中。是否有一个预处理器宏,我可以将其包装起来,使其在其中一个上工作?

    伊迪丝1:我想我找到了。_但我不能100%确定这是否正确。 edit2:_m_x64似乎是为x64处理器编译时使用的。不是一个。

    2 回复  |  直到 15 年前
        1
  •  3
  •   Sandeep Datta    15 年前

    使用的progid/libid版本 import 声明…

    #import "progid:my.prog.id.1.5"
    

    #import "libid:12341234-1234-1234-1234-123412341234" version("4.0") lcid("9")
    
        2
  •  4
  •   xtofl Adam Rosenfield    15 年前

    如果你看一下 #import statement documentation ,您会发现(MIDL)编译器的搜索顺序是

    1. %path%中的文件夹
    2. %lib%中的文件夹
    3. 所有“附加包含”目录

    因此,您只需执行导入并给编译器一个/i include目录。