devset.cpp

来自「一个通讯管理机的源代码。比较好用。推荐」· C++ 代码 · 共 96 行

CPP
96
字号
#include "devset.h"bool CDevSet::GetFirst(){	bool bRet = false;	if ( GetFirstRecord() == XB_NO_ERROR )	{		m_wDevNo = GetLongField(devno);		m_wChannelNo = GetLongField(channelno);		char* p = GetStringField(devname);		int nLen = strlen(p);		memcpy(m_szDevName,p,nLen+1);				m_byDllAddr = GetLongField(dlladdr);		m_bIsOn = GetLogicalField(ison);		m_byLocalNo = GetLongField(localno);		m_strDT = GetStringField(kind);		m_wPasswd = (WORD)GetLongField(passwd);		m_wConnectYXNo = GetLongField(connectyxno);		m_dwIPAddr = GetLongField(ipaddr);		bRet = true;	}	return bRet;}	bool CDevSet::GetNext(){	bool bRet = false;	if (GetNextRecord() == XB_NO_ERROR )	{		m_wDevNo = GetLongField(devno);		m_wChannelNo = GetLongField(channelno);		char* p = GetStringField(devname);		int nLen = strlen(p);		memcpy(m_szDevName,p,nLen+1);				m_byDllAddr = GetLongField(dlladdr);		m_bIsOn = GetLogicalField(ison);		m_byLocalNo = GetLongField(localno);		m_strDT = GetStringField(kind);		m_wPasswd = (WORD)GetLongField(passwd);		m_dwIPAddr = GetLongField(ipaddr);		bRet = true;	}	return bRet;}	short CDevSet::Update(){	PutLongField(devno,m_wDevNo);	PutField(devname,m_szDevName);	PutLongField(dlladdr,m_byDllAddr);	PutLongField(channelno,m_wChannelNo);	PutField(ison,m_bIsOn?"T":"F");	PutLongField(localno,m_byLocalNo);	PutField(kind,m_strDT.data());	PutLongField(passwd,m_wPasswd);	PutLongField(connectyxno,m_wConnectYXNo);	PutLongField(ipaddr,m_dwIPAddr);	return PutRecord(GetCurRecNo());}short CDevSet::Add(){	BlankRecord();			/* blank out the record buffer */	PutLongField(devno,m_wDevNo);	PutField(devname,m_szDevName);	PutLongField(dlladdr,m_byDllAddr);	PutLongField(channelno,m_wChannelNo);	PutField(ison,m_bIsOn?"T":"F");	PutLongField(localno,m_byLocalNo);	PutField(kind,m_strDT.data());	PutLongField(passwd,m_wPasswd);	PutLongField(connectyxno,m_wConnectYXNo);	PutLongField(ipaddr,m_dwIPAddr);	return AppendRecord();}void CDevSet::Delete(WORD	wDevNo){	ExclusiveLock( F_SETLKW ); /* lock the files for our exclusive use */		if (GetFirst())	{		do {			if (m_wDevNo == wDevNo)			{				DeleteRecord();				if (RecordDeleted())					PackDatabase(F_SETLKW);				break;			}		} while(GetNext());	}	ExclusiveUnlock();     /* unlock the files */}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?