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

📄 cport.hpp

📁 TComPort 4.0 delphi中com免DLL控件
💻 HPP
📖 第 1 页 / 共 3 页
字号:
	bool FInputCountNotSupported;
	TComThread* FEventThread;
	bool FThreadCreated;
	unsigned FHandle;
	unsigned FWindow;
	int FUpdateCount;
	Classes::TList* FLinks;
	bool FTriggersOnRxChar;
	Classes::TThreadPriority FEventThreadPriority;
	bool FHasLink;
	bool FConnected;
	Cporttypes::TBaudRate FBaudRate;
	int FCustomBaudRate;
	AnsiString FPort;
	Cporttypes::TStopBits FStopBits;
	Cporttypes::TDataBits FDataBits;
	bool FDiscardNull;
	char FEventChar;
	Cporttypes::TComEvents FEvents;
	TComBuffer* FBuffer;
	TComParity* FParity;
	TComTimeouts* FTimeouts;
	TComFlowControl* FFlowControl;
	Cporttypes::TSyncMethod FSyncMethod;
	Cporttypes::TStoredProps FStoredProps;
	Cporttypes::TRxCharEvent FOnRxChar;
	Cporttypes::TRxBufEvent FOnRxBuf;
	Classes::TNotifyEvent FOnTxEmpty;
	Classes::TNotifyEvent FOnBreak;
	Classes::TNotifyEvent FOnRing;
	Cporttypes::TComSignalEvent FOnCTSChange;
	Cporttypes::TComSignalEvent FOnDSRChange;
	Cporttypes::TComSignalEvent FOnRLSDChange;
	Cporttypes::TComErrorEvent FOnError;
	Classes::TNotifyEvent FOnRxFlag;
	Classes::TNotifyEvent FOnAfterOpen;
	Classes::TNotifyEvent FOnAfterClose;
	Classes::TNotifyEvent FOnBeforeOpen;
	Classes::TNotifyEvent FOnBeforeClose;
	Classes::TNotifyEvent FOnRx80Full;
	bool FReadAsyncExceptionsEnabled;
	int FReadAsyncErrorCount;
	unsigned FReadAsyncLastError;
	int FSyncWriteErrors;
	bool FOverlapped;
	bool __fastcall GetTriggersOnRxChar(void);
	void __fastcall SetTriggersOnRxChar(const bool Value);
	void __fastcall SetConnected(const bool Value);
	void __fastcall SetBaudRate(const Cporttypes::TBaudRate Value);
	void __fastcall SetCustomBaudRate(const int Value);
	void __fastcall SetPort(const AnsiString Value);
	void __fastcall SetStopBits(const Cporttypes::TStopBits Value);
	void __fastcall SetDataBits(const Cporttypes::TDataBits Value);
	void __fastcall SetDiscardNull(const bool Value);
	void __fastcall SetEventChar(const char Value);
	void __fastcall SetSyncMethod(const Cporttypes::TSyncMethod Value);
	void __fastcall SetEventThreadPriority(const Classes::TThreadPriority Value);
	void __fastcall SetParity(const TComParity* Value);
	void __fastcall SetTimeouts(const TComTimeouts* Value);
	void __fastcall SetBuffer(const TComBuffer* Value);
	void __fastcall SetFlowControl(const TComFlowControl* Value);
	bool __fastcall HasLink(void);
	void __fastcall TxNotifyLink(const char * Buffer, int Count);
	void __fastcall NotifyLink(Cporttypes::TComLinkEvent FLinkEvent);
	void __fastcall SendSignalToLink(Cporttypes::TComLinkEvent Signal, bool OnOff);
	void __fastcall CheckSignals(bool Open);
	void __fastcall WindowMethod(Messages::TMessage &Message);
	void __fastcall CallAfterOpen(void);
	void __fastcall CallAfterClose(void);
	void __fastcall CallBeforeOpen(void);
	void __fastcall CallBeforeClose(void);
	void __fastcall CallRxChar(void);
	void __fastcall CallTxEmpty(void);
	void __fastcall CallBreak(void);
	void __fastcall CallRing(void);
	void __fastcall CallRxFlag(void);
	void __fastcall CallCTSChange(void);
	void __fastcall CallDSRChange(void);
	void __fastcall CallError(void);
	void __fastcall CallRLSDChange(void);
	void __fastcall CallRx80Full(void);
	void __fastcall SetOverlapped(const bool Value);
	
protected:
	virtual void __fastcall Loaded(void);
	DYNAMIC void __fastcall DoAfterClose(void);
	DYNAMIC void __fastcall DoAfterOpen(void);
	DYNAMIC void __fastcall DoBeforeClose(void);
	DYNAMIC void __fastcall DoBeforeOpen(void);
	DYNAMIC void __fastcall DoRxChar(int Count);
	DYNAMIC void __fastcall DoRxBuf(const char * Buffer, int Count);
	DYNAMIC void __fastcall DoTxEmpty(void);
	DYNAMIC void __fastcall DoBreak(void);
	DYNAMIC void __fastcall DoRing(void);
	DYNAMIC void __fastcall DoRxFlag(void);
	DYNAMIC void __fastcall DoCTSChange(bool OnOff);
	DYNAMIC void __fastcall DoDSRChange(bool OnOff);
	DYNAMIC void __fastcall DoError(Cporttypes::TComErrors Errors);
	DYNAMIC void __fastcall DoRLSDChange(bool OnOff);
	DYNAMIC void __fastcall DoRx80Full(void);
	virtual void __fastcall StoreRegistry(Registry::TRegistry* Reg);
	virtual void __fastcall StoreIniFile(Inifiles::TIniFile* IniFile);
	virtual void __fastcall LoadRegistry(Registry::TRegistry* Reg);
	virtual void __fastcall LoadIniFile(Inifiles::TIniFile* IniFile);
	virtual void __fastcall CreateHandle(void);
	virtual void __fastcall DestroyHandle(void);
	DYNAMIC void __fastcall ApplyDCB(void);
	DYNAMIC void __fastcall ApplyTimeouts(void);
	DYNAMIC void __fastcall ApplyBuffer(void);
	virtual void __fastcall SetupComPort(void);
	int __fastcall _WriteStrWrapper(const AnsiString Str);
	int __fastcall _WriteAsyncWrapper(const char * Buffer, int Count);
	bool __fastcall _SyncRead(char * Data, unsigned &aCount);
	bool __fastcall _SyncWrite(char * Data, unsigned size);
	
public:
	__fastcall virtual TCustomComPort(Classes::TComponent* AOwner);
	__fastcall virtual ~TCustomComPort(void);
	void __fastcall BeginUpdate(void);
	void __fastcall EndUpdate(void);
	void __fastcall StoreSettings(Cporttypes::TStoreType StoreType, AnsiString StoreTo);
	void __fastcall LoadSettings(Cporttypes::TStoreType StoreType, AnsiString LoadFrom);
	void __fastcall Open(void);
	void __fastcall Close(void);
	void __fastcall ShowSetupDialog(void);
	int __fastcall InputCount(void);
	int __fastcall OutputCount(void);
	Cporttypes::TComSignals __fastcall Signals(void);
	Windows::TComStateFlags __fastcall StateFlags(void);
	void __fastcall SetDTR(bool OnOff);
	void __fastcall SetRTS(bool OnOff);
	void __fastcall SetXonXoff(bool OnOff);
	void __fastcall SetBreak(bool OnOff);
	void __fastcall ClearBuffer(bool Input, bool Output);
	Cporttypes::TComErrors __fastcall LastErrors(void);
	int __fastcall Write(const char * Buffer, int Count);
	int __fastcall WriteStr(const AnsiString Str);
	int __fastcall Read(char * Buffer, int Count);
	int __fastcall ReadStr(AnsiString &Str, int Count);
	int __fastcall WriteAsync(const char * Buffer, int Count, Cporttypes::PCPortAsync &AsyncPtr);
	int __fastcall WriteStrAsync(const AnsiString Str, Cporttypes::PCPortAsync &AsyncPtr);
	int __fastcall ReadAsync(char * &Buffer, int Count, Cporttypes::PCPortAsync &AsyncPtr);
	int __fastcall ReadStrAsync(AnsiString &Str, int Count, Cporttypes::PCPortAsync &AsyncPtr);
	int __fastcall WaitForAsync(Cporttypes::PCPortAsync &AsyncPtr);
	bool __fastcall IsAsyncCompleted(Cporttypes::PCPortAsync AsyncPtr);
	void __fastcall WaitForEvent(Cporttypes::TComEvents &Events, unsigned StopEvent, int Timeout);
	void __fastcall AbortAllAsync(void);
	void __fastcall TransmitChar(char Ch);
	void __fastcall RegisterLink(TComLink* AComLink);
	void __fastcall UnRegisterLink(TComLink* AComLink);
	__property unsigned Handle = {read=FHandle, nodefault};
	__property bool TriggersOnRxChar = {read=GetTriggersOnRxChar, write=SetTriggersOnRxChar, nodefault};
	__property Classes::TThreadPriority EventThreadPriority = {read=FEventThreadPriority, write=SetEventThreadPriority, nodefault};
	__property Cporttypes::TStoredProps StoredProps = {read=FStoredProps, write=FStoredProps, nodefault};
	__property bool Connected = {read=FConnected, write=SetConnected, default=0};
	__property Cporttypes::TBaudRate BaudRate = {read=FBaudRate, write=SetBaudRate, nodefault};
	__property int CustomBaudRate = {read=FCustomBaudRate, write=SetCustomBaudRate, nodefault};
	__property AnsiString Port = {read=FPort, write=SetPort};
	__property TComParity* Parity = {read=FParity, write=SetParity};
	__property Cporttypes::TStopBits StopBits = {read=FStopBits, write=SetStopBits, nodefault};
	__property Cporttypes::TDataBits DataBits = {read=FDataBits, write=SetDataBits, nodefault};
	__property bool DiscardNull = {read=FDiscardNull, write=SetDiscardNull, default=0};
	__property char EventChar = {read=FEventChar, write=SetEventChar, default=0};
	__property Cporttypes::TComEvents Events = {read=FEvents, write=FEvents, nodefault};
	__property TComBuffer* Buffer = {read=FBuffer, write=SetBuffer};
	__property TComFlowControl* FlowControl = {read=FFlowControl, write=SetFlowControl};
	__property TComTimeouts* Timeouts = {read=FTimeouts, write=SetTimeouts};
	__property Cporttypes::TSyncMethod SyncMethod = {read=FSyncMethod, write=SetSyncMethod, default=0};
	__property bool InputCountNotSupported = {read=FInputCountNotSupported, write=FInputCountNotSupported, nodefault};
	__property Classes::TNotifyEvent OnAfterOpen = {read=FOnAfterOpen, write=FOnAfterOpen};
	__property Classes::TNotifyEvent OnAfterClose = {read=FOnAfterClose, write=FOnAfterClose};
	__property Classes::TNotifyEvent OnBeforeOpen = {read=FOnBeforeOpen, write=FOnBeforeOpen};
	__property Classes::TNotifyEvent OnBeforeClose = {read=FOnBeforeClose, write=FOnBeforeClose};
	__property Cporttypes::TRxCharEvent OnRxChar = {read=FOnRxChar, write=FOnRxChar};
	__property Cporttypes::TRxBufEvent OnRxBuf = {read=FOnRxBuf, write=FOnRxBuf};
	__property Classes::TNotifyEvent OnTxEmpty = {read=FOnTxEmpty, write=FOnTxEmpty};
	__property Classes::TNotifyEvent OnBreak = {read=FOnBreak, write=FOnBreak};
	__property Classes::TNotifyEvent OnRing = {read=FOnRing, write=FOnRing};
	__property Cporttypes::TComSignalEvent OnCTSChange = {read=FOnCTSChange, write=FOnCTSChange};
	__property Cporttypes::TComSignalEvent OnDSRChange = {read=FOnDSRChange, write=FOnDSRChange};
	__property Cporttypes::TComSignalEvent OnRLSDChange = {read=FOnRLSDChange, write=FOnRLSDChange};
	__property Classes::TNotifyEvent OnRxFlag = {read=FOnRxFlag, write=FOnRxFlag};
	__property Cporttypes::TComErrorEvent OnError = {read=FOnError, write=FOnError};
	__property Classes::TNotifyEvent OnRx80Full = {read=FOnRx80Full, write=FOnRx80Full};
	__property bool ReadAsyncExceptionsEnabled = {read=FReadAsyncExceptionsEnabled, write=FReadAsyncExceptionsEnabled, nodefault};
	__property int ReadAsyncErrorCount = {read=FReadAsyncErrorCount, write=FReadAsyncErrorCount, nodefault};
	__property unsigned ReadAsyncLastError = {read=FReadAsyncLastError, write=FReadAsyncLastError, nodefault};
	__property bool Overlapped = {read=FOverlapped, write=SetOverlapped, nodefault};
	__property int SyncWriteErrors = {read=FSyncWriteErrors, nodefault};
};


class PASCALIMPLEMENTATION TComThread : public Classes::TThread 
{
	typedef Classes::TThread inherited;
	
private:
	TCustomComPort* FComPort;
	unsigned FStopEvent;
	Cporttypes::TComEvents FEvents;
	
protected:
	void __fastcall DispatchComMsg(void);
	void __fastcall DoEvents(void);
	virtual void __fastcall Execute(void);
	void __fastcall SendEvents(void);
	void __fastcall Stop(void);
	
public:
	__fastcall TComThread(TCustomComPort* AComPort);
	__fastcall virtual ~TComThread(void);
};


class DELPHICLASS TComPort;
class PASCALIMPLEMENTATION TComPort : public TCustomComPort 
{
	typedef TCustomComPort inherited;
	
__published:
	__property Connected  = {default=0};
	__property BaudRate ;
	__property Port ;
	__property Parity ;
	__property StopBits ;
	__property DataBits ;
	__property DiscardNull  = {default=0};
	__property EventChar  = {default=0};
	__property Events ;
	__property Buffer ;
	__property FlowControl ;
	__property Timeouts ;
	__property SyncMethod  = {default=0};
	__property OnAfterOpen ;
	__property OnAfterClose ;
	__property OnBeforeOpen ;
	__property OnBeforeClose ;
	__property OnRxChar ;
	__property OnRxBuf ;
	__property OnTxEmpty ;
	__property OnBreak ;
	__property OnRing ;
	__property OnCTSChange ;

⌨️ 快捷键说明

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