📄 kdcardctl.h
字号:
#if !defined(AFX_KDCARDCTL_H__2EFA5E93_1D61_40FB_8B9C_B0E956DA6112__INCLUDED_)
#define AFX_KDCARDCTL_H__2EFA5E93_1D61_40FB_8B9C_B0E956DA6112__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// KDCARDCtl.h : Declaration of the CKDCARDCtrl ActiveX Control class.
/////////////////////////////////////////////////////////////////////////////
// CKDCARDCtrl : See KDCARDCtl.cpp for implementation.
#include "deviceinfo.h"
class CMyWindow;
class CKDCARDCtrl : public COleControl
{
DECLARE_DYNCREATE(CKDCARDCtrl)
// Constructor
public:
CKDCARDCtrl();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CKDCARDCtrl)
public:
virtual void OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
virtual void DoPropExchange(CPropExchange* pPX);
virtual void OnResetState();
virtual DWORD GetControlFlags();
//}}AFX_VIRTUAL
// Implementation
protected:
~CKDCARDCtrl();
DECLARE_OLECREATE_EX(CKDCARDCtrl) // Class factory and guid
DECLARE_OLETYPELIB(CKDCARDCtrl) // GetTypeInfo
DECLARE_PROPPAGEIDS(CKDCARDCtrl) // Property page IDs
DECLARE_OLECTLTYPE(CKDCARDCtrl) // Type name and misc status
// Message maps
//{{AFX_MSG(CKDCARDCtrl)
// NOTE - ClassWizard will add and remove member functions here.
// DO NOT EDIT what you see in these blocks of generated code !
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
// Dispatch maps
//{{AFX_DISPATCH(CKDCARDCtrl)
afx_msg short GetDeviceStatus();
afx_msg void SetDeviceStatus(short nNewValue);
afx_msg short GetExtPortKD6006();
afx_msg void SetExtPortKD6006(short nNewValue);
afx_msg short GetExtPortKDE();
afx_msg void SetExtPortKDE(short nNewValue);
afx_msg short GetSerialPortKD6006();
afx_msg void SetSerialPortKD6006(short nNewValue);
afx_msg short GetSerialPortKDE();
afx_msg void SetSerialPortKDE(short nNewValue);
afx_msg BSTR GetTrack2();
afx_msg void SetTrack2(LPCTSTR lpszNewValue);
afx_msg BSTR GetTrack3();
afx_msg void SetTrack3(LPCTSTR lpszNewValue);
afx_msg short CancelCheckCard();
afx_msg short CheckCardAtGate(short gTimeOut);
afx_msg short CloseDevice();
afx_msg short EjectCardKDE();
afx_msg short GetPortFromIni();
afx_msg short SendICC(LPCTSTR pchSendBuf, LPCTSTR pchRcvBuf, LPCTSTR pchICSW);
afx_msg short TakeBackCard();
afx_msg short WaittingCard(short Mode);
afx_msg short OpenKD6006Com();
afx_msg short OpenKDECom();
//}}AFX_DISPATCH
DECLARE_DISPATCH_MAP()
// Event maps
//{{AFX_EVENT(CKDCARDCtrl)
void FireCardDataComming(short DeviceStatus)
{FireEvent(eventidCardDataComming,EVENT_PARAM(VTS_I2), DeviceStatus);}
void FireTakeCardComming()
{FireEvent(eventidTakeCardComming,EVENT_PARAM(VTS_NONE));}
//}}AFX_EVENT
DECLARE_EVENT_MAP()
// Dispatch and event IDs
public:
HWND hWndMsg;
char mThreadRunning;
char mThreadCheckRun;
short TimeOut;
void FireClassEvent();
void FireTakeEvent();
CDeviceInfo * pCom;
int ICFlag;
HANDLE hKillThread;
HANDLE hFinishThread;
int FinishThreadFlag;
enum {
//{{AFX_DISP_ID(CKDCARDCtrl)
dispidDeviceStatus = 1L,
dispidExtPortKD6006 = 2L,
dispidExtPortKDE = 3L,
dispidSerialPortKD6006 = 4L,
dispidSerialPortKDE = 5L,
dispidTrack2 = 6L,
dispidTrack3 = 7L,
dispidCancelCheckCard = 8L,
dispidCheckCardAtGate = 9L,
dispidCloseDevice = 10L,
dispidEjectCardKDE = 11L,
dispidGetPortFromIni = 12L,
dispidSendICC = 13L,
dispidTakeBackCard = 14L,
dispidWaittingCard = 15L,
dispidOpenKD6006Com = 16L,
dispidOpenKDECom = 17L,
eventidCardDataComming = 1L,
eventidTakeCardComming = 2L,
//}}AFX_DISP_ID
};
private:
char mDeviceCloseing;
CMyWindow * pWnd;
HANDLE threadHandle;
HANDLE threadCheck;
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_KDCARDCTL_H__2EFA5E93_1D61_40FB_8B9C_B0E956DA6112__INCLUDED)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -