topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • November 20, 2018, 10:28 PM
  • Proudly celebrating 13 years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: [N.A.N.Y. 2019] - Process Lister [status=done]  (Read 1101 times)

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
[N.A.N.Y. 2019] - Process Lister [status=done]
« on: October 21, 2018, 11:55 AM »
Hello Community,
maby some of you might find this tool useful too.
I did it for myself, i just had 3 things in mind that i have successful brought to code and finally to display :-)

This tool enumerates all loaded processes and list them with
- Full Filepath + Name
- Process ID
- Process Creation Time (<- that was my basic intention)

Requirements:
Windows

Sample View:
ProcList.jpg[N.A.N.Y. 2019] - Process Lister [status=done]

(You will need 7zip to extract file)
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.
« Last Edit: October 21, 2018, 05:10 PM by KodeZwerg »

skwire

  • Global Moderator
  • Joined in 2005
  • *****
  • Posts: 5,014
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #1 on: October 21, 2018, 01:42 PM »
Nicely done.  I gave it a quick test and it seems to work as described.  Some random thoughts:

  • Don't autosize the column widths
  • Allow sorting of the columns
  • Add a statusbar to the GUI so the resize gripper in the lower right is larger.

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #2 on: October 21, 2018, 02:05 PM »
Nicely done.  I gave it a quick test and it seems to work as described.  Some random thoughts:

  • Don't autosize the column widths
  • Allow sorting of the columns
  • Add a statusbar to the GUI so the resize gripper in the lower right is larger.
No autosize = no problem :)
Sorting, a slight problem there might be if I add sorting for creation time, I will do my best
Statusbar = no problem :)

any other wishes/functions can be added if you name them :)
to me just PID and Time was important, rest just to fill screen hehehe
*just right now finished adding proper icons; if that would be a wish; its done*
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #3 on: October 21, 2018, 05:09 PM »
I put some love into that project.

This is what you await:
Screenshot - 21_10 002.jpg[N.A.N.Y. 2019] - Process Lister [status=done]

I respected your wishes in a good way me hopes that really.

New features:
- Columns have up/down sorting ability (each header got own mechanic) by clicking on its header
- StatusBar with some info text and a sizegrip

Removed features:
- Column auto-sizing
- "Refresh" button (moved to statusbar)
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.
« Last Edit: October 21, 2018, 06:52 PM by KodeZwerg »

skwire

  • Global Moderator
  • Joined in 2005
  • *****
  • Posts: 5,014
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #4 on: October 21, 2018, 06:38 PM »
Looking good and working fine on my Windows 7 box.

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #5 on: October 21, 2018, 06:54 PM »
Looking good and working fine on my Windows 7 box.
No, you where right with that ugly button. That said here is a better one :-)
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.

IainB

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 7,258
  • Slartibartfarst
    • View Profile
    • Read more about this member.
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #6 on: October 22, 2018, 02:35 AM »
@KodeZwerg: Thanks for this.
My feedback: ergonomically, it's unusable for my purposes as the font size is kinda microscopic. I'm somewhat vision impaired - I'd need a magnifier to read the printed characters in the ProcessLister GUI.

One of the reasons I lurve @mouser's excellent CHS (Clipboard Help and Spell) is that all the GUI display fonts have adjustable settings for type, size and colour, and background colour. That makes CHS eminently usable from my perspective - though the CHS option settings panels have fonts that are as bad, if not worse, than those in the ProcessLister GUI (grumble, grumble).
Refer: Improving the ergonomic readability on laptop screen displays - Tips and Tricks.

By the way, ProcessHacker similarly has options to fully adjust the fonts in the GUI - makes it a joy to use, for me.

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #7 on: October 22, 2018, 03:01 AM »
Thank you IanB for feedback.
I admit, I just tested if my app will grow if DPI on system changed (created @ 100% = 96dpi), on 150% Dpi set all is bigger.

I hoped not to do, but okay, will implement a configuration with chooseable Font.
I do not OwnerDraw that listview, so one font for all must be okay then. (not column X = font X)
Dark theme for better contrast will be also find a way into that app.

A button to terminate a process might also be included in next release.
(processhacker i also use but never needed that option to change fonts, neither for SC)

I respect your wish and will work on that.
For now, me will read your Tips&Tricks Thread and see what I can do to realize everything in a good manner.

To all other interested, now would be a good time to tell any wishes, will do my best to make them reality.



Regards,

KodeZwerg
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.

IainB

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 7,258
  • Slartibartfarst
    • View Profile
    • Read more about this member.
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #8 on: October 22, 2018, 03:42 AM »
@KodeZwerg:
...For now, me will read your Tips&Tricks Thread and see what I can do to realize everything in a good manner. ...
Thanks! Please don't feel you have to fix it to meet my requirements, but I shall be interested in what you come up with.
By the way, changing the DPI scaling seems to be of zero use, as you may gather from reading the thread I linked to.

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #9 on: October 22, 2018, 03:57 AM »
Since I released for public, public must be satisfied. I do it with passion and be glad to do, no worry :-)
This time it might need a bit longer to implement everything whats flying in my head around plus read/understand/adopt your tips thread.
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #10 on: October 23, 2018, 05:48 AM »
Dear IanB,

I have read your thread and understood the problematic (me hopes),

since you are the first person that requested such from me, and this is a new situation for me,
I have tried to make your wish come true by adding a scaling option instead of a Font Dialog.

I would like to know if that would be acceptable to vision impaired people or if this is wrong direction that I go.

Here you will find latest build for testing purposes.
No configuration save is included yet, me needs info if that would be okay or wrong.

Thanks for reading and please give feedback!

/edit

Manual:
Open the .exe, now there is a menu inside that is a Configuration, into that is a Scaling wich contain:
Default = 100%, Double = 200%, Quattro = 400%

If my direction is good and you need other % values, let me know that.


Known Bugs that be fixed soon:
If running in scaled mode, statusbar panel show wrong dimension for the buttons.
Button Terminate does nothing right now, just a placeholder for next release.

Planned Things:
Font Dialog (only to switch font, not to modify font values like size) or plain Color changer... i dont know yet
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.
« Last Edit: October 23, 2018, 06:26 AM by KodeZwerg »

IainB

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 7,258
  • Slartibartfarst
    • View Profile
    • Read more about this member.
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister - Requirements?
« Reply #11 on: October 23, 2018, 07:57 PM »
@KodeZwerg:
For me, the double-sized print is very legible - a bit too big maybe - and the quad-sized print is humungous, but there would probably be many people with severe visual impairment who could be glad to have that size and who might otherwise usually have to rely on the Windows Magnifier tool.

In terms of providing a process/task listing though, ProcessLister would seem to fall well behind a pack of some already-established and serious contenders - e.g., including:
  • Windows TaskManager,
  • SysInternals ProcessExplorer
  • Wn Jia Liu's ProcessHacker
- the latter is the one I prefer to use as it best meets my peculiar ergonomic needs as well as my user requirements for a process/task manager.

And that is the point, really - i.e., what are one's user requirements?
From training in systems analysis, I would usually tag user business requirements in a systematic manner, using the ABC prioritisation method, where:
  • A = Mandatory (Urgent and Important)
  • B = Highly desirable (Important, but NOT Urgent)
  • C = Nice-to-have (Neither Important NOR Urgent)
(Anything outside of these 3 classes is purely imaginary and not related to an operational  business need/requirement per se.)

I don't really have a defined set of "business/user requirements" for ProcessLister per se, but if I did, then it would match the user requirements that I might have and which had been met/exceeded by ProcessHacker. Though I use the thing on a daily basis and it is an invaluable tool for monitoring and managing the operation of the Windows system, it is still just a utility - a useful tool - and I do not consider it worthwhile to sit down and define/document those requirements. I have found by trialling the above tools that ProcessHacker seems to be the most useful tool for my peculiar purposes, but someone else might have different requirements/purposes, so it might not be so useful to those people - i.e., YMMV (Your Mileage May Vary).

By the way, because PIM (Personal Information Management) is a very important matter for me in my personal and work life, I have defined and documented my requirements - e.g., in evaluating CHS (Clipboard Help and Spell) I applied the above method:
@mouser - by the way, there is still this: User Requirements for CHS

It could be used to save repetition by different/new CHS users. I put quite a bit of effort into that. Have not updated it in ages as no-one seemed interested. I think I left it as public and editable.
- which has apparently caused some readers to experience such traumatic mind-expansion and neural damage that it induces a temporary state of profound sleep from which the reader awakens with a complete loss of memory of ever having seen it in the first place. (This is the way Nature helps us to recover from traumatic experiences.)

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #12 on: October 24, 2018, 12:39 AM »
Hello again, thank you for testing.
To me it was a test if scaling would be okay instead of letting user decide a font/size. (that would lead to text that dont fit into space)
Kind of a challenge to proof that scaling (playing with DPI/PPI) works since you mentioned that it aint good :-]

ProcessHacker is on by default on my system. (best monitoring tool in my humble opinion)
ProcessLister aint a monitoring tool yet, and might never be.

I did not want to be in competition to other monitoring/task manager like tools.

My tool does what I miss on all tools you named or I might have not found proper switch/setting.
It display Process Creation time, so I know when wich process has started ergo if a process fail I might be able to check if a process thats later loaded does harm another process. (conflict checking)
ProcessExplorer BTW does have that feature but on Windows 10 I somehow cannot terminate processes with that tool anymore.

200%/400% where just test values to check if it met requirement at all.

Thank you for your feedback!
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.

IainB

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 7,258
  • Slartibartfarst
    • View Profile
    • Read more about this member.
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #13 on: October 24, 2018, 05:34 AM »
@KodeZwerg:
Thankyou.
...Kind of a challenge to proof that scaling (playing with DPI/PPI) works since you mentioned that it aint good :-]  ...
Now that's rather interesting. What it seems to imply is that scaling at the OS level may be broken somehow.
Tell me:
  • Instead of stepped scaling (e.g., at doubled or quadrupled steps), are you able to make the scaling gradual and incrementally variable between lower and upper limits, through rolling the mousewheel? (Zoom in, zoom out.)
  • If you can do that, can you apply it to work on any open window in other applications? (For an interesting example, try to zoom in/out using Ctrl+mousewheel on the Windows Desktop.)

On another subject, if you can display the "new" information re Process Creation time, could you also display columns which provide:
  • (a) the current Running Time for currently running processes - i.e., the dynamic calculated result of current time minus Process Creation time?
  • (b) the total running time of historical processes (in this session) which had earlier started and now have stopped?
That could be quite useful information.

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #14 on: October 24, 2018, 03:42 PM »
Tell me:
  • Instead of stepped scaling (e.g., at doubled or quadrupled steps), are you able to make the scaling gradual and incrementally variable between lower and upper limits, through rolling the mousewheel? (Zoom in, zoom out.)
The first thing that i would come up with would be something like a slider, as maby seen on some mediaplayers, if you hover over slider (timeline in player) you jump back-/forward, or volume up/down.
Is that what you mean? I can set scaling to any percentage decimal value 0%-unlimited (idk maximum)

  • If you can do that, can you apply it to work on any open window in other applications? (For an interesting example, try to zoom in/out using Ctrl+mousewheel on the Windows Desktop.)
I am sorry, that aint possible. I can just tweak my own code within its framework (Delphi/Vcl in my case)
If there exists an Api from Microsoft, what i dont know yet, than it is possible.
The code i use comes not from OS, it is part of my programming language.


On another subject, if you can display the "new" information re Process Creation time, could you also display columns which provide:
  • (a) the current Running Time for currently running processes - i.e., the dynamic calculated result of current time minus Process Creation time?
  • (b) the total running time of historical processes (in this session) which had earlier started and now have stopped?
That could be quite useful information.
From Api i can get Creation-, Exit-, Kernel- & User Time. Sure i can display them. Will be included in next release.
Special calculations i can add after them aswell.
And hopefully a configuration to turn them on/off :-)

Closed processes would be gone. No remember thing avail yet. I sure could collect Data and put it in a Database to Display like a logging feature.
But this would end as a monitoring tool, what in no case my intention is to do. Or at least until now. I will put on ToDo but make no promises.
By thinking about... it would end in a small mess i guess, since a process can be opened several times.
Like your Webbrowser does.... wich process to track? I think i do not support such function.
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.
« Last Edit: October 24, 2018, 03:48 PM by KodeZwerg »

IainB

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 7,258
  • Slartibartfarst
    • View Profile
    • Read more about this member.
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #15 on: October 24, 2018, 09:46 PM »
@KodeZwerg:
The first thing that i would come up with would be something like a slider, as maby seen on some mediaplayers, if you hover over slider (timeline in player) you jump back-/forward, or volume up/down.
Is that what you mean? I can set scaling to any percentage decimal value 0%-unlimited (idk maximum)
Well, I was thinking in terms of the variable mousewheel zoom - as per the example suggested ("try to zoom in/out using Ctrl+mousewheel on the Windows Desktop.").
Ergonomically, a slider might not be granular enough, making it "jumpy" and a PITA to use.

The other things were just me putting some ideas up - I figured they might be useful.
I actually had assumed (incorrectly, it seems) that you were probably heading in the direction of building a different kind of mousetrap to the ProcessHacker etc.
Given that that is apparently not your intention, had you considered contributing your extra column idea to the ProcessHacker project at https://processhacker.sourceforge.io/  ?

KodeZwerg

  • Honorary Member
  • Joined in 2018
  • **
  • Posts: 327
    • View Profile
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #16 on: October 25, 2018, 04:44 AM »
"try to zoom in/out using Ctrl+mousewheel"
Understood, thank you for feedback on that specific topic (i've read them first as two seperated/splitted/single points that not connected)
I am glad to find out how to trap that combination and will include that in next release.

/edit
Question: Should I include a min/max limiter? Like not scaling lower than 50% (if you downscale) or 500% (for upscale)
(100% is always my default 96dpi 1:1 original interface)

had you considered contributing your extra column idea to the ProcessHacker project at https://processhacker.sourceforge.io/  ?
I have to say: No.
Since I liked to learn/find out the "how-to" part, I did not realised that this could also be an option to me  :-[



Regards,

KodeZwerg
sorry bad english and Delphi are my hobby ;)
politeness is not one of my strengths in writing, just because it sounds rough doesn't mean that I mean it rough.

IainB

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 7,258
  • Slartibartfarst
    • View Profile
    • Read more about this member.
    • Donate to Member
Re: [N.A.N.Y. 2019] - Process Lister [status=done]
« Reply #17 on: October 26, 2018, 04:37 AM »
@KodeZwerg:
Question: Should I include a min/max limiter? Like not scaling lower than 50% (if you downscale) or 500% (for upscale)
(100% is always my default 96dpi 1:1 original interface)
Well, upper/lower control limits would seem to be appropriate. You don't really want them to go to infinity, I presume.