跳转至
本 SDK 仅适用于过去 3 年内发布的设备。我们定期优化和更新 SDK，以确保兼容性和性能。对于超过 3 年的旧设备，我们不保证兼容性，也不会提供技术支持。

# NET_SDK_GetPTZConfig

### 接口定义

C++C#

    1
    2
    3
    4
    5
    6
    7
    8
    9
    BOOL NET_SDK_GetPTZConfig(
        LONG lUserID,
        LONG lChannel,
        DWORD dwPTZCmd,
        LPVOID lpInBuffer,
        DWORD dwInBufferSize,
        LPVOID lpOutBuffer,
        DWORD dwOutBufferSize,
        LPDWORD lpBytesReturned);

    1
    2
    3
    4
    5
    6
    7
    8
    9
    public static extern bool NET_SDK_GetPTZConfig(
        int lUserID,
        int lChannel,
        int dwCommand,
        IntPtr lpInBuffer,
        int dwInBufferSize,
        IntPtr lpOutBuffer,
        int dwOutBufferSize,
        ref int lpBytesReturned);

### 功能描述

获取PTZ相关配置。

### 参数说明

参数 | 类型 | 说明
--- | --- | ---
lUserIDin | LONG | 用户ID，`NET_SDK_Login`或`NET_SDK_LoginEx`的返回值。
lChannelin | LONG | 通道编号，从0开始，IPC设备此参数无效。
dwPTZCmdin | DWORD | 设备配置命令，参考`DD_PTZ_CONFIG_E`。
lpInBufferin | LPVOID | 发送数据的缓冲指针，不需要为NULL。
dwInBufferSizein | DWORD | 发送数据的缓冲长度(以字节为单位) ，不需要为0。
lpOutBufferout | LPVOID | 接收数据的缓冲指针。
dwOutBufferSizein | DWORD | 接收数据的缓冲长度(以字节为单位)，不能为0。
lpBytesReturnedout | LPDWORD | 实际收到的数据长度指针，不能为NULL。

### 返回值

- 类型：BOOL

- 说明：成功返回TRUE,失败返回FALSE。

### 备注

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwPTZCmd命令值 | dwPTZCmd含义 | 发送数据lpInBuffer | 接收结构体
--- | --- | --- | ---
DD_PTZ_CONFIG_PRESET | 获取通道预置点 | NULL | `DD_PTZ_PRESET_CONFIG_Ex`
DD_PTZ_CONFIG_CRUISE | 获取通道巡航线 | NULL | `DD_CH_CRUISE`
DD_PTZ_CONFIG_CRUISE_POINT | 获取通道巡航线上预置点 | unsigned int(cruiseIndex) | `DD_CRUISE_POINT_INFO`

错误码