添加对托管 Visual C++ 项目的引用

本文提供有关如何为托管的 Visual C++ 项目添加引用的信息。

原始产品版本: Visual C++
原始 KB 数: 310674

总结

本文介绍在 Visual C++ 项目中添加对另一个程序集的引用的过程。 在其他语言(如 Visual C#)中,可以通过“ 添加引用 ”对话框添加引用。 此对话框不适用于托管 C++ 应用程序。 有几个提示可以简化在托管 C++ 应用程序中使用引用。

Microsoft .NET 引用

.NET 引用指向共享程序集。 例如,程序集 System.Windows.Forms.dll 是用于访问 Windows 窗体类的标准程序集。 若要在托管 C++ 应用程序中使用此程序集,只需使用 #using 预处理器指令引用它,如下所示:

#using <System.Windows.Forms.dll>

COM 引用

在托管 C++ 应用程序中使用组件对象模型 (COM) 对象涉及设计决策。 一个选项是在托管类中使用非托管 COM 代码。 例如,可以决定使用传统 #import 解决方案。 对于使用 COM 互操作时出现问题的情况,这可以是一个不错的选择。

第二个选项是使用包装 COM 对象的互操作程序集。 这是可用于其他语言(如 C# 和 Visual Basic .NET)的唯一方法。 若要为 COM 对象创建互操作程序集,请使用 TLBIMP.exe 工具。 例如,使用以下步骤从托管应用程序自动执行 Internet Explorer:

  1. 打开命令提示符。

  2. 导航到 Windows 系统 文件夹。

  3. 键入以下命令:

    tlbimp shdocvw.dll /out:Interop.shdocvw.dll
    
  4. Interop.shdocvw.dll 移动到项目文件夹。

这将为 Shdocvw.dll中的 COM 对象创建互操作程序集。 生成的文件Interop.shdocvw.dll可与#using指令一起使用。 然后,它可以被视为托管组件。 有关自动将此动态链接库(DLL)复制到输出文件夹的说明,请参阅本文的 “使用生成后事件 ”部分。

注释

必须设置 Visual C++ 的环境变量,以便识别 TLBIMP.exe。 如果未设置这些参数,您需要先在 Visual Studio .NET 中运行./VC7/BIN/VCVARS32.bat,或者在 Visual Studio 和 Visual C++ Express Edition 中运行./VC/BIN/VCVARS32.bat

项目参考

项目引用是对由其他项目创建的程序集的引用。 同样,该 #using 指令用于引用这些程序集。 但是,由于这些程序集未共享,因此必须采取措施来确保编译器能够找到它们。 执行此操作有两种方法:

  • 将程序集复制到项目文件夹。
  • 更改项目设置以查找程序集:
  1. 打开项目的“属性页” 对话框。

  2. 单击 C/C++ 文件夹。

    注释

    在 Visual C++ 中,展开 “配置属性”,然后展开 C/C++

  3. 单击 “常规”属性 页。

  4. 修改 Resolve #using References 属性以指向包含目标程序集的文件夹。

使用生成后事件

专用程序集必须与正在使用它们的可执行文件位于同一文件夹中。 在 Visual C#、Visual Basic .NET 或 Visual Basic 中添加引用时,会自动将其复制到输出文件夹。 在托管 C++ 应用程序中,可以通过使用 post-build 事件自动执行此步骤。 例如,假设在名为 TestApp 的托管 C++ 应用程序的项目文件夹中有一个名为 MYLIB.dll 的程序集。 以下步骤将设置将 post-build 此 DLL 复制到 TestApp 项目的输出文件夹的事件。

  1. 打开托管 C++ 项目的 “属性页 ”对话框。

  2. 单击 “生成事件 ”文件夹。

    注释

    在 Visual C++ 中,展开 “配置属性”,然后展开 “生成事件”。

  3. 单击 “生成后事件”属性 页。

  4. 命令行 属性修改为以下命令:

    copy $(<ProjectDir>)mylib.dll $(<TargetDir>)  
    

使用 Visual C++ .NET 或 Visual C++

通过使用 Visual C++ .NET 或 Visual C++,可以通过“ 添加引用 ”对话框添加引用。 若要添加项目引用,请执行以下步骤:

  1. 在“解决方案资源管理器”中,选择 项目。

  2. “项目 ”菜单上,单击“ 添加引用”。

    注释

    在 Visual C++ 中,单击“项目”菜单上的“引用”,然后单击“添加新引用”。

  3. 在“ 添加引用 ”对话框中,单击与要添加引用的类别对应的选项卡。

    注释

    在 Visual C++ 中,单击“添加引用”对话框中的“浏览”选项卡。

  4. 单击“ 浏览”,找到本地驱动器上所需的组件,然后单击“ 确定”。 该组件将添加到 “所选组件 ”字段。

    注释

    在 Visual C++ 中,找到本地驱动器上所需的组件。

  5. 若要将所选引用添加到当前选项卡,请单击“ 添加”。

    注释

    在 Visual C++ 中,单击“确定”关闭对话框,并在项目的“属性页”对话框的“引用”列表框中添加组件。