Thank you for the detailed description. It does make sense.
I have done enough with multithreading myself to know it can be a bother to implement, but does have its rewards.
There is one solution though, i see, that makes sense... and that would be, what if you gave the option, in a
mIRC command-line to remove (or just not add) (or not process) the global CTRL+BREAK hook/procedure.
so like you did with -noreg and -portable :
That way we could have the best of both worlds... typical users will be able to enjoy the soft breaks offered by
ctrl+break in its default state.
and then, more advanced users, would have the warning and expectation, that if anything does go wrong in their
script, that they can expect a hard close of the mIRC program. (and to be more careful)
I did manage to circumvent this issue using Windows 10's sandbox, but that it is far from an ideal solution.
as the vm sandbox is a bit clunky to work with.
If none of this is possible, and you still can't entertain the idea above... could you tell me what C function/hook or
registry modification is involved with the global break ?
[Optional Reading, about my mIRC project]
My script i've created, it scans through all the lines in a "workspace folder" , and then it determines how many (if any)
lines have been appended, to give a rough determination of code lines changed. I'm sure i could program all of this in
low-level languages, but i really do enjoy the ease of use of the mIRC interface you've created, and you've made file
handling operations a comfort. All of this comes crashing down though, if when i am working in python and i have to
CTRL+break out of the program, and while i have already setup key handling to work with Ctrl+C , there are inevitably
times that Ctrl+Break is the only way out.
It is curious though that....while you say that mIRC has "global breaks" in the desktop environment, i've noticed that
when certain windows are open, it doesn't seem to be registering the ctrl+break outside of those programs, probably
due to some internal key handling of those particular programs.
Either way, i know this issue has been a pain, but i do think there has got to be a simple fix that would satisfy everyone.
a simple command-line option to remove the training wheels, is one quick fix.
Keep up the good work khaled, lol sorry to bring such an annoying issue to you.
really respect and enjoy what you've created here. Have enjoyed mIRC for almost 20 years now.