请问这样的api在c#中怎么写?

yucong 2007-06-07 04:28:12
LONG NET_DVR_Login(char *sDVRIP,WORD wDVRPort,char *sUserName,char
*sPassword ,LPNET_DVR_DEVICEINFO lpDeviceInfo)

还包括一个这样的结构

typedef struct {
BYTE sSerialNumber[SERIALNO_LEN]; /* 序列号 */
BYTE byAlarmInPortNum; /* DVR 报警输入个数 */
BYTE byAlarmOutPortNum; /* DVR 报警输出个数 */
BYTE byDiskNum; /* DVR 硬盘个数 */
BYTE byDVRType; /* DVR 类型*/
BYTE byChanNum; /* DVR 通道个数 */
BYTE byStartChan; /* 起始通道号,例如DVS-1,DVR – 1 */
}NET_DVR_DEVICEINFO, *LPNET_DVR_DEVICEINFO;
...全文
253 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yucong 2007-06-07
  • 打赏
  • 举报
回复
long 要改为 int 可还是不行
yucong 2007-06-07
  • 打赏
  • 举报
回复
我是这样写的,可是不正确


[DllImport("HCNetSDK.dll",
CharSet=CharSet.Auto ,
EntryPoint="NET_DVR_Login")]
internal static extern long NET_DVR_Login(StringBuilder sDVRIP,short wDVRPort,StringBuilder sUserName,StringBuilder sPassword ,ref NET_DVR_DEVICEINFO lpDeviceInfo);

结构:
public struct NET_DVR_DEVICEINFO
{
public string sSerialNumber;
public byte byAlarmInPortNum;
public byte byAlarmOutPortNum;
public byte byDiskNum;
public byte byDVRType;
public byte byChanNum;
public byte byStartChan;
}

110,553

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧