跳至内容

构建 ADLX 的 C# 绑定

导航: 使用 ADLX 进行编程ADLX 编程指南快速入门

本指南概述了为 ADLX 构建 C# 绑定包装器的步骤,这是使用 ADLX 进行 C# 应用程序编程的前提。

先决条件

  • 已安装ADLX SDK
  • 已安装Visual Studio 2019
  • 已安装 swigwin 4.0.2,并且 swigwin 4.0.2 安装的路径已添加到 Path 用户环境变量中。

要构建 C# 版本的 ADLX 绑定

  • 为 C# ADLX 绑定包装器创建一个文件夹,例如 ADLXCSharpBind
  • ADLXCSharpBind 文件夹中创建一个新文件,并将其命名为 ADLXCSharpBind.i
  • 编辑 ADLXCSharpBind.i,然后使用 SWIG 输入格式添加您希望包装的接口的 SDK 头文件。要创建事件通知的绑定,请为相应的监听器接口开启 director 包装回调。

例如,

feature("director") IADLXDisplayListChangedListener; 注意: 有关 C# 绑定的示例,请参阅 C# 示例 ADLXCSharpBind.i 文件。

  • 创建一个名为 ADLXCSharpBind 的 C++ 动态链接库项目,并按如下方式配置项目:
  • | 键 | 值 | 说明 | |---|---|---| | C/C++ > 预编译头文件 | 不使用预编译头文件 | 请勿使用预编译头文件 |
  • ADLXCSharpBind.i 文件添加到项目中。
  • 右键单击 ADLXCSharpBind.i 文件,然后从菜单中选择“属性”。在“属性”对话框中,选择 **配置属性** > **常规** > **项类型** > **自定义生成工具**。

按如下方式设置配置

  • | 键 | 值 | 说明 | |---|---|---| | 命令行 | if not exist (SolutionDir)outmkdir(SolutionDir)out mkdir (SolutionDir)out swig.exe -c++ -csharp -dllimport ADLXCSharpBind -outdir ../out/ ADLXCSharpBind.i | 调用 SWIG.exe 构建 ADLXCSharpBind.i 文件 | | 输出 | %(Filename)_wrap.cxx | 设置输出文件名格式 |
  • 构建项目。

结果: 以下文件将添加到 ADLXCSharpBind 项目的输出文件夹中

  • ADLXCSharpBind_wrap.h 文件。
  • ADLXCSharpBind_wrap.cxx 文件。
  • ADLXCSharpBind.i 文件中附加接口的所有 *.cs 文件。
  • 将以下文件添加到项目中
  • ADLXCSharpBind_wrap.h
  • ADLXCSharpBind_wrap.cxx
  • SDK/Platform/Windows/WinAPIs.cpp
  • SDK/ADLXHelper/Windows/Cpp/ADLXHelper.h
  • SDK/ADLXHelper/Windows/Cpp/ADLXHelper.cpp
  • 重新生成项目。

结果: ADLXCSharpBind.dll 将在 "$(SolutionDir)$(Platform)$/(Configuration)/" 文件夹中构建。

另请参阅: ADLXCSharpBind

© . This site is unofficial and not affiliated with AMD.