实例介绍
最完整的IOCP编程例子,从控件封装、通讯协议、上传下载、SQL查询到日志查看,都有完整实现。程序架构实现了:可纵向调整程序性能、控制协议开关、日志配置等一序列实现。
【实例截图】
【核心代码】
IOCPDemo
├── Bin
│ ├── borlndmm.dll
│ ├── FastMM_FullDebugMode.dll
│ ├── IOCPDemoCln.exe
│ ├── IOCPDemoSvr.exe
│ └── IOCPDemoSvr.ini
├── CleanInplace.bat
├── Document
│ └── IOCPDemo通讯协议.doc
├── Source
│ ├── FastMM492
│ │ ├── CPP Builder Support
│ │ │ └── FastMM4BCB.cpp
│ │ ├── Demos
│ │ │ ├── Dynamically Loaded DLL
│ │ │ │ ├── ApplicationForm.dfm
│ │ │ │ ├── ApplicationForm.pas
│ │ │ │ ├── DLLForm.dfm
│ │ │ │ ├── DLLForm.pas
│ │ │ │ ├── DynamicallyLoadedDLLDemo.groupproj
│ │ │ │ ├── TestApplication.cfg
│ │ │ │ ├── TestApplication.dpr
│ │ │ │ ├── TestApplication.dproj
│ │ │ │ ├── TestApplication.res
│ │ │ │ ├── TestDLL.cfg
│ │ │ │ ├── TestDLL.dpr
│ │ │ │ ├── TestDLL.dproj
│ │ │ │ └── TestDLL.res
│ │ │ ├── Replacement borlndmm DLL
│ │ │ │ ├── BorlndMM.dll
│ │ │ │ ├── DemoForm.dfm
│ │ │ │ ├── DemoForm.pas
│ │ │ │ ├── FastMM_FullDebugMode.dll
│ │ │ │ ├── FullDebugModeDemo.cfg
│ │ │ │ ├── FullDebugModeDemo.dpr
│ │ │ │ └── FullDebugModeDemo.res
│ │ │ └── Usage Tracker
│ │ │ ├── DemoForm.dfm
│ │ │ ├── DemoForm.pas
│ │ │ ├── FastMMUsageTracker.dfm
│ │ │ ├── FastMMUsageTracker.pas
│ │ │ ├── UsageTrackerDemo.dpr
│ │ │ ├── UsageTrackerDemo.dproj
│ │ │ └── UsageTrackerDemo.res
│ │ ├── FastMM4_FAQ.txt
│ │ ├── FastMM4Messages.pas
│ │ ├── FastMM4Options.inc
│ │ ├── FastMM4.pas
│ │ ├── FastMM4_Readme.txt
│ │ ├── FullDebugMode DLL
│ │ │ ├── CPP Builder Support
│ │ │ │ ├── FastMM_FullDebugMode.lib
│ │ │ │ └── Readme.txt
│ │ │ ├── FastMM_FullDebugMode.dpr
│ │ │ ├── FastMM_FullDebugMode.dproj
│ │ │ ├── FastMM_FullDebugMode.res
│ │ │ └── Precompiled
│ │ │ └── FastMM_FullDebugMode.dll
│ │ ├── Replacement BorlndMM DLL
│ │ │ ├── CB2006
│ │ │ │ ├── BorlndMM.bdsproj
│ │ │ │ ├── BorlndMM.bpf
│ │ │ │ ├── BorlndMM.pas
│ │ │ │ ├── DLLEntry.cpp
│ │ │ │ ├── Export.def
│ │ │ │ ├── Precompiled
│ │ │ │ │ └── BorlndMM.dll
│ │ │ │ └── Readme.txt
│ │ │ ├── CB2007
│ │ │ │ ├── BorlndMM.cbproj
│ │ │ │ ├── BorlndMM.pas
│ │ │ │ ├── DLLEntry.cpp
│ │ │ │ ├── Export.def
│ │ │ │ ├── Precompiled
│ │ │ │ │ └── BorlndMM.dll
│ │ │ │ └── Readme.txt
│ │ │ └── Delphi
│ │ │ ├── BorlndMM.bdsproj
│ │ │ ├── BorlndMM.cfg
│ │ │ ├── BorlndMM.dll
│ │ │ ├── BorlndMM.dof
│ │ │ ├── BorlndMM.dpr
│ │ │ ├── BorlndMM.res
│ │ │ ├── FastMMDebugSupport.pas
│ │ │ └── Precompiled
│ │ │ ├── for Applications
│ │ │ │ ├── Debug
│ │ │ │ │ └── BorlndMM.dll
│ │ │ │ └── Performance
│ │ │ │ └── BorlndMM.dll
│ │ │ └── for Delphi IDE
│ │ │ ├── Debug
│ │ │ │ └── BorlndMM.dll
│ │ │ └── Performance
│ │ │ └── BorlndMM.dll
│ │ └── Translations
│ │ ├── Afrikaans
│ │ │ └── FastMM4Messages.pas
│ │ ├── Belarussian
│ │ │ └── FastMM4Messages.pas
│ │ ├── Chinese (Simplified)
│ │ │ ├── FastMM4Messages.pas
│ │ │ └── FastMM4Options.inc
│ │ ├── Czech
│ │ │ └── FastMM4Messages.pas
│ │ ├── English
│ │ │ └── FastMM4Messages.pas
│ │ ├── French
│ │ │ └── FastMM4Messages.pas
│ │ ├── German
│ │ │ ├── by Thomas Speck
│ │ │ │ └── FastMM4Messages.pas
│ │ │ └── by Uwe Queisser
│ │ │ └── FastMM4Messages.pas
│ │ ├── Indonesian
│ │ │ └── FastMM4Messages.pas
│ │ ├── Italian
│ │ │ └── FastMM4Messages.pas
│ │ ├── Polish
│ │ │ └── FastMM4Messages.pas
│ │ ├── Portuguese
│ │ │ └── FastMM4Messages.pas
│ │ ├── Portuguese (Brazil)
│ │ │ └── FastMM4Messages.pas
│ │ ├── Romanian
│ │ │ └── FastMM4Messages.pas
│ │ ├── Russian
│ │ │ └── FastMM4Messages.pas
│ │ ├── Spanish
│ │ │ └── FastMM4Messages.pas
│ │ └── Ukrainian
│ │ └── FastMM4Messages.pas
│ ├── IOCPDemoCln
│ │ ├── Forms
│ │ │ ├── BaseForm.dfm
│ │ │ ├── BaseForm.pas
│ │ │ ├── BaseFrame.dfm
│ │ │ ├── BaseFrame.pas
│ │ │ ├── ClientsFrame.dfm
│ │ │ ├── ClientsFrame.pas
│ │ │ ├── DownloadFrame.dfm
│ │ │ ├── DownloadFrame.pas
│ │ │ ├── IOCPDemoClnMain.dfm
│ │ │ ├── IOCPDemoClnMain.pas
│ │ │ ├── LogFrame.dfm
│ │ │ ├── LogFrame.pas
│ │ │ ├── LoginForm.dfm
│ │ │ ├── LoginForm.pas
│ │ │ ├── ModalForm.dfm
│ │ │ ├── ModalForm.pas
│ │ │ ├── SQLFrame.dfm
│ │ │ ├── SQLFrame.pas
│ │ │ ├── UploadFrame.dfm
│ │ │ └── UploadFrame.pas
│ │ ├── IOCPDemoCln.cfg
│ │ ├── IOCPDemoCln.dof
│ │ ├── IOCPDemoCln.dpr
│ │ ├── IOCPDemoCln.res
│ │ ├── Socket
│ │ │ ├── BaseClientSocket.pas
│ │ │ ├── ControlSocket.pas
│ │ │ ├── DownloadSocket.pas
│ │ │ ├── LogSocket.pas
│ │ │ ├── SQLSocket.pas
│ │ │ └── UploadSocket.pas
│ │ └── Units
│ │ ├── ClientDefineUnit.pas
│ │ ├── DataMgrCtr.pas
│ │ └── DrawListViewProgress.pas
│ ├── IOCPDemoSvr
│ │ ├── Form
│ │ │ ├── ConfigForm.dfm
│ │ │ ├── ConfigForm.pas
│ │ │ ├── DispatchCenter.dfm
│ │ │ ├── DispatchCenter.pas
│ │ │ ├── MainForm.dfm
│ │ │ ├── MainForm.pas
│ │ │ ├── ServiceForm.dfm
│ │ │ └── ServiceForm.pas
│ │ ├── IOCPDemoSvr.cfg
│ │ ├── IOCPDemoSvr.dof
│ │ ├── IOCPDemoSvr.dpr
│ │ ├── IOCPDemoSvr.drc
│ │ ├── IOCPDemoSvr.res
│ │ ├── Socket
│ │ │ ├── BaseSocket.pas
│ │ │ ├── ControlSocket.pas
│ │ │ ├── DownloadSocket.pas
│ │ │ ├── LogSocket.pas
│ │ │ ├── SQLSocket.pas
│ │ │ └── UploadSocket.pas
│ │ └── Unit
│ │ ├── ADOConPool.pas
│ │ ├── BasisFunction.pas
│ │ ├── DBConnect.pas
│ │ ├── DefineUnit.pas
│ │ ├── Logger.pas
│ │ └── OptionSet.pas
│ ├── IOCPSocket
│ │ ├── IOCPSocket.pas
│ │ ├── jediapilib.inc
│ │ ├── jedi.inc
│ │ ├── JwaMSWSock.pas
│ │ ├── JwaQos.pas
│ │ ├── JwaWinsock2.pas
│ │ ├── PK_IOCPSocket.cfg
│ │ ├── PK_IOCPSocket.dof
│ │ ├── PK_IOCPSocket.dpk
│ │ └── PK_IOCPSocket.res
│ ├── VirtualTree
│ │ ├── CBuilder
│ │ │ ├── CVS
│ │ │ │ ├── Entries
│ │ │ │ ├── Entries.Extra
│ │ │ │ ├── Repository
│ │ │ │ └── Root
│ │ │ ├── VirtualTreesC4.bpk
│ │ │ ├── VirtualTreesC4.cpp
│ │ │ ├── VirtualTreesC4D.bpk
│ │ │ ├── VirtualTreesC4D.cpp
│ │ │ ├── VirtualTreesC4D.res
│ │ │ ├── VirtualTreesC4.res
│ │ │ ├── VirtualTreesC5.bpk
│ │ │ ├── VirtualTreesC5.cpp
│ │ │ ├── VirtualTreesC5D.bpk
│ │ │ ├── VirtualTreesC5D.cpp
│ │ │ ├── VirtualTreesC5D.res
│ │ │ ├── VirtualTreesC5.res
│ │ │ ├── VirtualTreesC6.bpk
│ │ │ ├── VirtualTreesC6.cpp
│ │ │ ├── VirtualTreesC6D.bpk
│ │ │ ├── VirtualTreesC6D.cpp
│ │ │ ├── VirtualTreesC6D.res
│ │ │ └── VirtualTreesC6.res
│ │ ├── CVS
│ │ │ ├── Entries
│ │ │ ├── Entries.Extra
│ │ │ ├── Repository
│ │ │ └── Root
│ │ ├── Delphi
│ │ │ ├── CVS
│ │ │ │ ├── Entries
│ │ │ │ ├── Entries.Extra
│ │ │ │ ├── Repository
│ │ │ │ └── Root
│ │ │ ├── VirtualTreesD4D.dpk
│ │ │ ├── VirtualTreesD4.dpk
│ │ │ ├── VirtualTreesD4D.res
│ │ │ ├── VirtualTreesD4.res
│ │ │ ├── VirtualTreesD5D.dpk
│ │ │ ├── VirtualTreesD5.dpk
│ │ │ ├── VirtualTreesD5D.res
│ │ │ ├── VirtualTreesD5.res
│ │ │ ├── VirtualTreesD6D.dpk
│ │ │ ├── VirtualTreesD6.dpk
│ │ │ ├── VirtualTreesD6D.res
│ │ │ ├── VirtualTreesD6.res
│ │ │ ├── VirtualTreesD7.cfg
│ │ │ ├── VirtualTreesD7D.cfg
│ │ │ ├── VirtualTreesD7D.dof
│ │ │ ├── VirtualTreesD7D.dpk
│ │ │ ├── VirtualTreesD7.dof
│ │ │ ├── VirtualTreesD7.dpk
│ │ │ ├── VirtualTreesD7D.res
│ │ │ ├── VirtualTreesD7.res
│ │ │ ├── VirtualTreesD9D.dpk
│ │ │ ├── VirtualTreesD9.dpk
│ │ │ ├── VirtualTreesD9D.res
│ │ │ └── VirtualTreesD9.res
│ │ ├── Design
│ │ │ ├── CVS
│ │ │ │ ├── Entries
│ │ │ │ ├── Entries.Extra
│ │ │ │ ├── Repository
│ │ │ │ └── Root
│ │ │ ├── StrEditD4.dfm
│ │ │ ├── StrEditD4.pas
│ │ │ ├── VirtualTrees.dcr
│ │ │ └── VirtualTreesReg.pas
│ │ ├── Resources
│ │ │ ├── CVS
│ │ │ │ ├── Entries
│ │ │ │ ├── Entries.Extra
│ │ │ │ ├── Repository
│ │ │ │ └── Root
│ │ │ ├── VT check dark.bmp
│ │ │ ├── VT check light.bmp
│ │ │ ├── VT flat.bmp
│ │ │ ├── VT header split.cur
│ │ │ ├── VT move all.bmp
│ │ │ ├── VT move all.cur
│ │ │ ├── VT move east.cur
│ │ │ ├── VT move east-west.bmp
│ │ │ ├── VT move east-west.cur
│ │ │ ├── VT move north.cur
│ │ │ ├── VT move north-east.cur
│ │ │ ├── VT move north-south.bmp
│ │ │ ├── VT move north-south.cur
│ │ │ ├── VT move north-west.cur
│ │ │ ├── VT move south.cur
│ │ │ ├── VT move south-east.cur
│ │ │ ├── VT move south-west.cur
│ │ │ ├── VT move west.cur
│ │ │ ├── VT tick dark.bmp
│ │ │ ├── VT tick light.bmp
│ │ │ ├── VT utilities.bmp
│ │ │ ├── VT XP.bmp
│ │ │ ├── VT XP button minus.bmp
│ │ │ └── VT XP button plus.bmp
│ │ └── Source
│ │ ├── Compilers.inc
│ │ ├── CVS
│ │ │ ├── Entries
│ │ │ ├── Entries.Extra
│ │ │ ├── Repository
│ │ │ └── Root
│ │ ├── MsgDecodeVirtualTree.pas
│ │ ├── VirtualTrees.pas
│ │ ├── VirtualTrees.res
│ │ ├── VTConfig.inc
│ │ └── VTHeaderPopup.pas
│ └── WindowsXP_UAC.res
└── 测试结果.xlsx
65 directories, 258 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论