├── PnLibs
├── lib.PnDebug.pas
├── lib.PnIniRec4Rtti.pas
├── lib.PnLocker.pas
├── lib.PnObject.pas
└── lib.PnObjectPool.pas
├── README.md
├── demos
├── 1_hello_world
│ ├── HttpSysServerDemo.dpr
│ ├── HttpSysServerDemo.dproj
│ ├── HttpSysServerDemo.dproj.local
│ ├── HttpSysServerDemo.identcache
│ ├── HttpSysServerDemo.mes
│ ├── HttpSysServerDemo.res
│ ├── HttpSysServerDemo.stat
│ └── __history
│ │ └── HttpSysServerDemo.dpr.~1~
├── 2_vcl
│ ├── PnHttpSysServerMain.dpr
│ ├── PnHttpSysServerMain.dproj
│ ├── PnHttpSysServerMain.dproj.local
│ ├── PnHttpSysServerMain.identcache
│ ├── PnHttpSysServerMain.mes
│ ├── PnHttpSysServerMain.res
│ ├── PnHttpSysServerMain.stat
│ ├── PnHttpSysServerMain_Icon.ico
│ ├── PnHttpSysServerMain_Icon1.ico
│ ├── __history
│ │ ├── PnHttpSysServerMain.dpr.~1~
│ │ ├── ufrmMainEx.pas.~1~
│ │ └── ufrmMainEx.pas.~2~
│ ├── ufrmMainEx.dfm
│ └── ufrmMainEx.pas
├── 3_upload
│ ├── HttpSysServerDemo.otares
│ ├── HttpSysServerDemo.res
│ ├── HttpSysServerDemo.stat
│ ├── HttpSysServerUpload.dpr
│ ├── HttpSysServerUpload.dproj
│ ├── HttpSysServerUpload.dproj.local
│ ├── HttpSysServerUpload.identcache
│ ├── HttpSysServerUpload.mes
│ ├── HttpSysServerUpload.res
│ ├── HttpSysServerUpload.stat
│ └── uUpload.pas
├── PnHttpSysGroup1.groupproj
├── PnHttpSysGroup1.groupproj.local
├── PnHttpSysGroup1_prjgroup.tvsconfig
└── bin
│ └── www
│ ├── AUTHORS.txt
│ ├── LICENSE.txt
│ ├── external
│ └── jquery
│ │ └── jquery.js
│ ├── fileupload
│ └── upload.htm
│ ├── images
│ ├── ui-icons_444444_256x240.png
│ ├── ui-icons_555555_256x240.png
│ ├── ui-icons_777620_256x240.png
│ ├── ui-icons_777777_256x240.png
│ ├── ui-icons_cc0000_256x240.png
│ └── ui-icons_ffffff_256x240.png
│ ├── index.html
│ ├── jquery-ui.css
│ ├── jquery-ui.js
│ ├── jquery-ui.min.css
│ ├── jquery-ui.min.js
│ ├── jquery-ui.structure.css
│ ├── jquery-ui.structure.min.css
│ ├── jquery-ui.theme.css
│ ├── jquery-ui.theme.min.css
│ ├── package.json
│ └── test1.png
└── source
├── PnDefs.inc
├── uPNSysThreadPool.pas
├── uPnHttpSys.Api.pas
├── uPnHttpSys.Comm.pas
├── uPnHttpSysServer.pas
├── uPnHttpSysServerSync.pas
└── uPnMemory.pas
/PnLibs/lib.PnDebug.pas:
--------------------------------------------------------------------------------
1 | unit lib.PnDebug;
2 |
3 | interface
4 |
5 | //{$DEFINE PNDEBUG}
6 | {$IFDEF MSWINDOWS}
7 | uses
8 | System.SysUtils,
9 | Winapi.Windows;
10 |
11 | procedure debug(s: string; const Args: array of const);
12 | procedure debugEx(s: string; const Args: array of const);
13 | {$ENDIF}
14 |
15 | implementation
16 |
17 | {$IFDEF MSWINDOWS}
18 | procedure debug(s: string; const Args: array of const);
19 | begin
20 | {$IFDEF PNDEBUG}
21 | OutputDebugString(PChar(Format(s, Args)));
22 | {$ELSE}
23 | {$IFDEF DEBUG}
24 | OutputDebugString(PChar(Format(s, Args)));
25 | {$ENDIF}
26 | {$ENDIF}
27 | end;
28 |
29 | procedure debugEx(s: string; const Args: array of const);
30 | begin
31 | OutputDebugString(PChar(Format(s, Args)));
32 | end;
33 | {$ENDIF}
34 |
35 | end.
36 |
37 |
--------------------------------------------------------------------------------
/PnLibs/lib.PnIniRec4Rtti.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/PnLibs/lib.PnIniRec4Rtti.pas
--------------------------------------------------------------------------------
/PnLibs/lib.PnLocker.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/PnLibs/lib.PnLocker.pas
--------------------------------------------------------------------------------
/PnLibs/lib.PnObject.pas:
--------------------------------------------------------------------------------
1 | unit lib.PnObject;
2 |
3 | interface
4 |
5 | type
6 | TPNObject = class
7 | public
8 | m_pNext: TPNObject;
9 | m_MapID: Cardinal;
10 | public
11 | constructor Create;
12 | destructor Destroy; override;
13 | procedure InitObject; virtual;
14 |
15 | end;
16 |
17 | implementation
18 |
19 | constructor TPNObject.Create;
20 | begin
21 | inherited Create;
22 | InitObject;
23 | end;
24 |
25 | destructor TPNObject.Destroy;
26 | begin
27 | inherited Destroy;
28 | end;
29 |
30 | procedure TPNObject.InitObject;
31 | begin
32 | m_pNext := nil;
33 | m_MapID := 0;
34 | end;
35 |
36 | end.
37 |
38 |
--------------------------------------------------------------------------------
/PnLibs/lib.PnObjectPool.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/PnLibs/lib.PnObjectPool.pas
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # PnHttpSysServer
2 | ms httpapi server with iocp
3 | 微软 httpapi 异步封装
4 |
5 |
6 | 为兼容之前的项目代码中参考并复制了大量mORMot的代码,只有核心部份重写了使用基于iocp的模型
7 | 另外感谢diocp群友菜根对本人基础知识的解惑
8 |
9 | 为什么重新封装?
10 | 使用中发现mORMot的httpapiserver存在线程阻塞的方法,如果超过服务器线程数的慢网速客户端不停地post数据到服务器端,或者不停下载服务器上的大一点的文件,就会严重拖慢服务器,甚至卡死服务器线程,
11 | 这个问题我向mORMot作者提出过,前且我修改过一个SynCrtSock.pas为THttpApiServer.Execute增加了一个系统的线程池(Winapi.Windows.QueueUserWorkItem)来作为工作线程,结果是THttpApiServer.Execute的线程不再会被阻塞并且整体性能提升1.5到2倍
12 |
13 | 后来发现系统管理的线程池中有很多不可控因素,比如线程的运行前与运行后的事件,绑定在QueueUserWorkItem时会不停地调用,但绑定在THttpApiServer时又与工作线程存在同步问题
14 |
15 | 之上列出的问题个人部结了一下,就有个现在的封装,基于iocp异步模式的http服务器
16 |
17 | 其性能较mORMot提升3-4倍
18 |
19 |
20 | 0.8a 第一版,代码较乱,比较粗糙
21 |
22 | 0.9a 整理了部份代码,并修正了一个request body接收完成时的bug
23 |
24 | 0.9.1a 把mormot的几个设置都移过来了,目前还有日志没有完善,还有线程事件没有增加
25 |
26 | 0.9.2a 增加w3c日志,增加异步的文件发送(基于mORMot的方法修改)
27 |
28 | 0.9.3a 修正文件缓存与大文件下载
29 |
30 | 0.9.4b 测试版,调整了启动日志的参数,整理了部分代码与注释微调响应静态文件
31 |
32 | 0.9.5b 增加OnCallWorkItemEvent事件,可以另开工作线程处理任务,另修正DoAfterResponse的出发位置,增加上传文件demo代码(文件块处理代码未完成)
33 |
34 | 0.9.6b 调整Start与Stop的代码,修正SendErr不存日志的问题
35 |
36 | 0.9.7b 优化日志写入,调整几出代码位置
37 |
38 | 0.9.8r 增加请求统计,优化应答数据处理,上线测试5天300万次用户请求无异常。
39 |
40 | 0.9.9r 修改对象池防止碎片严重的问题,上线测试近一个月无异常。
41 |
42 | 1.0.0.0r 修正io关闭时无法退出初始提交Request的问题。
43 |
44 | 1.0.0.1r 整理优化对象池文件
45 |
46 | 1.0.0.2r 整理文件,增加PnLibs库,去掉锁文件中的TQSimpleLock更换为TSpinLock
47 |
48 | 1.0.0.3r 调整使用CS锁,经测试win核心代码使用CS锁时平均效率较高与稳定
--------------------------------------------------------------------------------
/demos/1_hello_world/HttpSysServerDemo.dpr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/1_hello_world/HttpSysServerDemo.dpr
--------------------------------------------------------------------------------
/demos/1_hello_world/HttpSysServerDemo.dproj.local:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 1899/12/30 00:00:00.000.336,C:\Users\pony\Desktop\PnHttpSysServer\uPnHttpSysComm.pas=C:\Users\pony\Desktop\PnHttpSysServer\uPnHttpSys.Comm.pas
5 | 1899/12/30 00:00:00.000.710,C:\Users\pony\Desktop\PnHttpSysServer\Unit1.pas=C:\Users\pony\Desktop\PnHttpSysServer\uPnHttpSysComm.pas
6 | 1899/12/30 00:00:00.000.460,C:\Users\pony\Desktop\PnHttpSysServer\Unit1.pas=C:\Users\pony\Desktop\PnHttpSysServer\uPnHttpSysServer.pas
7 | 1899/12/30 00:00:00.000.591,C:\Users\pony\Desktop\PnHttpSysServer\HttpSysServerDemo.dproj=C:\Users\pony\Desktop\PnHttpSysServer\HttpSysServerDemo.dproj
8 | 1899/12/30 00:00:00.000.204,C:\Users\pony\Documents\Embarcadero\Studio\Projects\Project1.dproj=C:\Users\pony\Desktop\PnHttpSysServer\PnHttpSysServerDemo.dproj
9 | 1899/12/30 00:00:00.000.978,C:\Users\pony\Desktop\PnHttpSysServer\PnHttpSysServerDemo.dproj=C:\Users\pony\Desktop\PnHttpSysServer\HttpSysServerDemo.dproj
10 |
11 |
12 |
--------------------------------------------------------------------------------
/demos/1_hello_world/HttpSysServerDemo.identcache:
--------------------------------------------------------------------------------
1 | [D:\__develop2020\__project_delphi\PnHttpSysServer\demos\1_hello_world\HttpSysServerDemo.dpr
--------------------------------------------------------------------------------
/demos/1_hello_world/HttpSysServerDemo.mes:
--------------------------------------------------------------------------------
1 | [GeneralSettings]
2 | MesVersion=4
3 | HandleExceptions=0
4 | LinkInCode=1
5 | AppendMapFileToBinary=1
6 | NoOwnMadExceptSettings=0
7 | CheckFileCrc=1
8 | CheckForFrozenMainThread=0
9 | FreezeTimeout=60000
10 | ReportLeaks=1
11 | WindowsLogo=0
12 | CrashOnBuffer=0
13 | CrashOnUnderrun=0
14 | AutomaticallySaveBugReport=1
15 | AutoSaveBugReportIfNotSent=1
16 | AutomaticallyMailBugReport=0
17 | AutoMailProgressBox=0
18 | CopyBugReportToClipboard=0
19 | SuspendAllRunningThreads=0
20 | ShowPleaseWaitBox=1
21 | PleaseWaitIcon=plwait1
22 | AutomaticallyContinueApplication=0
23 | AutomaticallyRestartApplication=0
24 | AutomaticallyCloseApplication=0
25 | SendInBackground=1
26 | SendHelper=196608
27 | Send32Icon=send321
28 | UploadViaHttp=0
29 | HttpServer=
30 | HttpSsl=0
31 | HttpPort=0
32 | HttpAccount=
33 | HttpPassword=
34 | UploadToFogBugz=0
35 | UploadToBugZilla=0
36 | UploadToMantis=0
37 | BugTrackerAccount=
38 | BugTrackerPassword=
39 | BugTrackerProject=
40 | BugTrackerArea=
41 | BugTrackerAssignTo=
42 | MailAsSmtpServer=0
43 | MailAsSmtpClient=0
44 | SmtpServer=
45 | SmtpSsl=0
46 | SmtpTls=0
47 | SmtpPort=0
48 | SmtpAccount=
49 | SmtpPassword=
50 | MailViaMapi=1
51 | MailViaMailto=1
52 | MailAddress=
53 | BugReportFile=d:\bugreport.txt
54 | AttachBugReport=1
55 | AttachBugReportFile=1
56 | DeleteBugReportFile=1
57 | BugReportSendAs=bugreport.txt
58 | BugReportZip=
59 | ScreenShotDepth=8
60 | ScreenShotAppOnly=0
61 | ScreenShotSendAs=screenshot.png
62 | ScreenShotZip=
63 | AdditionalAttachments=
64 | AppendBugReports=1
65 | BugReportFileSize=0
66 | DontSaveDuplicateExceptions=0
67 | DontSaveDuplicateFreezings=0
68 | DuplicateExceptionDefinition=1
69 | DuplicateFreezeDefinition=2
70 | ShowExceptionBox=1
71 | OkBtnText=&OK
72 | DetailsBtnText=&Details
73 | PleaseWaitTitle=Information
74 | PleaseWaitText=Please wait a moment...
75 | BugTrackerTitle=%25appname%25, %25exceptMsg%25
76 | BugTrackerDescr=error details: %0d%0a%25errorDetails%25
77 | MailSubject=bug report
78 | MailBody=please find the bug report attached
79 | SendBoxTitle=Sending bug report...
80 | PrepareAttachMsg=Preparing attachments...
81 | MxLookupMsg=Searching for mail server...
82 | ConnectMsg=Connecting to server...
83 | SendMailMsg=Sending mail...
84 | FieldsMsg=Setting fields...
85 | SendAttachMsg=Sending attachments...
86 | SendFinalizeMsg=Finalizing...
87 | MailFailureMsg=Sorry, sending the bug report didn't work.
88 | VersionVariable=
89 | [ExceptionBox]
90 | ShowButtonMailBugReport=1
91 | ShowButtonSaveBugReport=1
92 | ShowButtonPrintBugReport=0
93 | ShowButtonShowBugReport=1
94 | ShowButtonContinueApplication=1
95 | ShowButtonRestartApplication=1
96 | ShowButtonCloseApplication=1
97 | IconButtonSendBugReport=send1
98 | IconButtonSaveBugReport=save1
99 | IconButtonPrintBugReport=print1
100 | IconButtonShowBugReport=show1
101 | IconButtonContinueApplication=continue1
102 | IconButtonCantContinueApplication=cantContinue1
103 | IconButtonRestartApplication=restart1
104 | IconButtonCloseApplication=close1
105 | FocusedButton=0
106 | SendAssistant=SendAssistant
107 | SaveAssistant=SaveAssistant
108 | PrintAssistant=PrintAssistant
109 | AutomaticallyShowBugReport=0
110 | NoOwnerDrawButtons=0
111 | BigExceptionIcon=big1
112 | TitleBar=%25appname%25
113 | ExceptionMessage=An error occurred in the application.
114 | FrozenMessage=The application seems to be frozen.
115 | BitFaultMsg=The file "%25modname%25" seems to be corrupt!
116 | MailBugReportText=send bug report
117 | SaveBugReportText=save bug report
118 | PrintBugReportText=print bug report
119 | ShowBugReportText=show bug report
120 | ContinueApplicationText=continue application
121 | RestartApplicationText=restart application
122 | CloseApplicationText=close application
123 | [BugReport]
124 | ListThreads=1
125 | ListModules=1
126 | ListHardware=1
127 | ShowCpuRegisters=1
128 | ShowStackDump=1
129 | Disassembly=1
130 | HideUglyItems=0
131 | ShowRelativeAddrs=1
132 | ShowRelativeLines=1
133 | FormatDisassembly=0
134 | LimitDisassembly=5
135 | EnabledPlugins=modules|processes|hardware
136 | [Filters]
137 | Filter1ExceptionClasses=EDBEditError
138 | Filter1DontCreateBugReport=0
139 | Filter1DontCreateScreenshot=0
140 | Filter1DontSuspendThreads=0
141 | Filter1DontCallHandlers=0
142 | Filter1ShowBox=0
143 | Filter1Assis=
144 | Filter2ExceptionClasses=
145 | Filter2DontCreateBugReport=0
146 | Filter2DontCreateScreenshot=0
147 | Filter2DontSuspendThreads=0
148 | Filter2DontCallHandlers=0
149 | Filter2ShowBox=0
150 | Filter2Assis=
151 | GeneralDontCreateBugReport=0
152 | GeneralDontCreateScreenshot=0
153 | GeneralDontSuspendThreads=0
154 | GeneralDontCallHandlers=0
155 | GeneralShowBox=0
156 | GeneralAssis=
157 | [Assistants]
158 | Assistant1=SendAssistant|Send Assistant|ContactForm|DetailsForm|ScrShotForm
159 | Assistant2=SaveAssistant|Save Assistant|ContactForm|DetailsForm
160 | Assistant3=PrintAssistant|Print Assistant|ContactForm|DetailsForm
161 | Forms1=TPF0%0eTMEContactForm%0bContactForm%07Message%0c%13%00%00%00Contact Information%08MinWidth%04%00%00%00%00%08OnAction%0c%1b%00%00%00madExcept.HandleContactForm%05Timer%04%00%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%08%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%08INVLabel%06Label1%07Caption%0c%0a%00%00%00your name:%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%08NameEdit%07Colored%09%07Enabled%09%05Lines%04%01%00%00%00%08Optional%09%0aOutputName%0c%0c%00%00%00contact name%0aOutputType%07%09nvoHeader%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%08INVLabel%06Label2%07Caption%0c%0b%00%00%00your email:%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%09EmailEdit%07Colored%09%07Enabled%09%05Lines%04%01%00%00%00%08Optional%08%0aOutputName%0c%0d%00%00%00contact email%0aOutputType%07%09nvoHeader%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%0bINVCheckBox%08MemCheck%07Caption%0c%0b%00%00%00remember me%07Checked%08%07Enabled%09%0aOutputName%0c%00%00%00%00%07Spacing%04%00%00%00%00%00%00%00
162 | Forms2=TPF0%0eTMEDetailsForm%0bDetailsForm%07Message%0c%0d%00%00%00Error Details%08MinWidth%04%00%00%00%00%08OnAction%0c%00%00%00%00%05Timer%04%00%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%08INVLabel%06Label1%07Caption%0c,%00%00%00what were you doing when the error occurred?%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%0bDetailsMemo%07Colored%09%07Enabled%09%05Lines%04%09%00%00%00%08Optional%08%0aOutputName%0c%0d%00%00%00error details%0aOutputType%07%0dnvoOwnSection%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%00
163 | Forms3=TPF0%0eTMEScrShotForm%0bScrShotForm%0dActiveControl%07%0bContinueBtn%07Message%0c%18%00%00%00Screenshot Configuration%08MinWidth%04%00%00%00%00%08OnAction%0c%1e%00%00%00madExcept.HandleScreenshotForm%05Timer%04?%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%08%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%0bINVCheckBox%0bAttachCheck%07Caption%0c%25%00%00%00attach a screenshot to the bug report%07Checked%09%07Enabled%09%0aOutputName%0c%00%00%00%00%07Spacing%04%00%00%00%00%00%00%08INVImage%0aScrShotImg%06Border%09%09Clickable%09%07Enabled%09%04File%0c%00%00%00%00%06Height%04%00%00%00%00%07Spacing%04%00%00%00%00%05Width%04%00%00%00%00%00%00%08INVLabel%06Label1%07Caption%0c%15%00%00%00(click to edit image)%07Enabled%09%07Spacing%04%00%00%00%00%00%00%00
164 |
--------------------------------------------------------------------------------
/demos/1_hello_world/HttpSysServerDemo.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/1_hello_world/HttpSysServerDemo.res
--------------------------------------------------------------------------------
/demos/1_hello_world/HttpSysServerDemo.stat:
--------------------------------------------------------------------------------
1 | [Stats]
2 | EditorSecs=177799
3 | DesignerSecs=87
4 | InspectorSecs=92
5 | CompileSecs=3004485
6 | OtherSecs=21064
7 | StartTime=2019-02-22 09:27:30
8 | RealKeys=0
9 | EffectiveKeys=0
10 | DebugSecs=19499
11 |
--------------------------------------------------------------------------------
/demos/1_hello_world/__history/HttpSysServerDemo.dpr.~1~:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/1_hello_world/__history/HttpSysServerDemo.dpr.~1~
--------------------------------------------------------------------------------
/demos/2_vcl/PnHttpSysServerMain.dpr:
--------------------------------------------------------------------------------
1 | program PnHttpSysServerMain;
2 |
3 | uses
4 | Vcl.Forms,
5 | ufrmMainEx in 'ufrmMainEx.pas' {frmMainEx};
6 |
7 | {$R *.res}
8 |
9 | begin
10 | ReportMemoryLeaksOnShutDown := True;
11 |
12 | Application.Initialize;
13 | Application.MainFormOnTaskbar := True;
14 | Application.CreateForm(TfrmMainEx, frmMainEx);
15 | Application.Run;
16 | end.
17 |
--------------------------------------------------------------------------------
/demos/2_vcl/PnHttpSysServerMain.dproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {CBCC5384-4190-4C8E-9BE1-0F2550BE224F}
4 | PnHttpSysServerMain.dpr
5 | True
6 | Release
7 | 1155
8 | Application
9 | VCL
10 | 18.8
11 | Win64
12 |
13 |
14 | true
15 |
16 |
17 | true
18 | Base
19 | true
20 |
21 |
22 | true
23 | Base
24 | true
25 |
26 |
27 | true
28 | Base
29 | true
30 |
31 |
32 | true
33 | Cfg_1
34 | true
35 | true
36 |
37 |
38 | true
39 | Cfg_1
40 | true
41 | true
42 |
43 |
44 | true
45 | Cfg_1
46 | true
47 | true
48 |
49 |
50 | true
51 | Base
52 | true
53 |
54 |
55 | true
56 | Cfg_2
57 | true
58 | true
59 |
60 |
61 | true
62 | Cfg_2
63 | true
64 | true
65 |
66 |
67 | true
68 | Cfg_2
69 | true
70 | true
71 |
72 |
73 | false
74 | false
75 | false
76 | false
77 | false
78 | 00400000
79 | PnHttpSysServerMain
80 | Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)
81 | 2052
82 | CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=
83 | ..\..\source;..\..\PnLibs;$(DCC_UnitSearchPath)
84 | ..\bin
85 | D:\__develop__dcu\
86 |
87 |
88 | Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)
89 | Debug
90 | true
91 | CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)
92 | 1033
93 | $(BDS)\bin\default_app.manifest
94 | PnHttpSysServerMain_Icon1.ico
95 | true
96 | $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
97 | $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
98 |
99 |
100 | $(BDS)\bin\default_app.manifest
101 | PnHttpSysServerMain_Icon1.ico
102 | true
103 | $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png
104 | $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png
105 | Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)
106 | Debug
107 | true
108 | CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
109 | 1033
110 |
111 |
112 | RELEASE;$(DCC_Define)
113 | 0
114 | false
115 | 0
116 |
117 |
118 | Debug
119 |
120 |
121 | true
122 | CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)
123 | 3
124 | 2
125 | true
126 | true
127 | true
128 | 1033
129 | PerMonitor
130 |
131 |
132 | true
133 | CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
134 | 3
135 | 2
136 | true
137 | true
138 | 1033
139 | PerMonitor
140 |
141 |
142 | DEBUG;$(DCC_Define)
143 | false
144 | true
145 |
146 |
147 | Debug
148 |
149 |
150 | true
151 | CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)
152 | 3
153 | true
154 | 1033
155 | PerMonitor
156 |
157 |
158 | true
159 | CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=
160 | PerMonitor
161 |
162 |
163 |
164 | MainSource
165 |
166 |
167 |
168 |
169 |
170 | Cfg_2
171 | Base
172 |
173 |
174 | Base
175 |
176 |
177 | Cfg_1
178 | Base
179 |
180 |
181 |
182 | Delphi.Personality.12
183 |
184 |
185 |
186 |
187 | PnHttpSysServerMain.dpr
188 |
189 |
190 | Embarcadero C++Builder Office 2000 Servers Package
191 | Embarcadero C++Builder Office XP Servers Package
192 | Microsoft Office 2000 Sample Automation Server Wrapper Components
193 | Microsoft Office XP Sample Automation Server Wrapper Components
194 |
195 |
196 |
197 | True
198 | True
199 | True
200 | True
201 |
202 |
203 | 12
204 |
205 |
206 |
207 |
208 |
--------------------------------------------------------------------------------
/demos/2_vcl/PnHttpSysServerMain.dproj.local:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/demos/2_vcl/PnHttpSysServerMain.identcache:
--------------------------------------------------------------------------------
1 | ID:\__develop2020\__project_delphi\PnHttpSysServer\PnLibs\lib.PnLocker.pas UD:\__develop2020\__project_delphi\PnHttpSysServer\demos\2_vcl\PnHttpSysServerMain.dpr LD:\__develop2020\__project_delphi\PnHttpSysServer\demos\2_vcl\ufrmMainEx.pas
--------------------------------------------------------------------------------
/demos/2_vcl/PnHttpSysServerMain.mes:
--------------------------------------------------------------------------------
1 | [GeneralSettings]
2 | MesVersion=4
3 | HandleExceptions=0
4 | LinkInCode=1
5 | AppendMapFileToBinary=1
6 | NoOwnMadExceptSettings=0
7 | CheckFileCrc=1
8 | CheckForFrozenMainThread=0
9 | FreezeTimeout=60000
10 | ReportLeaks=1
11 | WindowsLogo=0
12 | CrashOnBuffer=0
13 | CrashOnUnderrun=0
14 | AutomaticallySaveBugReport=1
15 | AutoSaveBugReportIfNotSent=1
16 | AutomaticallyMailBugReport=0
17 | AutoMailProgressBox=0
18 | CopyBugReportToClipboard=0
19 | SuspendAllRunningThreads=0
20 | ShowPleaseWaitBox=1
21 | PleaseWaitIcon=plwait1
22 | AutomaticallyContinueApplication=0
23 | AutomaticallyRestartApplication=0
24 | AutomaticallyCloseApplication=0
25 | SendInBackground=1
26 | SendHelper=196608
27 | Send32Icon=send321
28 | UploadViaHttp=0
29 | HttpServer=
30 | HttpSsl=0
31 | HttpPort=0
32 | HttpAccount=
33 | HttpPassword=
34 | UploadToFogBugz=0
35 | UploadToBugZilla=0
36 | UploadToMantis=0
37 | BugTrackerAccount=
38 | BugTrackerPassword=
39 | BugTrackerProject=
40 | BugTrackerArea=
41 | BugTrackerAssignTo=
42 | MailAsSmtpServer=0
43 | MailAsSmtpClient=0
44 | SmtpServer=
45 | SmtpSsl=0
46 | SmtpTls=0
47 | SmtpPort=0
48 | SmtpAccount=
49 | SmtpPassword=
50 | MailViaMapi=1
51 | MailViaMailto=1
52 | MailAddress=
53 | BugReportFile=d:\bugreport.txt
54 | AttachBugReport=1
55 | AttachBugReportFile=1
56 | DeleteBugReportFile=1
57 | BugReportSendAs=bugreport.txt
58 | BugReportZip=
59 | ScreenShotDepth=8
60 | ScreenShotAppOnly=0
61 | ScreenShotSendAs=screenshot.png
62 | ScreenShotZip=
63 | AdditionalAttachments=
64 | AppendBugReports=1
65 | BugReportFileSize=0
66 | DontSaveDuplicateExceptions=0
67 | DontSaveDuplicateFreezings=0
68 | DuplicateExceptionDefinition=1
69 | DuplicateFreezeDefinition=2
70 | ShowExceptionBox=1
71 | OkBtnText=&OK
72 | DetailsBtnText=&Details
73 | PleaseWaitTitle=Information
74 | PleaseWaitText=Please wait a moment...
75 | BugTrackerTitle=%25appname%25, %25exceptMsg%25
76 | BugTrackerDescr=error details: %0d%0a%25errorDetails%25
77 | MailSubject=bug report
78 | MailBody=please find the bug report attached
79 | SendBoxTitle=Sending bug report...
80 | PrepareAttachMsg=Preparing attachments...
81 | MxLookupMsg=Searching for mail server...
82 | ConnectMsg=Connecting to server...
83 | SendMailMsg=Sending mail...
84 | FieldsMsg=Setting fields...
85 | SendAttachMsg=Sending attachments...
86 | SendFinalizeMsg=Finalizing...
87 | MailFailureMsg=Sorry, sending the bug report didn't work.
88 | VersionVariable=
89 | [ExceptionBox]
90 | ShowButtonMailBugReport=1
91 | ShowButtonSaveBugReport=1
92 | ShowButtonPrintBugReport=0
93 | ShowButtonShowBugReport=1
94 | ShowButtonContinueApplication=1
95 | ShowButtonRestartApplication=1
96 | ShowButtonCloseApplication=1
97 | IconButtonSendBugReport=send1
98 | IconButtonSaveBugReport=save1
99 | IconButtonPrintBugReport=print1
100 | IconButtonShowBugReport=show1
101 | IconButtonContinueApplication=continue1
102 | IconButtonCantContinueApplication=cantContinue1
103 | IconButtonRestartApplication=restart1
104 | IconButtonCloseApplication=close1
105 | FocusedButton=0
106 | SendAssistant=SendAssistant
107 | SaveAssistant=SaveAssistant
108 | PrintAssistant=PrintAssistant
109 | AutomaticallyShowBugReport=0
110 | NoOwnerDrawButtons=0
111 | BigExceptionIcon=big1
112 | TitleBar=%25appname%25
113 | ExceptionMessage=An error occurred in the application.
114 | FrozenMessage=The application seems to be frozen.
115 | BitFaultMsg=The file "%25modname%25" seems to be corrupt!
116 | MailBugReportText=send bug report
117 | SaveBugReportText=save bug report
118 | PrintBugReportText=print bug report
119 | ShowBugReportText=show bug report
120 | ContinueApplicationText=continue application
121 | RestartApplicationText=restart application
122 | CloseApplicationText=close application
123 | [BugReport]
124 | ListThreads=1
125 | ListModules=1
126 | ListHardware=1
127 | ShowCpuRegisters=1
128 | ShowStackDump=1
129 | Disassembly=1
130 | HideUglyItems=0
131 | ShowRelativeAddrs=1
132 | ShowRelativeLines=1
133 | FormatDisassembly=0
134 | LimitDisassembly=5
135 | EnabledPlugins=modules|processes|hardware
136 | [Filters]
137 | Filter1ExceptionClasses=EDBEditError
138 | Filter1DontCreateBugReport=0
139 | Filter1DontCreateScreenshot=0
140 | Filter1DontSuspendThreads=0
141 | Filter1DontCallHandlers=0
142 | Filter1ShowBox=0
143 | Filter1Assis=
144 | Filter2ExceptionClasses=
145 | Filter2DontCreateBugReport=0
146 | Filter2DontCreateScreenshot=0
147 | Filter2DontSuspendThreads=0
148 | Filter2DontCallHandlers=0
149 | Filter2ShowBox=0
150 | Filter2Assis=
151 | GeneralDontCreateBugReport=0
152 | GeneralDontCreateScreenshot=0
153 | GeneralDontSuspendThreads=0
154 | GeneralDontCallHandlers=0
155 | GeneralShowBox=0
156 | GeneralAssis=
157 | [Assistants]
158 | Assistant1=SendAssistant|Send Assistant|ContactForm|DetailsForm|ScrShotForm
159 | Assistant2=SaveAssistant|Save Assistant|ContactForm|DetailsForm
160 | Assistant3=PrintAssistant|Print Assistant|ContactForm|DetailsForm
161 | Forms1=TPF0%0eTMEContactForm%0bContactForm%07Message%0c%13%00%00%00Contact Information%08MinWidth%04%00%00%00%00%08OnAction%0c%1b%00%00%00madExcept.HandleContactForm%05Timer%04%00%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%08%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%08INVLabel%06Label1%07Caption%0c%0a%00%00%00your name:%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%08NameEdit%07Colored%09%07Enabled%09%05Lines%04%01%00%00%00%08Optional%09%0aOutputName%0c%0c%00%00%00contact name%0aOutputType%07%09nvoHeader%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%08INVLabel%06Label2%07Caption%0c%0b%00%00%00your email:%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%09EmailEdit%07Colored%09%07Enabled%09%05Lines%04%01%00%00%00%08Optional%08%0aOutputName%0c%0d%00%00%00contact email%0aOutputType%07%09nvoHeader%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%0bINVCheckBox%08MemCheck%07Caption%0c%0b%00%00%00remember me%07Checked%08%07Enabled%09%0aOutputName%0c%00%00%00%00%07Spacing%04%00%00%00%00%00%00%00
162 | Forms2=TPF0%0eTMEDetailsForm%0bDetailsForm%07Message%0c%0d%00%00%00Error Details%08MinWidth%04%00%00%00%00%08OnAction%0c%00%00%00%00%05Timer%04%00%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%08INVLabel%06Label1%07Caption%0c,%00%00%00what were you doing when the error occurred?%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%0bDetailsMemo%07Colored%09%07Enabled%09%05Lines%04%09%00%00%00%08Optional%08%0aOutputName%0c%0d%00%00%00error details%0aOutputType%07%0dnvoOwnSection%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%00
163 | Forms3=TPF0%0eTMEScrShotForm%0bScrShotForm%0dActiveControl%07%0bContinueBtn%07Message%0c%18%00%00%00Screenshot Configuration%08MinWidth%04%00%00%00%00%08OnAction%0c%1e%00%00%00madExcept.HandleScreenshotForm%05Timer%04?%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%08%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%0bINVCheckBox%0bAttachCheck%07Caption%0c%25%00%00%00attach a screenshot to the bug report%07Checked%09%07Enabled%09%0aOutputName%0c%00%00%00%00%07Spacing%04%00%00%00%00%00%00%08INVImage%0aScrShotImg%06Border%09%09Clickable%09%07Enabled%09%04File%0c%00%00%00%00%06Height%04%00%00%00%00%07Spacing%04%00%00%00%00%05Width%04%00%00%00%00%00%00%08INVLabel%06Label1%07Caption%0c%15%00%00%00(click to edit image)%07Enabled%09%07Spacing%04%00%00%00%00%00%00%00
164 |
--------------------------------------------------------------------------------
/demos/2_vcl/PnHttpSysServerMain.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/2_vcl/PnHttpSysServerMain.res
--------------------------------------------------------------------------------
/demos/2_vcl/PnHttpSysServerMain.stat:
--------------------------------------------------------------------------------
1 | [Stats]
2 | EditorSecs=31983
3 | DesignerSecs=172
4 | InspectorSecs=80
5 | CompileSecs=790744
6 | OtherSecs=2788
7 | StartTime=2019-03-10 02:45:47
8 | RealKeys=0
9 | EffectiveKeys=0
10 | DebugSecs=5202
11 |
--------------------------------------------------------------------------------
/demos/2_vcl/PnHttpSysServerMain_Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/2_vcl/PnHttpSysServerMain_Icon.ico
--------------------------------------------------------------------------------
/demos/2_vcl/PnHttpSysServerMain_Icon1.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/2_vcl/PnHttpSysServerMain_Icon1.ico
--------------------------------------------------------------------------------
/demos/2_vcl/__history/PnHttpSysServerMain.dpr.~1~:
--------------------------------------------------------------------------------
1 | program PnHttpSysServerMain;
2 |
3 | uses
4 | Vcl.Forms,
5 | ufrmMainEx in 'ufrmMainEx.pas' {frmMainEx};
6 |
7 | {$R *.res}
8 |
9 | begin
10 | ReportMemoryLeaksOnShutDown := True;
11 |
12 | Application.Initialize;
13 | Application.MainFormOnTaskbar := True;
14 | Application.CreateForm(TfrmMainEx, frmMainEx);
15 | Application.Run;
16 | end.
17 |
--------------------------------------------------------------------------------
/demos/2_vcl/__history/ufrmMainEx.pas.~1~:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/2_vcl/__history/ufrmMainEx.pas.~1~
--------------------------------------------------------------------------------
/demos/2_vcl/__history/ufrmMainEx.pas.~2~:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/2_vcl/__history/ufrmMainEx.pas.~2~
--------------------------------------------------------------------------------
/demos/2_vcl/ufrmMainEx.dfm:
--------------------------------------------------------------------------------
1 | object frmMainEx: TfrmMainEx
2 | Left = 0
3 | Top = 0
4 | BorderIcons = [biSystemMenu, biMinimize]
5 | Caption = 'PnHttpSysServerMain'
6 | ClientHeight = 562
7 | ClientWidth = 811
8 | Color = clBtnFace
9 | Font.Charset = DEFAULT_CHARSET
10 | Font.Color = clWindowText
11 | Font.Height = -11
12 | Font.Name = 'Tahoma'
13 | Font.Style = []
14 | OldCreateOrder = False
15 | OnCreate = FormCreate
16 | OnDestroy = FormDestroy
17 | PixelsPerInch = 96
18 | TextHeight = 13
19 | object pnl1: TPanel
20 | Left = 0
21 | Top = 0
22 | Width = 811
23 | Height = 41
24 | Align = alTop
25 | BevelOuter = bvNone
26 | TabOrder = 0
27 | object pnl4: TPanel
28 | Left = 627
29 | Top = 0
30 | Width = 184
31 | Height = 41
32 | Align = alRight
33 | BevelOuter = bvNone
34 | TabOrder = 0
35 | object lbl1: TLabel
36 | Left = 58
37 | Top = 7
38 | Width = 16
39 | Height = 13
40 | Caption = '0/0'
41 | end
42 | object lbl2: TLabel
43 | Left = 58
44 | Top = 23
45 | Width = 16
46 | Height = 13
47 | Caption = '0/0'
48 | end
49 | object lbl3: TLabel
50 | Left = 3
51 | Top = 7
52 | Width = 52
53 | Height = 13
54 | Caption = #35831#27714#32479#35745':'
55 | end
56 | object lbl4: TLabel
57 | Left = 3
58 | Top = 23
59 | Width = 52
60 | Height = 13
61 | Caption = #23545#35937#32479#35745':'
62 | end
63 | end
64 | object pnl5: TPanel
65 | Left = 0
66 | Top = 0
67 | Width = 361
68 | Height = 41
69 | Align = alLeft
70 | BevelOuter = bvNone
71 | TabOrder = 1
72 | object chkLog: TCheckBox
73 | Left = 168
74 | Top = 12
75 | Width = 55
76 | Height = 17
77 | Caption = 'IIS'#26085#24535
78 | Checked = True
79 | State = cbChecked
80 | TabOrder = 0
81 | end
82 | object lnklblLocalUrl: TLinkLabel
83 | Left = 229
84 | Top = 13
85 | Width = 106
86 | Height = 17
87 | Caption = 'http://localhost:8080'
88 | TabOrder = 1
89 | OnLinkClick = lnklblLocalUrlLinkClick
90 | end
91 | object btnStart: TBitBtn
92 | Left = 6
93 | Top = 8
94 | Width = 75
95 | Height = 25
96 | Caption = 'btnStart'
97 | TabOrder = 2
98 | OnClick = btnStartClick
99 | end
100 | object btnStop: TBitBtn
101 | Left = 87
102 | Top = 8
103 | Width = 75
104 | Height = 25
105 | Caption = 'btnStop'
106 | TabOrder = 3
107 | OnClick = btnStopClick
108 | end
109 | end
110 | object pnl6: TPanel
111 | Left = 361
112 | Top = 0
113 | Width = 266
114 | Height = 41
115 | Align = alClient
116 | BevelOuter = bvNone
117 | TabOrder = 2
118 | object Label1: TLabel
119 | AlignWithMargins = True
120 | Left = 3
121 | Top = 13
122 | Width = 52
123 | Height = 25
124 | Margins.Top = 13
125 | Align = alLeft
126 | Caption = #31995#32479#36816#34892':'
127 | ExplicitHeight = 13
128 | end
129 | object lbl5: TLabel
130 | AlignWithMargins = True
131 | Left = 61
132 | Top = 13
133 | Width = 3
134 | Height = 25
135 | Margins.Top = 13
136 | Align = alLeft
137 | ExplicitHeight = 13
138 | end
139 | end
140 | end
141 | object pnl2: TPanel
142 | Left = 0
143 | Top = 41
144 | Width = 811
145 | Height = 479
146 | Align = alClient
147 | BevelOuter = bvNone
148 | TabOrder = 1
149 | object mmo1: TMemo
150 | Left = 0
151 | Top = 0
152 | Width = 811
153 | Height = 479
154 | Align = alClient
155 | Color = clNone
156 | Font.Charset = DEFAULT_CHARSET
157 | Font.Color = clLime
158 | Font.Height = -11
159 | Font.Name = 'Tahoma'
160 | Font.Style = []
161 | Lines.Strings = (
162 | 'mmo1')
163 | ParentFont = False
164 | TabOrder = 0
165 | end
166 | end
167 | object pnl3: TPanel
168 | Left = 0
169 | Top = 520
170 | Width = 811
171 | Height = 42
172 | Align = alBottom
173 | BevelOuter = bvNone
174 | TabOrder = 2
175 | object lblCopyRight: TLinkLabel
176 | AlignWithMargins = True
177 | Left = 6
178 | Top = 10
179 | Width = 802
180 | Height = 29
181 | Margins.Left = 6
182 | Margins.Top = 10
183 | Align = alClient
184 | Caption = 'lblCopyRight'
185 | Font.Charset = DEFAULT_CHARSET
186 | Font.Color = clWindowText
187 | Font.Height = -16
188 | Font.Name = 'Tahoma'
189 | Font.Style = [fsItalic]
190 | ParentFont = False
191 | TabOrder = 0
192 | ExplicitWidth = 94
193 | ExplicitHeight = 23
194 | end
195 | end
196 | object ApplicationEvents1: TApplicationEvents
197 | OnIdle = ApplicationEvents1Idle
198 | Left = 368
199 | Top = 200
200 | end
201 | object tmr1: TTimer
202 | Interval = 500
203 | OnTimer = tmr1Timer
204 | Left = 472
205 | Top = 208
206 | end
207 | end
208 |
--------------------------------------------------------------------------------
/demos/2_vcl/ufrmMainEx.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/2_vcl/ufrmMainEx.pas
--------------------------------------------------------------------------------
/demos/3_upload/HttpSysServerDemo.otares:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/3_upload/HttpSysServerDemo.otares
--------------------------------------------------------------------------------
/demos/3_upload/HttpSysServerDemo.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/3_upload/HttpSysServerDemo.res
--------------------------------------------------------------------------------
/demos/3_upload/HttpSysServerDemo.stat:
--------------------------------------------------------------------------------
1 | [Stats]
2 | EditorSecs=22
3 | DesignerSecs=1
4 | InspectorSecs=16
5 | CompileSecs=1
6 | OtherSecs=78
7 | StartTime=2018-07-21 12:39:06
8 | RealKeys=0
9 | EffectiveKeys=0
10 | DebugSecs=1
11 |
--------------------------------------------------------------------------------
/demos/3_upload/HttpSysServerUpload.dpr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/3_upload/HttpSysServerUpload.dpr
--------------------------------------------------------------------------------
/demos/3_upload/HttpSysServerUpload.dproj.local:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 1899/12/30 00:00:00.000.163,D:\__develop\delphi\__project_delphi\PnHttpSysServer\demos\3_upload\HttpSysServerDemo.dproj=D:\__develop\delphi\__project_delphi\PnHttpSysServer\demos\3_upload\HttpSysServerUpload.dproj
5 |
6 |
7 |
--------------------------------------------------------------------------------
/demos/3_upload/HttpSysServerUpload.identcache:
--------------------------------------------------------------------------------
1 | LD:\__develop2020\__project_delphi\PnHttpSysServer\demos\3_upload\uUpload.pas XD:\__develop2020\__project_delphi\PnHttpSysServer\demos\3_upload\HttpSysServerUpload.dpr
--------------------------------------------------------------------------------
/demos/3_upload/HttpSysServerUpload.mes:
--------------------------------------------------------------------------------
1 | [GeneralSettings]
2 | MesVersion=4
3 | HandleExceptions=0
4 | LinkInCode=1
5 | AppendMapFileToBinary=1
6 | NoOwnMadExceptSettings=0
7 | CheckFileCrc=1
8 | CheckForFrozenMainThread=0
9 | FreezeTimeout=60000
10 | ReportLeaks=1
11 | WindowsLogo=0
12 | CrashOnBuffer=0
13 | CrashOnUnderrun=0
14 | AutomaticallySaveBugReport=1
15 | AutoSaveBugReportIfNotSent=1
16 | AutomaticallyMailBugReport=0
17 | AutoMailProgressBox=0
18 | CopyBugReportToClipboard=0
19 | SuspendAllRunningThreads=0
20 | ShowPleaseWaitBox=1
21 | PleaseWaitIcon=plwait1
22 | AutomaticallyContinueApplication=0
23 | AutomaticallyRestartApplication=0
24 | AutomaticallyCloseApplication=0
25 | SendInBackground=1
26 | SendHelper=196608
27 | Send32Icon=send321
28 | UploadViaHttp=0
29 | HttpServer=
30 | HttpSsl=0
31 | HttpPort=0
32 | HttpAccount=
33 | HttpPassword=
34 | UploadToFogBugz=0
35 | UploadToBugZilla=0
36 | UploadToMantis=0
37 | BugTrackerAccount=
38 | BugTrackerPassword=
39 | BugTrackerProject=
40 | BugTrackerArea=
41 | BugTrackerAssignTo=
42 | MailAsSmtpServer=0
43 | MailAsSmtpClient=0
44 | SmtpServer=
45 | SmtpSsl=0
46 | SmtpTls=0
47 | SmtpPort=0
48 | SmtpAccount=
49 | SmtpPassword=
50 | MailViaMapi=1
51 | MailViaMailto=1
52 | MailAddress=
53 | BugReportFile=d:\bugreport.txt
54 | AttachBugReport=1
55 | AttachBugReportFile=1
56 | DeleteBugReportFile=1
57 | BugReportSendAs=bugreport.txt
58 | BugReportZip=
59 | ScreenShotDepth=8
60 | ScreenShotAppOnly=0
61 | ScreenShotSendAs=screenshot.png
62 | ScreenShotZip=
63 | AdditionalAttachments=
64 | AppendBugReports=1
65 | BugReportFileSize=0
66 | DontSaveDuplicateExceptions=0
67 | DontSaveDuplicateFreezings=0
68 | DuplicateExceptionDefinition=1
69 | DuplicateFreezeDefinition=2
70 | ShowExceptionBox=1
71 | OkBtnText=&OK
72 | DetailsBtnText=&Details
73 | PleaseWaitTitle=Information
74 | PleaseWaitText=Please wait a moment...
75 | BugTrackerTitle=%25appname%25, %25exceptMsg%25
76 | BugTrackerDescr=error details: %0d%0a%25errorDetails%25
77 | MailSubject=bug report
78 | MailBody=please find the bug report attached
79 | SendBoxTitle=Sending bug report...
80 | PrepareAttachMsg=Preparing attachments...
81 | MxLookupMsg=Searching for mail server...
82 | ConnectMsg=Connecting to server...
83 | SendMailMsg=Sending mail...
84 | FieldsMsg=Setting fields...
85 | SendAttachMsg=Sending attachments...
86 | SendFinalizeMsg=Finalizing...
87 | MailFailureMsg=Sorry, sending the bug report didn't work.
88 | VersionVariable=
89 | [ExceptionBox]
90 | ShowButtonMailBugReport=1
91 | ShowButtonSaveBugReport=1
92 | ShowButtonPrintBugReport=0
93 | ShowButtonShowBugReport=1
94 | ShowButtonContinueApplication=1
95 | ShowButtonRestartApplication=1
96 | ShowButtonCloseApplication=1
97 | IconButtonSendBugReport=send1
98 | IconButtonSaveBugReport=save1
99 | IconButtonPrintBugReport=print1
100 | IconButtonShowBugReport=show1
101 | IconButtonContinueApplication=continue1
102 | IconButtonCantContinueApplication=cantContinue1
103 | IconButtonRestartApplication=restart1
104 | IconButtonCloseApplication=close1
105 | FocusedButton=0
106 | SendAssistant=SendAssistant
107 | SaveAssistant=SaveAssistant
108 | PrintAssistant=PrintAssistant
109 | AutomaticallyShowBugReport=0
110 | NoOwnerDrawButtons=0
111 | BigExceptionIcon=big1
112 | TitleBar=%25appname%25
113 | ExceptionMessage=An error occurred in the application.
114 | FrozenMessage=The application seems to be frozen.
115 | BitFaultMsg=The file "%25modname%25" seems to be corrupt!
116 | MailBugReportText=send bug report
117 | SaveBugReportText=save bug report
118 | PrintBugReportText=print bug report
119 | ShowBugReportText=show bug report
120 | ContinueApplicationText=continue application
121 | RestartApplicationText=restart application
122 | CloseApplicationText=close application
123 | [BugReport]
124 | ListThreads=1
125 | ListModules=1
126 | ListHardware=1
127 | ShowCpuRegisters=1
128 | ShowStackDump=1
129 | Disassembly=1
130 | HideUglyItems=0
131 | ShowRelativeAddrs=1
132 | ShowRelativeLines=1
133 | FormatDisassembly=0
134 | LimitDisassembly=5
135 | EnabledPlugins=modules|processes|hardware
136 | [Filters]
137 | Filter1ExceptionClasses=EDBEditError
138 | Filter1DontCreateBugReport=0
139 | Filter1DontCreateScreenshot=0
140 | Filter1DontSuspendThreads=0
141 | Filter1DontCallHandlers=0
142 | Filter1ShowBox=0
143 | Filter1Assis=
144 | Filter2ExceptionClasses=
145 | Filter2DontCreateBugReport=0
146 | Filter2DontCreateScreenshot=0
147 | Filter2DontSuspendThreads=0
148 | Filter2DontCallHandlers=0
149 | Filter2ShowBox=0
150 | Filter2Assis=
151 | GeneralDontCreateBugReport=0
152 | GeneralDontCreateScreenshot=0
153 | GeneralDontSuspendThreads=0
154 | GeneralDontCallHandlers=0
155 | GeneralShowBox=0
156 | GeneralAssis=
157 | [Assistants]
158 | Assistant1=SendAssistant|Send Assistant|ContactForm|DetailsForm|ScrShotForm
159 | Assistant2=SaveAssistant|Save Assistant|ContactForm|DetailsForm
160 | Assistant3=PrintAssistant|Print Assistant|ContactForm|DetailsForm
161 | Forms1=TPF0%0eTMEContactForm%0bContactForm%07Message%0c%13%00%00%00Contact Information%08MinWidth%04%00%00%00%00%08OnAction%0c%1b%00%00%00madExcept.HandleContactForm%05Timer%04%00%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%08%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%08INVLabel%06Label1%07Caption%0c%0a%00%00%00your name:%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%08NameEdit%07Colored%09%07Enabled%09%05Lines%04%01%00%00%00%08Optional%09%0aOutputName%0c%0c%00%00%00contact name%0aOutputType%07%09nvoHeader%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%08INVLabel%06Label2%07Caption%0c%0b%00%00%00your email:%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%09EmailEdit%07Colored%09%07Enabled%09%05Lines%04%01%00%00%00%08Optional%08%0aOutputName%0c%0d%00%00%00contact email%0aOutputType%07%09nvoHeader%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%0bINVCheckBox%08MemCheck%07Caption%0c%0b%00%00%00remember me%07Checked%08%07Enabled%09%0aOutputName%0c%00%00%00%00%07Spacing%04%00%00%00%00%00%00%00
162 | Forms2=TPF0%0eTMEDetailsForm%0bDetailsForm%07Message%0c%0d%00%00%00Error Details%08MinWidth%04%00%00%00%00%08OnAction%0c%00%00%00%00%05Timer%04%00%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%08INVLabel%06Label1%07Caption%0c,%00%00%00what were you doing when the error occurred?%07Enabled%09%07Spacing%04%00%00%00%00%00%00%07INVEdit%0bDetailsMemo%07Colored%09%07Enabled%09%05Lines%04%09%00%00%00%08Optional%08%0aOutputName%0c%0d%00%00%00error details%0aOutputType%07%0dnvoOwnSection%07Spacing%04%00%00%00%00%04Text%0c%00%00%00%00%05Valid%09%00%00%00
163 | Forms3=TPF0%0eTMEScrShotForm%0bScrShotForm%0dActiveControl%07%0bContinueBtn%07Message%0c%18%00%00%00Screenshot Configuration%08MinWidth%04%00%00%00%00%08OnAction%0c%1e%00%00%00madExcept.HandleScreenshotForm%05Timer%04?%00%00%00%00%09INVButton%0bContinueBtn%07Caption%0c%08%00%00%00Continue%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%07SkipBtn%07Caption%0c%04%00%00%00Skip%07Enabled%08%0bNoOwnerDraw%08%07Visible%09%00%00%09INVButton%09CancelBtn%07Caption%0c%06%00%00%00Cancel%07Enabled%09%0bNoOwnerDraw%08%07Visible%09%00%00%0bINVCheckBox%0bAttachCheck%07Caption%0c%25%00%00%00attach a screenshot to the bug report%07Checked%09%07Enabled%09%0aOutputName%0c%00%00%00%00%07Spacing%04%00%00%00%00%00%00%08INVImage%0aScrShotImg%06Border%09%09Clickable%09%07Enabled%09%04File%0c%00%00%00%00%06Height%04%00%00%00%00%07Spacing%04%00%00%00%00%05Width%04%00%00%00%00%00%00%08INVLabel%06Label1%07Caption%0c%15%00%00%00(click to edit image)%07Enabled%09%07Spacing%04%00%00%00%00%00%00%00
164 |
--------------------------------------------------------------------------------
/demos/3_upload/HttpSysServerUpload.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/3_upload/HttpSysServerUpload.res
--------------------------------------------------------------------------------
/demos/3_upload/HttpSysServerUpload.stat:
--------------------------------------------------------------------------------
1 | [Stats]
2 | EditorSecs=1291
3 | DesignerSecs=1
4 | InspectorSecs=1
5 | CompileSecs=61054
6 | OtherSecs=257
7 | StartTime=2018-07-21 17:12:45
8 | RealKeys=0
9 | EffectiveKeys=0
10 | DebugSecs=78
11 |
--------------------------------------------------------------------------------
/demos/3_upload/uUpload.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pony5551/PnHttpSysServer/83550b95edf3924b689d22a9a5751c0667854508/demos/3_upload/uUpload.pas
--------------------------------------------------------------------------------
/demos/PnHttpSysGroup1.groupproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {4ADE10E8-12A2-4E02-B60E-52554BF6CD06}
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 | Default.Personality.12
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/demos/PnHttpSysGroup1.groupproj.local:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 1899/12/30 00:00:00.000.782,C:\Users\pony\Documents\Embarcadero\Studio\Projects\ProjectGroup1.groupproj=D:\__develop\delphi\__project_delphi\PnHttpSysServer\demos\PnHttpSysGroup1.groupproj
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/demos/PnHttpSysGroup1_prjgroup.tvsconfig:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/demos/bin/www/AUTHORS.txt:
--------------------------------------------------------------------------------
1 | Authors ordered by first contribution
2 | A list of current team members is available at http://jqueryui.com/about
3 |
4 | Paul Bakaus
5 | Richard Worth
6 | Yehuda Katz
7 | Sean Catchpole
8 | John Resig
9 | Tane Piper
10 | Dmitri Gaskin
11 | Klaus Hartl
12 | Stefan Petre
13 | Gilles van den Hoven
14 | Micheil Bryan Smith
15 | Jörn Zaefferer
16 | Marc Grabanski
17 | Keith Wood
18 | Brandon Aaron
19 | Scott González
20 | Eduardo Lundgren
21 | Aaron Eisenberger
22 | Joan Piedra
23 | Bruno Basto
24 | Remy Sharp
25 | Bohdan Ganicky
26 | David Bolter
27 | Chi Cheng
28 | Ca-Phun Ung
29 | Ariel Flesler
30 | Maggie Wachs
31 | Scott Jehl
32 | Todd Parker
33 | Andrew Powell
34 | Brant Burnett
35 | Douglas Neiner
36 | Paul Irish
37 | Ralph Whitbeck
38 | Thibault Duplessis
39 | Dominique Vincent
40 | Jack Hsu
41 | Adam Sontag
42 | Carl Fürstenberg
43 | Kevin Dalman
44 | Alberto Fernández Capel
45 | Jacek Jędrzejewski (http://jacek.jedrzejewski.name)
46 | Ting Kuei
47 | Samuel Cormier-Iijima
48 | Jon Palmer
49 | Ben Hollis
50 | Justin MacCarthy
51 | Eyal Kobrigo
52 | Tiago Freire
53 | Diego Tres
54 | Holger Rüprich
55 | Ziling Zhao
56 | Mike Alsup
57 | Robson Braga Araujo
58 | Pierre-Henri Ausseil
59 | Christopher McCulloh
60 | Andrew Newcomb
61 | Lim Chee Aun
62 | Jorge Barreiro
63 | Daniel Steigerwald
64 | John Firebaugh
65 | John Enters
66 | Andrey Kapitcyn
67 | Dmitry Petrov
68 | Eric Hynds
69 | Chairat Sunthornwiphat
70 | Josh Varner
71 | Stéphane Raimbault
72 | Jay Merrifield
73 | J. Ryan Stinnett
74 | Peter Heiberg
75 | Alex Dovenmuehle
76 | Jamie Gegerson
77 | Raymond Schwartz
78 | Phillip Barnes
79 | Kyle Wilkinson
80 | Khaled AlHourani
81 | Marian Rudzynski
82 | Jean-Francois Remy
83 | Doug Blood
84 | Filippo Cavallarin
85 | Heiko Henning
86 | Aliaksandr Rahalevich
87 | Mario Visic
88 | Xavi Ramirez
89 | Max Schnur
90 | Saji Nediyanchath
91 | Corey Frang
92 | Aaron Peterson
93 | Ivan Peters
94 | Mohamed Cherif Bouchelaghem
95 | Marcos Sousa
96 | Michael DellaNoce
97 | George Marshall
98 | Tobias Brunner
99 | Martin Solli
100 | David Petersen
101 | Dan Heberden
102 | William Kevin Manire
103 | Gilmore Davidson
104 | Michael Wu
105 | Adam Parod
106 | Guillaume Gautreau
107 | Marcel Toele
108 | Dan Streetman
109 | Matt Hoskins
110 | Giovanni Giacobbi
111 | Kyle Florence
112 | Pavol Hluchý
113 | Hans Hillen
114 | Mark Johnson
115 | Trey Hunner
116 | Shane Whittet
117 | Edward A Faulkner
118 | Adam Baratz
119 | Kato Kazuyoshi
120 | Eike Send
121 | Kris Borchers
122 | Eddie Monge
123 | Israel Tsadok
124 | Carson McDonald
125 | Jason Davies
126 | Garrison Locke
127 | David Murdoch
128 | Benjamin Scott Boyle
129 | Jesse Baird
130 | Jonathan Vingiano
131 | Dylan Just
132 | Hiroshi Tomita
133 | Glenn Goodrich
134 | Tarafder Ashek-E-Elahi
135 | Ryan Neufeld
136 | Marc Neuwirth
137 | Philip Graham
138 | Benjamin Sterling
139 | Wesley Walser
140 | Kouhei Sutou
141 | Karl Kirch
142 | Chris Kelly
143 | Jason Oster
144 | Felix Nagel
145 | Alexander Polomoshnov
146 | David Leal
147 | Igor Milla
148 | Dave Methvin
149 | Florian Gutmann
150 | Marwan Al Jubeh
151 | Milan Broum
152 | Sebastian Sauer
153 | Gaëtan Muller
154 | Michel Weimerskirch
155 | William Griffiths
156 | Stojce Slavkovski
157 | David Soms
158 | David De Sloovere
159 | Michael P. Jung
160 | Shannon Pekary
161 | Dan Wellman
162 | Matthew Edward Hutton
163 | James Khoury
164 | Rob Loach
165 | Alberto Monteiro
166 | Alex Rhea
167 | Krzysztof Rosiński
168 | Ryan Olton
169 | Genie <386@mail.com>
170 | Rick Waldron
171 | Ian Simpson
172 | Lev Kitsis
173 | TJ VanToll
174 | Justin Domnitz
175 | Douglas Cerna
176 | Bert ter Heide
177 | Jasvir Nagra
178 | Yuriy Khabarov <13real008@gmail.com>
179 | Harri Kilpiö
180 | Lado Lomidze
181 | Amir E. Aharoni
182 | Simon Sattes
183 | Jo Liss
184 | Guntupalli Karunakar
185 | Shahyar Ghobadpour
186 | Lukasz Lipinski
187 | Timo Tijhof
188 | Jason Moon
189 | Martin Frost
190 | Eneko Illarramendi
191 | EungJun Yi
192 | Courtland Allen
193 | Viktar Varvanovich
194 | Danny Trunk
195 | Pavel Stetina
196 | Michael Stay
197 | Steven Roussey
198 | Michael Hollis
199 | Lee Rowlands
200 | Timmy Willison
201 | Karl Swedberg
202 | Baoju Yuan
203 | Maciej Mroziński
204 | Luis Dalmolin
205 | Mark Aaron Shirley
206 | Martin Hoch
207 | Jiayi Yang
208 | Philipp Benjamin Köppchen
209 | Sindre Sorhus
210 | Bernhard Sirlinger
211 | Jared A. Scheel
212 | Rafael Xavier de Souza
213 | John Chen
214 | Robert Beuligmann
215 | Dale Kocian
216 | Mike Sherov
217 | Andrew Couch
218 | Marc-Andre Lafortune
219 | Nate Eagle
220 | David Souther
221 | Mathias Stenbom
222 | Sergey Kartashov
223 | Avinash R
224 | Ethan Romba
225 | Cory Gackenheimer
226 | Juan Pablo Kaniefsky
227 | Roman Salnikov
228 | Anika Henke
229 | Samuel Bovée
230 | Fabrício Matté
231 | Viktor Kojouharov
232 | Pawel Maruszczyk (http://hrabstwo.net)
233 | Pavel Selitskas
234 | Bjørn Johansen
235 | Matthieu Penant
236 | Dominic Barnes
237 | David Sullivan
238 | Thomas Jaggi
239 | Vahid Sohrabloo
240 | Travis Carden
241 | Bruno M. Custódio
242 | Nathanael Silverman
243 | Christian Wenz
244 | Steve Urmston
245 | Zaven Muradyan
246 | Woody Gilk
247 | Zbigniew Motyka
248 | Suhail Alkowaileet
249 | Toshi MARUYAMA
250 | David Hansen
251 | Brian Grinstead
252 | Christian Klammer
253 | Steven Luscher
254 | Gan Eng Chin
255 | Gabriel Schulhof
256 | Alexander Schmitz
257 | Vilhjálmur Skúlason
258 | Siebrand Mazeland
259 | Mohsen Ekhtiari
260 | Pere Orga
261 | Jasper de Groot
262 | Stephane Deschamps