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

# NET_SDK_IPC_DEVICE_INFO

### 结构体定义

C++C#

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    typedef struct _net_sdk_ipc_device_info_
    {
        unsigned int deviceID;
        unsigned short channel;
        unsigned char guid[48];
        unsigned short status;
        char szEtherName[16];
        char szServer[64];
        unsigned short nPort;
        unsigned short nHttpPort;
        unsigned short nCtrlPort;
        char szID[64];
        char username[36];
        unsigned int manufacturerId;
        char manufacturerName[36];
        char productModel[36];
        unsigned char bUseDefaultCfg;
        unsigned char bPOEDevice;
        unsigned char resv[2];
        char szChlname[36];
    } NET_SDK_IPC_DEVICE_INFO;

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    [StructLayout(LayoutKind.Sequential, Pack = 4)]
    public struct NET_SDK_IPC_DEVICE_INFO
    {
        public UInt32 deviceID;
        public UInt16 channel;
        [MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.U1, SizeConst = 48)]
        public byte[] guid;
        public UInt16 status;
        [MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.U1, SizeConst = 16)]
        public byte[] szEtherName;
        [MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.U1, SizeConst = 64)]
        public byte[] szServer;
        public UInt16 nPort;
        public UInt16 nHttpPort;
        public UInt16 nCtrlPort;
        [MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.U1, SizeConst = 64)]
        public byte[] szID;
        [MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.U1, SizeConst = 36)]
        public byte[] username;
        public UInt32 manufacturerId;
        [MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.U1, SizeConst = 36)]
        public byte[] manufacturerName;
        [MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.U1, SizeConst = 36)]
        public byte[] productModel;
        public byte bUseDefaultCfg;
        public byte bPOEDevice;
        [MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.U1, SizeConst = 2)]
        public byte[] resv;
        [MarshalAs(UnmanagedType.ByValArray, ArraySubType = UnmanagedType.U1, SizeConst = 36)]
        public byte[] szChlname;
        public static int GetSize()
        {
            return Marshal.SizeOf(typeof(NET_SDK_IPC_DEVICE_INFO));
        }
    }

### 功能描述

获取NVR的通道配置的IPC信息结构体。

### 成员说明

成员 | 类型 | 说明
--- | --- | ---
deviceID | unsigned int | 设备ID(暂时未用上)。
channel | unsigned short | 该网络设备在本地分配的通道(从0开始)。
guid | unsigned char[48] | 通道的GUID。
status | unsigned short | 连接状态（0代表离线，1表示在线）。
szEtherName | char[16] | 如果为空，默认为eth0。
szServer | char[64] | 网络设备IP地址。
nPort | unsigned short | 网络设备端口号。
nHttpPort | unsigned short | HTTP端口。
nCtrlPort | unsigned short | 控制端口，一般与nPort相同。
szID | char[64] | 网络设备标识(或是MAC地址)。
username | char[36] | 用户名。
manufacturerId | unsigned int | 设备厂商ID(暂时未用上)。
manufacturerName | char[36] | 设备厂商名(暂时未用上)。
productModel | char[36] | 产品型号(暂时未用上)。
bUseDefaultCfg | unsigned char | 暂时未用上。
bPOEDevice | unsigned char | 暂时未用上。
resv | unsigned char[2] | 暂时未用上。
szChlname | char[36] | 通道名称。

错误码