Lazarus
Home
Help
TinyPortal
Search
Login
Register
Lazarus
»
Forum
»
Programming
»
Networking and Web Programming
»
How to terminate a THttpAplication?
Free Pascal
Website
Downloads
Wiki
Documentation
Bugtracker
Mailing List
Lazarus
Website
Downloads (Laz+FPC)
Packages (OPM)
FAQ
Wiki
Documentation (RTL/FCL/LCL)
Bugtracker
CCR Bugs
GIT
Mailing List
Other languages
Foundation
Website
Useful Wiki Links
Project Roadmap
Getting the Source
Screenshots
How to use the forum
About donations (wiki)
Bookstore
Computer Math and Games in Pascal
(preview)
Lazarus Handbook
Search
Advanced search
Recent
[SOLVED] Copy the content...
by
Zoran
[
Today
at 09:26:38 pm]
Reading tBitmap data is e...
by
jollytall
[
Today
at 08:54:43 pm]
Broken Icon Display on ma...
by
lainz
[
Today
at 07:53:29 pm]
Problems with case statem...
by
MarkMLl
[
Today
at 06:30:23 pm]
Bitmap 16bit R5G6B5
by
circular
[
Today
at 06:27:07 pm]
DBGRID | Picklist on fiel...
by
bourbon
[
Today
at 05:58:04 pm]
Assigning result of a fun...
by
Thaddy
[
Today
at 05:41:03 pm]
Listview how to custom or...
by
jenson
[
Today
at 05:36:20 pm]
Regular expressions in In...
by
carl_caulkett
[
Today
at 05:20:54 pm]
An exception occurred whi...
by
Laksen
[
Today
at 05:07:49 pm]
Gridprinter Newby
by
wp
[
Today
at 05:05:28 pm]
Sqlite tips leak dll usag...
by
jenson
[
Today
at 04:11:18 pm]
Launching exe in a Teams-...
by
Zvoni
[
Today
at 02:00:16 pm]
LazSerial how validate ch...
by
TRon
[
Today
at 01:54:19 pm]
Poll: Watches and Display...
by
DarioGL
[
Today
at 01:22:23 pm]
Golang vs free pascal
by
gidesa
[
Today
at 01:07:51 pm]
Extended Module Player
by
Fred vS
[
Today
at 11:57:51 am]
How do you move a Procedu...
by
alpine
[
Today
at 11:32:56 am]
How to use newer macOS SD...
by
Hansaplast
[
Today
at 11:19:59 am]
fpga programming with an ...
by
MarkMLl
[
Today
at 10:48:07 am]
New Swagger/OpenAPI Clien...
by
PierceNg
[
Today
at 09:58:24 am]
Integer maths > 16 bits
by
MarkMLl
[
Today
at 08:49:10 am]
FPReport QRCode
by
dseligo
[September 15, 2024, 11:33:44 pm]
Fractal using Primes (and...
by
VisualLab
[September 15, 2024, 09:54:33 pm]
TTimer in class does not ...
by
PascalDragon
[September 15, 2024, 09:33:05 pm]
« previous
next »
Print
Pages: [
1
]
Author
Topic: How to terminate a THttpAplication? (Read 832 times)
zen010101
Newbie
Posts: 4
How to terminate a THttpAplication?
«
on:
July 17, 2024, 07:54:44 pm »
My program wants to exit normally after Ctrl-C is pressed, but I haven't been able to accomplish this under FPC 3.22/3.3.1. The following is a sample program fragment from the official (...\fpcsrc\packages\fcl-web\examples\httpapp, I only added the code to respond to Ctrl-C)
Code: Pascal
[Select]
[+]
[-]
procedure
signalHandler
(
signum
:
cint
)
;
cdecl
;
begin
if
(
signum
=
SIGTERM
)
or
(
signum
=
SIGINT
)
then
begin
Writeln
(
'Exiting'
)
;
Application
.
Terminate
;
// can not quit the application
//Raise Exception.Create('EXIT THE APPLICATION'); // this can exit the THttpApplication normally, you will see 'Done' output to the console.
end
;
end
;
begin
// Register SignalHandler
fpSignal
(
SIGINT
,
@
signalHandler
)
;
.
.
.
Application
.
Initialize
;
Application
.
Port
:
=
StrTointDef
(
ParamStr
(
2
)
,
8384
)
;
Application
.
Title
:
=
'HTTP Demo application'
;
Application
.
Run
;
Writeln
(
'Done'
)
;
end
.
I noticed a bug report which was committed 4 years ago (
https://gitlab.com/freepascal.org/fpc/source/-/issues/36741#original-reporter-info-from-mantis-luca-olivlucareporter-name-luca-olivetti
), but until now it is still there too.
«
Last Edit: July 20, 2024, 07:59:52 pm by zen010101
»
Logged
PascalDragon
Hero Member
Posts: 5649
Compiler Developer
Re: How to terminate a THttpAplication?
«
Reply #1 on:
July 18, 2024, 09:31:03 pm »
Quote from: zen010101 on July 17, 2024, 07:54:44 pm
```pascal
[...]
```
The forum does not use Markdown, but BBCodes, in this case [code=pascal][/code].
Logged
Print
Pages: [
1
]
« previous
next »
Lazarus
»
Forum
»
Programming
»
Networking and Web Programming
»
How to terminate a THttpAplication?
TinyPortal
© 2005-2018