亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? serial.cpp

?? 一個(gè)密碼小鍵盤的封裝的動(dòng)態(tài)庫
?? CPP
字號(hào):
// Serial.cpp: implementation of the CSerial class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "Serial.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

int RasEnumComDevices( COMDEVINFO *pComDevInfo,int *pnMaxSize,int *pnItem )
{
	HKEY hKEY;
	DWORD nStyle=REG_SZ;
	LPCTSTR path = "SOFTWARE\\Microsoft\\Ras\\Tapi Devices\\Unimodem";
	int nRet,nItem = 0,nSize,nPort;
	char address[256],name[1024],temp[MAX_DEVICE_NAME_LENGTH],*p1,*p2;
	nRet = ::RegOpenKeyEx( HKEY_LOCAL_MACHINE,path,0,KEY_READ,&hKEY );
	if ( nRet == ERROR_SUCCESS )
	{
		memset( address,0,sizeof(address) );
		nSize = sizeof( address );
		nRet = ::RegQueryValueEx( hKEY,"Media Type",NULL,&nStyle,(unsigned char *)temp,(unsigned long *)&nSize);
		if ( stricmp( temp,"modem" ) == 0 )
		{
			nStyle = REG_MULTI_SZ;
			nSize = sizeof( address );
			nRet = ::RegQueryValueEx( hKEY,"Address",NULL,&nStyle,(unsigned char *)address,(unsigned long *)&nSize);
			if ( nRet == ERROR_SUCCESS )
			{
				nSize = sizeof(name);
				memset( name,0,sizeof(name) );
				::RegQueryValueEx( hKEY,"Friendly Name",NULL,&nStyle,(unsigned char *)name,(unsigned long *)&nSize);
				p1 = address;
				p2 = name;
				nSize = 0;
				nItem = 0;
				while ( *p1 )
				{
					if ( strnicmp( p1,"COM",3 ) == 0 )
					{
						nPort = atoi( p1+3 );
						if ( nPort > 0 )
						{
							nSize += sizeof( COMDEVINFO );
							if ( ( pComDevInfo != NULL ) && ( pnMaxSize == NULL || nSize <= *pnMaxSize ) )
							{
								pComDevInfo[nItem].nPort = nPort;
								memset( temp,0,sizeof(temp) );
								if ( p2 ) strncpy( temp,p2,sizeof(temp)-1 );
								else sprintf( temp,"標(biāo)準(zhǔn)調(diào)制解調(diào)器 (COM%d)",nPort );
								strncpy( pComDevInfo[nItem].cMediaName,temp,MAX_DEVICE_NAME_LENGTH-1 );
							}
							nItem ++;
						}
					}
					p1 += strlen(p1)+1;
					p2 += strlen(p2)+1;
				}
				if ( pnMaxSize ) *pnMaxSize = nSize;
				if ( pnItem ) *pnItem = nItem;
			}
		}
	}
	return nRet;
}

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CSerial::CSerial()
{
	m_hComDev = ( HANDLE ) -1;
	m_bOpened = FALSE;
	m_nBaud = 9600;
	m_nPort = 1;
}

CSerial::~CSerial()
{
	Close();
}

BOOL CSerial::Close()
{
	if ( 	m_hComDev != ( HANDLE )-1 ) CloseHandle( m_hComDev );
	m_hComDev = ( HANDLE )-1;
	m_bOpened = FALSE;
	return TRUE;
}

BOOL CSerial::IsOpened()
{
	return m_bOpened;
}

BOOL CSerial::Open(int nPort, unsigned long nBaud)
{
   DCB dcb;
	BOOL bSet = TRUE;
   COMMTIMEOUTS CommTimeOuts;
	char temp[32];
	if ( m_hComDev != (HANDLE)-1 ) return TRUE;
   if ( nPort ) m_nPort = nPort;
	if ( nBaud ) m_nBaud = nBaud;
	m_bOpened = FALSE;
	sprintf( temp,"COM%d",m_nPort );
	m_hComDev = CreateFile( temp,GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL );
   if ( m_hComDev != ( HANDLE ) -1 )
	{
		bSet = SetupComm( m_hComDev,1024,1024 );
      if ( bSet ) bSet = GetCommState( m_hComDev,&dcb );
		if ( bSet )
		{
			dcb.fBinary  = 1;
			dcb.BaudRate = m_nBaud;
			dcb.ByteSize = DATABITS_8;
			dcb.Parity = NOPARITY;//0;
			dcb.StopBits = ONESTOPBIT;	//JKP521停止位為1 
			dcb.fParity = 0;
			dcb.fInX = 0;
			dcb.fOutX = 0;
			dcb.fOutxCtsFlow = 0;//1;
			dcb.fOutxDsrFlow = 0;//1;
			dcb.fDtrControl = DTR_CONTROL_HANDSHAKE;//DTR_CONTROL_ENABLE;
			dcb.fRtsControl = RTS_CONTROL_HANDSHAKE;//RTS_CONTROL_ENABLE;//
			dcb.fDsrSensitivity = 0;
			bSet = SetCommState( m_hComDev,&dcb );
		}
		if ( bSet )
		{
			CommTimeOuts.ReadIntervalTimeout = MAXDWORD;
			CommTimeOuts.ReadTotalTimeoutConstant = 0;
			CommTimeOuts.ReadTotalTimeoutMultiplier = 0;
			CommTimeOuts.WriteTotalTimeoutConstant = 1000;
			CommTimeOuts.WriteTotalTimeoutMultiplier = 0;
			bSet = SetCommTimeouts( m_hComDev,&CommTimeOuts );
		}
		if ( bSet ) m_bOpened = TRUE;
		else
		{
			CloseHandle( m_hComDev );
			m_hComDev = ( HANDLE )-1;
		}
   }
	return m_bOpened;
}

int CSerial::Read(char *pData, int nMaxCount)
{
	int nCount =-1;
	if ( m_bOpened )
	{
		nCount = 0;
		ReadFile( m_hComDev,pData,nMaxCount,(unsigned long *)&nCount,NULL );
	}
	return nCount;
}

int CSerial::Write(const char *pData, int nLength)
{
	int nCount =-1;
	if ( m_bOpened )
	{
		nCount = 0;
		if ( nLength <= 0 ) nLength = strlen( pData );
		WriteFile( m_hComDev, pData, nLength, (unsigned long *)&nCount,NULL );
		Sleep(10);
		if (nCount < 1)
			TRACE("\n Read Error=[%d]", GetLastError());
	}
	return nCount;
}

BOOL CSerial::Flush()
{
	if ( !m_bOpened ) return FALSE;
	return FlushFileBuffers( m_hComDev );
}

int CSerial::GetStatus()
{
	int nStatus = 0;
	if ( m_bOpened )
	{
		GetCommModemStatus( m_hComDev,(unsigned long *)&nStatus );
	}
	return nStatus;
}

HANDLE CSerial::GetHandle()
{
	return m_hComDev;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线不卡中文字幕| 成人综合激情网| 欧美精品乱码久久久久久按摩 | 精品美女一区二区| 蜜桃视频在线观看一区| 欧美va在线播放| 精品一区二区三区免费视频| 精品久久久久久久久久久久久久久久久| 美女视频黄频大全不卡视频在线播放| 欧美v日韩v国产v| 国产精品自在欧美一区| 国产亲近乱来精品视频| aaa亚洲精品一二三区| 亚洲男人的天堂av| 欧美精品少妇一区二区三区| 日本一不卡视频| 精品国产精品一区二区夜夜嗨| 国产在线精品一区二区不卡了 | 日韩欧美一卡二卡| 国产成人日日夜夜| 综合精品久久久| 日韩亚洲欧美高清| 成人福利视频在线| 五月婷婷激情综合| 337p日本欧洲亚洲大胆色噜噜| 高清视频一区二区| 亚洲一区欧美一区| 精品免费99久久| 色综合久久综合网97色综合| 亚洲成av人影院| 2023国产精华国产精品| 一本色道久久综合亚洲aⅴ蜜桃| 日本成人在线看| 国产精品久久久久精k8 | 欧美精品精品一区| 激情综合色综合久久综合| 日韩美女精品在线| 欧美mv日韩mv亚洲| 91丨九色丨黑人外教| 免费在线观看成人| 亚洲猫色日本管| 久久久国产午夜精品| 欧美午夜理伦三级在线观看| 国产suv一区二区三区88区| 亚洲一二三级电影| 国产网红主播福利一区二区| 欧美精品在线观看一区二区| 成人白浆超碰人人人人| 免费xxxx性欧美18vr| 亚洲免费观看视频| 中文一区一区三区高中清不卡| 欧美肥大bbwbbw高潮| 色综合天天综合网天天狠天天| 精品影院一区二区久久久| 亚洲综合色丁香婷婷六月图片| 国产片一区二区三区| 精品国产制服丝袜高跟| 欧美亚洲国产一区二区三区 | 自拍偷拍亚洲激情| 久久久久久久综合| 日韩欧美中文字幕公布| 欧美日韩亚洲综合| av网站免费线看精品| 国产成人综合网| 精东粉嫩av免费一区二区三区| 亚洲一二三四久久| 亚洲三级在线免费观看| 欧美国产精品v| 久久久久国产精品厨房| 欧美岛国在线观看| 欧美一区二区视频网站| 91丨porny丨首页| 99re这里只有精品6| 日韩理论在线观看| 国产欧美日韩在线观看| 26uuu久久综合| 国产精品久久网站| 精品福利二区三区| 日韩一区二区三区精品视频| 91麻豆精品国产综合久久久久久| 91久久精品国产91性色tv| 91麻豆swag| 色av一区二区| 欧美午夜精品久久久久久超碰| 欧美色偷偷大香| 欧美日韩免费视频| 91精品福利在线一区二区三区| 欧美色欧美亚洲另类二区| 欧美日韩在线播放| 在线成人免费观看| 欧美电影免费提供在线观看| 日韩欧美国产wwwww| 久久蜜臀精品av| 国产精品久久久久久久久久久免费看 | 欧美日韩专区在线| 欧美日韩一二三区| 日韩精品一区二区三区在线 | 日本不卡一二三| 久久99日本精品| 成人免费视频国产在线观看| 国产69精品久久99不卡| 91免费看视频| 欧美精品第1页| 久久香蕉国产线看观看99| 国产精品色一区二区三区| 中文字幕中文在线不卡住| 一区二区三区中文字幕电影| 五月婷婷激情综合网| 久久99精品久久只有精品| 懂色av中文字幕一区二区三区| 91麻豆文化传媒在线观看| 欧美老女人第四色| 久久精品一区二区三区av| 亚洲精品美腿丝袜| 男人的天堂久久精品| 国产另类ts人妖一区二区| 波多野洁衣一区| 欧美日韩大陆一区二区| 久久网站热最新地址| 一区二区三区免费看视频| 精品一区二区综合| 91国内精品野花午夜精品| 精品美女在线播放| 亚洲影视在线播放| 国产成人免费在线视频| 欧美男男青年gay1069videost| 尤物在线观看一区| 看国产成人h片视频| 色综合久久88色综合天天免费| 欧美成人精品二区三区99精品| 中文字幕一区二区三| 九九国产精品视频| 欧美自拍偷拍午夜视频| 久久精品亚洲乱码伦伦中文| 石原莉奈在线亚洲三区| 99国产精品久久久| 精品国免费一区二区三区| 亚洲香蕉伊在人在线观| 成人激情动漫在线观看| 欧美一级日韩一级| 亚洲视频在线观看一区| 国产一区二区三区av电影 | 久久99国产精品尤物| 91网站最新网址| 日韩欧美亚洲国产精品字幕久久久| 亚洲精品高清视频在线观看| 偷窥少妇高潮呻吟av久久免费| 99热在这里有精品免费| 久久网站最新地址| 日韩一区精品视频| 欧美人体做爰大胆视频| 中文幕一区二区三区久久蜜桃| 韩国在线一区二区| 9l国产精品久久久久麻豆| 精品国产91久久久久久久妲己| 日本不卡视频在线观看| 色94色欧美sute亚洲线路二| 国产农村妇女精品| 久久99国产精品麻豆| 日韩一二三区视频| 人妖欧美一区二区| 欧美精品第1页| 天天av天天翘天天综合网色鬼国产| av一区二区不卡| 国产性色一区二区| 国产一区中文字幕| 久久精品欧美一区二区三区麻豆| 久久精品噜噜噜成人av农村| 欧美综合视频在线观看| 一区二区日韩av| yourporn久久国产精品| 亚洲欧美综合网| 欧美aa在线视频| 91精品国产高清一区二区三区| 麻豆精品视频在线| 欧美一区二区三区四区在线观看| 一区二区三区精品久久久| 99久久er热在这里只有精品66| 亚洲精品久久7777| 色呦呦一区二区三区| 亚洲欧美激情视频在线观看一区二区三区| 成人美女视频在线看| 一区二区在线观看视频| 欧美中文字幕一二三区视频| 香蕉影视欧美成人| 91精品国产乱码| 国产不卡高清在线观看视频| 欧美日本韩国一区| 男男成人高潮片免费网站| 精品欧美乱码久久久久久| 韩国毛片一区二区三区| 久久亚洲综合av| 成人免费视频免费观看| 一区二区三区日韩精品| 欧美日韩小视频| 人人狠狠综合久久亚洲| 久久婷婷色综合| 成人黄色网址在线观看| 国产精品成人免费精品自在线观看| 91视频国产观看|