⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 guiadodb.cpp

📁 这是一个串口监视程序
💻 CPP
📖 第 1 页 / 共 2 页
字号:
BOOL CGuiRecordSet::IsBof()
{
	return (BOOL)m_rs->BOF;
}
BOOL CGuiRecordSet::Supports( CursorOptionEnum CursorOptions ) {  return (BOOL)m_rs->Supports(CursorOptions);}
void CGuiRecordSet::CancelBatch(AffectEnum AffectRecords){  m_rs->CancelBatch(AffectRecords);}CGuiField CGuiRecordSet::GetField(LPCTSTR lpField)
{
	FieldPtr pField = m_rs->Fields->GetItem(lpField);
	CGuiField Field;
	Field.Attach(pField);
	return Field;
}
CGuiField CGuiRecordSet::GetField(int Index){	_variant_t vtIndex;
	vtIndex.vt = VT_I2;
	vtIndex.iVal = Index;
	FieldPtr pField = m_rs->Fields->GetItem(vtIndex);	CGuiField Field;
	Field.Attach(pField);
	return Field;}CGuiRecordSet*  CGuiRecordSet::Clone(ADOCG::LockTypeEnum LockType){	_RecordsetPtr m_rs1=m_rs->Clone(LockType);	CGuiRecordSet* m_pRs= new CGuiRecordSet();	m_pRs->Attach(m_rs1);	return m_pRs; }CGuiRecordSet* CGuiRecordSet::NextRecordset(long RecordsAffected) {	_RecordsetPtr m_rs1=m_rs->NextRecordset((VARIANT*)RecordsAffected);	CGuiRecordSet* m_pRs= new CGuiRecordSet();	m_pRs->Attach(m_rs1);	return m_pRs; }
//***********************************************************************************************************
CGuiField::CGuiField(void)
{
}
CGuiField::~CGuiField(void)
{
}
BOOL CGuiField::SetValue(long lVal)
{
	_variant_t vt;
	vt.lVal=lVal;
	vt.vt=VT_I4;	
	try
	{
		field->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}



BOOL CGuiField::SetValue(float flVal)
{
	_variant_t vt;
	vt.fltVal=flVal;
	vt.vt=VT_R4;	
	try
	{
		field->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
}


BOOL CGuiField::SetValue(int nVal)
{
	_variant_t vt;
	vt.intVal=nVal;
	vt.vt=VT_I2;	
	try
	{
		field->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

	
}

BOOL CGuiField::SetValue(double dbVal)
{
	_variant_t vt;
	vt.dblVal=dbVal;
	vt.vt=VT_R8;	
	
	try
	{
		field->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiField::SetValue(CString szCad)
{
	_variant_t vt;
	if(!szCad.IsEmpty())
	{
		vt.vt = VT_BSTR;
		vt.bstrVal = szCad.AllocSysString();
	}
	try
	{
		field->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}


}


BOOL CGuiField::SetValue(bool blVal)
{
	_variant_t vt;
	vt.boolVal=blVal;
	vt.vt=VT_BOOL;	
	try
	{
		field->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
}


BOOL CGuiField::SetValue(COleDateTime dtVal)
{
	_variant_t vt;
	vt.date=dtVal;
	vt.vt=VT_DATE;	
	try
	{
		field->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiField::SetValue(_variant_t vt)
{
	try
	{
		field->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiField::GetValue(int& nVal)
{
	_variant_t vt;
	vt = field->Value;
	try
	{
		if (vt.vt==VT_I2)
		{
			nVal=vt.intVal;
			return TRUE;
		}else if (vt.vt==VT_BOOL)
		{
			nVal=vt.boolVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiField::GetValue(long& lVal)
{
	_variant_t vt;
	vt = field->Value;
	try
	{
		if (vt.vt==VT_I4)
		{
			lVal=vt.lVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiField::GetValue(double& dbVal)
{
	_variant_t vt;
	vt = field->Value;
	try
	{
		if (vt.vt==VT_R8)
		{
			dbVal=vt.dblVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
}

BOOL CGuiField::GetValue(CString& strValue)
{
	_variant_t vt;
	vt =field->Value;
	
	try
	{
		if (vt.vt==VT_BSTR)
		{
			strValue=vt.bstrVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
}

BOOL CGuiField::GetValue(COleDateTime& dtVal)
{
	_variant_t vt;
	vt = field->Value;
	try
	{
		if (vt.vt==VT_DATE)
		{
			dtVal=vt.date;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
		
}

BOOL CGuiField::GetValue(float& flVal)
{
	_variant_t vt;
	vt = field->Value;
	try
	{
		if (vt.vt==VT_R4)
		{
			flVal=vt.fltVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}



BOOL CGuiField::GetValue(_variant_t& vt)
{
	try
	{
		_variant_t vt = field->Value;
		return TRUE;
	}
	catch(_com_error& e)
	{
		GetError(e);
		return FALSE;
	}
}
	

//***********************************************************************************************************

CGuiParameter::CGuiParameter()
{
	::CoInitialize(NULL);
	pParam.CreateInstance(__uuidof(Parameter));	
}

CGuiParameter::~CGuiParameter()
{
	pParam->Release();
	pParam=NULL;
}


void CGuiParameter::SetAttributes(long Attributes)
{
	pParam->PutAttributes(Attributes);
}

void CGuiParameter::SetDirection(ADOCG::ParameterDirectionEnum Direction)
{
	pParam->PutDirection(Direction);
}

void CGuiParameter::SetName(LPCTSTR szName)
{
	CString mszname=szName;
	pParam->Name=mszname.AllocSysString();
	
}

void CGuiParameter::SetNumericScale(unsigned char NumericScale)
{
	pParam->PutNumericScale(NumericScale);
}

void CGuiParameter::SetPrecision(unsigned char Precision)
{
	pParam->PutPrecision(Precision);
}

void CGuiParameter::SetSize(long Size)
{
	pParam->PutSize(Size);
}

void CGuiParameter::SetType(ADOCG::DataTypeEnum Type)
{
	pParam->PutType(Type);
}

BOOL CGuiParameter::SetValue(long lVal)
{
	_variant_t vt;
	vt.lVal=lVal;
	vt.vt=VT_I4;	
	try
	{
		pParam->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}



BOOL CGuiParameter::SetValue(float flVal)
{
	_variant_t vt;
	vt.fltVal=flVal;
	vt.vt=VT_R4;	
	try
	{
		pParam->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
}


BOOL CGuiParameter::SetValue(int nVal)
{
	_variant_t vt;
	vt.intVal=nVal;
	vt.vt=VT_I2;	
	try
	{
		pParam->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

	
}

BOOL CGuiParameter::SetValue(double dbVal)
{
	_variant_t vt;
	vt.dblVal=dbVal;
	vt.vt=VT_R8;	
	
	try
	{
		pParam->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiParameter::SetValue(CString szCad)
{
	_variant_t vt;
	if(!szCad.IsEmpty())
	{
		vt.vt = VT_BSTR;
		vt.bstrVal = szCad.AllocSysString();
	}
	try
	{
		pParam->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}


}


BOOL CGuiParameter::SetValue(bool blVal)
{
	_variant_t vt;
	vt.boolVal=blVal;
	vt.vt=VT_BOOL;	
	try
	{
		pParam->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
}


BOOL CGuiParameter::SetValue(COleDateTime dtVal)
{
	_variant_t vt;
	vt.date=dtVal;
	vt.vt=VT_DATE;	
	try
	{
		pParam->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiParameter::SetValue(_variant_t vt)
{
	try
	{
		pParam->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiParameter::GetValue(int& nVal)
{
	_variant_t vt;
	vt = pParam->Value;
	try
	{
		if (vt.vt==VT_I2)
		{
			nVal=vt.intVal;
			return TRUE;
		}else if (vt.vt==VT_BOOL)
		{
			nVal=vt.boolVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiParameter::GetValue(long& lVal)
{
	_variant_t vt;
	vt = pParam->Value;
	try
	{
		if (vt.vt==VT_I4)
		{
			lVal=vt.lVal;
			return TRUE;
		}if (vt.vt==VT_BSTR)
		{
			CString cad=vt.bstrVal;
			lVal=atol(cad);
			return TRUE;
		}
		else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiParameter::SetValue(COleCurrency cyVal)
{
	_variant_t vt;
	vt.cyVal=cyVal.m_cur;
	vt.vt=VT_CY;	
	try
	{
		pParam->Value=vt;
		return TRUE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}

BOOL CGuiParameter::GetValue(double& dbVal)
{
	_variant_t vt;
	vt = pParam->Value;
	try
	{
		if (vt.vt==VT_R8)
		{
			dbVal=vt.dblVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
}

BOOL CGuiParameter::GetValue(CString& strValue)
{
	_variant_t vt;
	vt =pParam->Value;
	
	try
	{
		if (vt.vt==VT_BSTR)
		{
			strValue=vt.bstrVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
}

BOOL CGuiParameter::GetValue(COleDateTime& dtVal)
{
	_variant_t vt;
	vt = pParam->Value;
	try
	{
		if (vt.vt==VT_DATE)
		{
			dtVal=vt.date;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}
		
}

BOOL CGuiParameter::GetValue(COleCurrency& cyVal)
{
	_variant_t vt;
	vt = pParam->Value;
	
	try
	{
		if (vt.vt==VT_CY)
		{
			cyVal.m_cur=vt.cyVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}


BOOL CGuiParameter::GetFormatDate(CString& m_szDate, CString Format)
{
	COleDateTime time;
	if (!GetValue(time)) return FALSE;
	CTime ct(time.GetYear(),time.GetMonth(),time.GetDay(),time.GetHour(),time.GetMinute(),time.GetSecond()); 
	m_szDate =ct.Format(Format);
	return TRUE;
}



BOOL CGuiParameter::GetValue(float& flVal)
{
	_variant_t vt;
	vt = pParam->Value;
	try
	{
		if (vt.vt==VT_R4)
		{
			flVal=vt.fltVal;
			return TRUE;
		}else return FALSE;
	}catch(_com_error &e)
	{
		GetError(e);
		return FALSE;
	}

}



BOOL CGuiParameter::GetValue(_variant_t& vt)
{
	try
	{
		_variant_t vt = pParam->Value;
		return TRUE;
	}
	catch(_com_error& e)
	{
		GetError(e);
		return FALSE;
	}
}
	

//----------------------------------------------------------------------------------------------

CGuiCommand::CGuiCommand()
{
	::CoInitialize(NULL);
	pCommand.CreateInstance(__uuidof(Command));	

}

CGuiCommand::~CGuiCommand()
{
	Cancel();
	pCommand->Release();
	pCommand=NULL;
}


void CGuiCommand::SetActiveConnection(LPCTSTR szconnec)
{
	m_pCon.Open(szconnec);
	ASSERT( m_pCon.IsConnect());
	SetActiveConnection(&m_pCon);
}

void CGuiCommand::SetActiveConnection(CGuiConnection* pCon)
{
	ASSERT(pCon->IsConnect());
	pCommand->ActiveConnection=pCon->GetConecction();
}

void CGuiCommand::Cancel()
{
	pCommand->Cancel();
} 

void CGuiCommand::SetCommandText(LPCTSTR lpCommand,CommandTypeEnum cmdType)
{
	CString szCommand=lpCommand;
	pCommand->CommandText=szCommand.AllocSysString();
	pCommand->PutCommandType(cmdType);
}

void CGuiCommand::SetCommandTimeout(long CommandTimeout)
{
	pCommand->PutCommandTimeout(CommandTimeout);
}

void CGuiCommand::SetPrepared(BOOL prepared)
{
	pCommand->PutPrepared((BOOL) prepared);
}

long CGuiCommand::GetState()
{
	return pCommand->GetState();
}

CGuiRecordSet* CGuiCommand::Execute(VARIANT* param1,VARIANT* param2,long Options)
{
	try
	{
		_RecordsetPtr m_rs = pCommand->Execute(NULL, NULL, Options);
		CGuiRecordSet* m_prs= new CGuiRecordSet();
		m_prs->Attach(m_rs);
		return m_prs;
	}
	catch(_com_error &e)
	{
		GetError(e);
		return NULL;
	}
	
}

CGuiParameter* CGuiCommand::CreateParameter(CString Name ,long Size ,
											ADOCG::DataTypeEnum Type, 
											ADOCG::ParameterDirectionEnum Direction)
{
	_ParameterPtr param=pCommand->CreateParameter(Name.AllocSysString(), Type,Direction, Size);
		
	CGuiParameter* pParam=new CGuiParameter();
	pParam->Attach(param);
	return pParam;
}
	
BOOL CGuiCommand::Append(CGuiParameter* pParam)
{
	try
	{
		pCommand->Parameters->Append(pParam->GetParameter());
		return TRUE;
	}
	catch(_com_error& e)
	{
		GetError(e);
		return FALSE;
	}

}


⌨️ 快捷键说明

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