VS-C++ 系列:所有相关C++文章链接.
VS-C# 系列:所有相关C#文章链接.
bat 系列:所有相关bat文章链接.
OpenCV 系列:所有相关OpenCV文章链接.
Keil 系列:所有相关文章链接
所有内容均以最小系统调试成功;逐步提供低分源码工程下载!
保证每行代码都经过验证!
如有疑惑,欢迎留言,看见即回;祝好__by Dxg_LC
序言:
1、以上链接为方便整理查看资料用;伴随博文发布更新,如果有不正确处,感谢指正
2、因本人能力有限若有不正确之处或者相关超链接失效,请于相关文章内提醒@博主;灰常感谢
3、友情提醒1,勿要《一支烟 + 一杯茶 == 一坐一下午》 身体重要,革命本钱;
4、友情提醒2,多喝热水;
5、友情提醒3,听媳妇话+多点时间陪家人;
1、
/// <summary>
/// 度深摄像头结构体
/// </summary>
[StructLayout(LayoutKind.Sequential, Pack = 1, CharSet = CharSet.Ansi)]
public struct D3T_CameraInfo
{
/// <summary>
/// 设计厂商
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string Vendor;
/// <summary>
/// 生产厂商
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string Manufacturer;
/// <summary>
/// 型号
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string Model;
/// <summary>
/// 系列
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string Family;
/// <summary>
/// 连接名
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string LinkName;
/// <summary>
/// 传感器描述
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
string SensorInfo;
/// <summary>
/// 硬件版本
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string HardwareVersion;
/// <summary>
/// 固件版本
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string FirmwareVersion;
/// <summary>
/// 内核驱动版本
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string KernelVersion;
/// <summary>
/// 设备驱动版本
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string DscamVersion;
/// <summary>
/// 友好设备名称
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string FriendlyName;
/// <summary>
/// 接口描述
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string PortInfo;
/// <summary>
/// 序列号(一般可以更改)
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string SerialNumber;
/// <summary>
/// 相机描述
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)]
public string CameraInfo;
/// <summary>
/// 用户命名
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)]
public string UserID;
/// <summary>
/// 原始序列号
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string OriginalSerialNumber;
/// <summary>
/// 保留字节
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
public string reserved;
}
//获取结构体大小
D3T_CameraInfo pInfo = new D3T_CameraInfo();
int StSize = Marshal.SizeOf(pInfo);
// IntPtr 转结构体
IntPtr pSts = IntPtr.Zero;
D3T_CameraInfo st = new D3T_CameraInfo
st = (D3T_CameraInfo)Marshal.PtrToStructure(pSts, typeof(D3T_CameraInfo));
// IntPtr 转结构体数组
IntPtr pSts = IntPtr.Zero;
int Count = 5;
D3T_CameraInfo[] st = new D3T_CameraInfo[Count];
List<D3T_CameraInfo> pInfo;
pInfo.Clear();
for (int i = 0; i < Count; i++)
{
pInfo.Add((D3T_CameraInfo)Marshal.PtrToStructure(pSts + Marshal.SizeOf(st[0]) * i, typeof(D3T_CameraInfo)));
}
Dxg-原创出品,如需转载,请注明出处;
欢迎收藏,点赞;"一键三联"走起,LOL