caoserialcomm10.cpp

来自「可实现串口通信的DLL文件源码.通信速度快,易调试,占用系统资源少,非常实用.」· C++ 代码 · 共 66 行

CPP
66
字号
#include "stdafx.h"

BOOL APIENTRY DllMain( HANDLE hModule, DWORD  ul_reason_for_call, LPVOID lpReserved )
{
	switch (ul_reason_for_call)
	{
	case DLL_PROCESS_ATTACH:
	case DLL_THREAD_ATTACH:
	case DLL_THREAD_DETACH:
	case DLL_PROCESS_DETACH:
		break;
	}
    return TRUE;
}
//=========================================================
CSerialComm* gmCSerialComm = NULL;
//=========================================================API 函数实现
extern "C" CAOSERIALCOMM10_API void SerialComm_SetUp(char* xComName,CommPortSettings xPortSettings)  //初始化 
{
	gmCSerialComm = new CSerialComm(xComName,xPortSettings);
}

extern "C" CAOSERIALCOMM10_API void SerialComm_UnSetUp() //逆初始化
{
	if(gmCSerialComm)
	{
		delete gmCSerialComm;
	}
}
//---------------------------------------------------------
extern "C" CAOSERIALCOMM10_API CommPortStatus* SerialComm_GetPortStatus()
{
	CommPortStatus* tmp = NULL;
	if(gmCSerialComm)
	{
		tmp = &(gmCSerialComm->mPortStatus);
	}
	return tmp;
}
extern "C" CAOSERIALCOMM10_API DWORD SerialComm_ReadComm(BYTE* xBuffer,DWORD xLength) //从串口缓冲区中读入指定数量的字符,返回读取的字节个数
{
	DWORD tmdw = 0;
	if(gmCSerialComm)
	{
		tmdw = gmCSerialComm->ReadComm(xBuffer,xLength);
	}
	return tmdw;
}
extern "C" CAOSERIALCOMM10_API DWORD SerialComm_WriteComm(BYTE* xBuffer,DWORD xLength) //把指定数量的字符(字节)从串口中输出,0-失败,1-成功
{
	BOOL tmb = FALSE;
	DWORD tmdwRes = 0;
	if(gmCSerialComm)
	{
		tmb = gmCSerialComm->WriteComm(xBuffer,xLength);
	}
	if(tmb)
	{
		tmdwRes = 1;//成功
	}
	return tmdwRes;
}



⌨️ 快捷键说明

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