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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? readdll.cpp

?? RFID 讀卡演示程序
?? CPP
字號:
// ReadDLL.cpp : Defines the entry point for the DLL application.
//

#include "stdafx.h"
#include "ReadDLL.h"
#include "ISO15693.h"
#include   <iostream.h> 
HANDLE m_hCom;

BOOL APIENTRY DllMain( HANDLE hModule, 
					  DWORD  ul_reason_for_call, 
					  LPVOID lpReserved
					  )
{
    switch (ul_reason_for_call)
	{
	case DLL_PROCESS_ATTACH:
	//	m_count=0;
		//printf("\nprocess attach of dll");
		break;
	case DLL_THREAD_ATTACH:
		//printf("\nthread attach of dll");
		break;
	case DLL_THREAD_DETACH:
	//	printf("\nthread detach of dll");
		break;
	case DLL_PROCESS_DETACH:
       //  m_count=0;
	//	printf("\nprocess detach of dll");
		break;
    }
    return TRUE;
}


int _stdcall SetCom(const char *m_sPort, int BaudRate, int Databit, char *parity, char *stopbit) 
{ 
  COMMTIMEOUTS TimeOuts;                ///串口輸出時間 超時設置 
  DCB dcb;                       ///與端口匹配的設備   
  m_hCom=CreateFile(m_sPort, GENERIC_READ | GENERIC_WRITE, 0, NULL, 
    OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, 
    NULL); // 以重疊方式打開串口 
   if(m_hCom==INVALID_HANDLE_VALUE) 
  {  
    //AfxMessageBox("設置串口部分,串口打開失敗");  /////重疊方式 異步通信(INVALID_HANDLE_VALUE)函數失敗。 
    return 0x01; 
  }   
  SetupComm(m_hCom,MAXBLOCK,MAXBLOCK);       //設置緩沖區 
  memset(&TimeOuts,0,sizeof(TimeOuts));   
  TimeOuts.ReadIntervalTimeout=MAXDWORD;      // 把間隔超時設為最大,把總超時設為0將導致ReadFile立即返回并完成操作 
  TimeOuts.ReadTotalTimeoutMultiplier=0;      //讀時間系數 
  TimeOuts.ReadTotalTimeoutConstant=0;      //讀時間常量  
  TimeOuts.WriteTotalTimeoutMultiplier=50;    //總超時=時間系數*要求讀/寫的字符數+時間常量 
  TimeOuts.WriteTotalTimeoutConstant=2000;    //設置寫超時以指定WriteComm成員函數中的                        
  SetCommTimeouts(m_hCom, &TimeOuts);      //GetOverlappedResult函數的等待時間*/ 
 

	if(!GetCommState(m_hCom, &dcb))        ////串口打開方式、端口、波特率 與端口匹配的設備 
  { 
   // AfxMessageBox("GetCommState Failed"); 
    return 0x02; 
  } 
   
  dcb.fParity=TRUE;             //允許奇偶校驗     
  dcb.fBinary=TRUE; 
  if(parity=="NONE") 
    dcb.Parity=NOPARITY; 
  if(parity=="ODD") 
    dcb.Parity=ODDPARITY; 
  if(parity=="EVEN") 
    dcb.Parity=EVENPARITY; 
  if(stopbit=="1")//設置波特率 
    dcb.StopBits=ONESTOPBIT; 
  //if(stopbit=="0")//設置波特率 
  //  dcb.StopBits=NONESTOPBIT; 
  if(stopbit=="2")//設置波特率 
    dcb.StopBits=TWOSTOPBITS;               
  BOOL m_bEcho=FALSE;            /// 
  int m_nFlowCtrl=0; 
  BOOL m_bNewLine=FALSE;           /// 
  dcb.BaudRate=BaudRate;           // 波特率 
  dcb.ByteSize=Databit;           // 每字節位數   
  // 硬件流控制設置 
  dcb.fOutxCtsFlow=m_nFlowCtrl==1; 
  dcb.fRtsControl=m_nFlowCtrl==1  ?RTS_CONTROL_HANDSHAKE:RTS_CONTROL_ENABLE;   
  // XON/XOFF流控制設置(軟件流控制!) 
  dcb.fInX=dcb.fOutX=m_nFlowCtrl==2; 
  dcb.XonChar=XON; 
  dcb.XoffChar=XOFF; 
  dcb.XonLim=50; 
  dcb.XoffLim=50;   
  if(SetCommState(m_hCom, &dcb))   
    
  {	  
	  return 0;     ////com的通訊口設置   
   


  }
  else 
  { 
    //AfxMessageBox("串口已打開,設置失敗"); 
    return 0x03; 
  } 

} 

int _stdcall ReadCom(BYTE inbuff[], DWORD &nBytesRead, int ReadTime) 
{ 
  DWORD lrc;                 ///縱向冗余校驗 
  DWORD endtime;              /////////jiesuo 
  static OVERLAPPED ol; 
  int ReadNumber=0;   
  int numCount=0 ;               //控制讀取的數目 
  DWORD dwErrorMask,nToRead;  
  COMSTAT comstat;   
  ol.Offset=0;              ///相對文件開始的字節偏移量 
  ol.OffsetHigh=0;            ///開始傳送數據的字節偏移量的高位字,管道和通信時調用進程可忽略。 
  ol.hEvent=NULL;             ///標識事件,數據傳送完成時設為信號狀態 
  ol.hEvent=CreateEvent(NULL,TRUE,FALSE,NULL);   
  endtime=GetTickCount()+ReadTime;//GetTickCount()取回系統開始至此所用的時間(毫秒) 
 // for(int i=0;i<2000;i++) 
 //   inbuff[i]=0;   
  Sleep(ReadTime); 
  ClearCommError(m_hCom,&dwErrorMask,&comstat); 
  nToRead=min(2000,comstat.cbInQue);  
  if(int(nToRead)<2) 
    goto Loop; 
  if(!ReadFile(m_hCom,inbuff,nToRead,&nBytesRead,&ol)) 
  {   
    if((lrc=GetLastError())==ERROR_IO_PENDING) 
    { 
      /////////////////// 
      endtime=GetTickCount()+ReadTime;//GetTickCount()取回系統開始至此所用的時間(毫秒) 
      while(!GetOverlappedResult(m_hCom,&ol,&nBytesRead,FALSE))//該函數取回重疊操作的結果 
      { 
        if(GetTickCount()>endtime) 
          break; 
      }   
    }     
  } 
  return 1;   
Loop: return 0; 
} 


int _stdcall WriteCom(BYTE Outbuff[], int size) 
{ 
  DWORD nBytesWrite,endtime,lrc; 
  static OVERLAPPED ol; 
  DWORD dwErrorMask,dwError; 
  COMSTAT comstat; 
  ol.hEvent=CreateEvent(NULL,TRUE,FALSE,NULL); 
  ol.Offset=0;        
  ol.OffsetHigh=0; 
  ol.hEvent=NULL;        ///標識事件,數據傳送完成時,將它設為信號狀態 
  ClearCommError(m_hCom,&dwErrorMask,&comstat); 
  if(!WriteFile(m_hCom,Outbuff,size,&nBytesWrite,&ol)) 
  { 
    if((lrc=GetLastError())==ERROR_IO_PENDING) 
    { 
      endtime=GetTickCount()+1000; 
      while(!GetOverlappedResult(m_hCom,&ol,&nBytesWrite,FALSE)) 
      {  
        dwError=GetLastError(); 
        if(GetTickCount()>endtime) 
        {   
          //AfxMessageBox("寫串口時間過長,目前串口發送緩沖區中的數據數目為空"); 
          break; 
        } 
        if(dwError=ERROR_IO_INCOMPLETE) 
          continue;     //未完全讀完時的正常返回結果 
        else 
        { 
          //  發生錯誤,嘗試恢復! 
          ClearCommError(m_hCom,&dwError,&comstat); 
          break; 
        } 
      } 
    }    
  }   
  FlushFileBuffers(m_hCom); 
  PurgeComm(m_hCom,PURGE_TXCLEAR);         
 
  return 1; 
} 

int _stdcall CloseCom()
{
     if(m_hCom==INVALID_HANDLE_VALUE) 
  {  
    //AfxMessageBox("設置串口部分,串口打開失敗");  /////重疊方式 異步通信(INVALID_HANDLE_VALUE)函數失敗。 

     return 0x01; 
  }   
  else
  {
  
        if(CloseHandle(m_hCom)==true)
	  {
	     return 0;
	  }
	  else
	  {
	     return 3;
	  }
 
  }

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线播放国产精品二区一二区四区 | 五月婷婷另类国产| 国产自产高清不卡| 欧美性感一类影片在线播放| 精品国内二区三区| 亚洲第一久久影院| 不卡一卡二卡三乱码免费网站| 欧美精选在线播放| 亚洲视频一区在线观看| 国产毛片一区二区| 91精品国产91综合久久蜜臀| ●精品国产综合乱码久久久久| 久久国产麻豆精品| 欧美日韩高清一区| 亚洲欧美日韩国产成人精品影院| 韩国女主播成人在线观看| 欧美裸体一区二区三区| 亚洲精品va在线观看| 成人网在线免费视频| 国产精品乱人伦| 蓝色福利精品导航| 在线综合视频播放| 亚洲www啪成人一区二区麻豆| av男人天堂一区| 国产精品沙发午睡系列990531| 韩国精品主播一区二区在线观看 | 亚洲线精品一区二区三区八戒| 国产成人免费在线观看不卡| 精品不卡在线视频| 国产揄拍国内精品对白| 精品99久久久久久| 国产真实乱对白精彩久久| 欧美不卡在线视频| 国产精品66部| 中文字幕乱码一区二区免费| 成人福利视频在线看| 中文字幕在线不卡国产视频| av在线不卡免费看| 一区二区不卡在线播放| 欧美日韩精品三区| 日本成人在线一区| 久久蜜桃一区二区| 成人高清伦理免费影院在线观看| 亚洲特级片在线| 在线观看日韩电影| 日本午夜精品一区二区三区电影| 欧美一二三四区在线| 麻豆精品一区二区av白丝在线| 精品久久国产97色综合| 成人免费看黄yyy456| 亚洲综合一区二区精品导航| 日韩限制级电影在线观看| 久久精品免费看| 国产欧美日韩在线| 欧美中文字幕一区二区三区| 看国产成人h片视频| 日本一区二区免费在线观看视频| www.成人网.com| 五月综合激情网| 国产欧美中文在线| 欧美日韩一级二级三级| 国产精品系列在线观看| 亚洲另类在线视频| 日韩欧美精品在线| www.亚洲人| 日韩va欧美va亚洲va久久| 日本一区二区三区在线不卡| 欧洲一区二区三区在线| 国内国产精品久久| 悠悠色在线精品| 久久影视一区二区| 视频一区视频二区中文字幕| 精品日韩一区二区三区| 91免费在线视频观看| 麻豆精品视频在线| 亚洲日本成人在线观看| 欧美变态口味重另类| 色八戒一区二区三区| 国产一区欧美一区| 午夜视频在线观看一区二区| 国产蜜臀97一区二区三区 | 一本久久a久久精品亚洲| 日产精品久久久久久久性色| 亚洲视频在线观看一区| 久久久不卡网国产精品二区| 欧美日韩夫妻久久| 在线免费视频一区二区| 丁香婷婷综合激情五月色| 秋霞电影一区二区| 亚洲国产精品麻豆| 亚洲女同ⅹxx女同tv| 国产视频一区二区在线| 日韩欧美在线影院| 欧美日韩成人高清| 91国模大尺度私拍在线视频| 成人做爰69片免费看网站| 激情欧美日韩一区二区| 日韩电影在线观看一区| 亚洲高清免费在线| 一区二区三区日韩| 亚洲人成7777| 国产精品不卡一区| 中文字幕第一区二区| 日本一区二区三级电影在线观看| 精品国产第一区二区三区观看体验| 欧美精品99久久久**| 欧美日韩在线播放一区| 欧美亚洲国产一区二区三区va| 91在线播放网址| www.日本不卡| 91视频免费观看| fc2成人免费人成在线观看播放| 国产91精品精华液一区二区三区 | 国产精品热久久久久夜色精品三区 | 国产欧美一区二区在线| 久久亚洲精品小早川怜子| 精品国产亚洲一区二区三区在线观看| 欧美肥妇毛茸茸| 91精品国产免费| 日韩三级视频中文字幕| 精品欧美乱码久久久久久 | 国产xxx精品视频大全| 国精品**一区二区三区在线蜜桃| 久久成人免费网| 国产精品一区二区视频| 福利91精品一区二区三区| 成人一区二区三区视频| 一本久道中文字幕精品亚洲嫩| 欧亚一区二区三区| 欧美另类久久久品| 精品久久久久久久久久久久包黑料 | 国产亚洲美州欧州综合国| 国产人久久人人人人爽| 成人免费在线观看入口| 亚洲国产成人av网| 久久精品国产免费| 成人永久免费视频| 在线观看视频一区| 欧美v日韩v国产v| 国产精品国产自产拍高清av王其| 亚洲一线二线三线视频| 蜜桃在线一区二区三区| 顶级嫩模精品视频在线看| 色呦呦日韩精品| 日韩欧美在线一区二区三区| 国产精品毛片a∨一区二区三区| 亚洲香蕉伊在人在线观| 国产一区二区中文字幕| 91一区在线观看| 日韩欧美国产麻豆| 自拍偷拍亚洲激情| 激情综合色综合久久综合| 色综合天天做天天爱| 成人午夜视频网站| 欧美日韩mp4| 国产精品第四页| 青青草国产精品亚洲专区无| 成年人国产精品| 欧美一区二区日韩一区二区| 中文字幕电影一区| 卡一卡二国产精品| 在线观看成人小视频| 国产欧美一区在线| 麻豆精品国产传媒mv男同| 色美美综合视频| 久久久噜噜噜久噜久久综合| 一卡二卡欧美日韩| 成人网页在线观看| 26uuu欧美日本| 日韩国产欧美三级| 在线观看一区日韩| 亚洲手机成人高清视频| 国产福利不卡视频| 日韩精品一区二区三区蜜臀| 亚洲综合一区二区| 99在线精品视频| 国产视频一区在线观看| 精品一区二区三区在线播放视频| 欧美性生交片4| 亚洲靠逼com| 91一区一区三区| 国产精品久久久久久久久图文区| 国产一区二区在线观看免费 | 久久精品无码一区二区三区| 奇米777欧美一区二区| 欧美精品一卡两卡| 一区二区三区在线看| 91小视频在线免费看| 国产精品女上位| 粉嫩aⅴ一区二区三区四区五区| 精品久久久网站| 久久精品免费观看| 日韩欧美激情四射| 久久国产精品色婷婷| 日韩小视频在线观看专区| 免费在线观看精品| 亚洲精品在线观| 国产制服丝袜一区| 欧美国产一区视频在线观看| 国产高清久久久|