Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


What Should a Process List Module Include?

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine Lua Scripting
View previous topic :: View next topic  
Author Message
AylinCE
Grandmaster Cheater Supreme
Reputation: 36

Joined: 16 Feb 2017
Posts: 1511

PostPosted: Fri Jul 18, 2025 8:40 am    Post subject: What Should a Process List Module Include? Reply with quote

I've been working on a ProcessList module that's not very different.

But sometimes ideas get stuck.
Before publishing the current version in a related article, I discussed some technical issues with DarkByte and received solutions.





We need your feedback on functionality.
The version in the image will give you an idea of some of the features.

What the current version does:
1) Displays process IDs in decimal and hexadecimal format.
2) Shows the memory consumed by the application. (From top to bottom, high to low)
3) Prints a caption or title, if applicable.
4) The process list can be filtered and listed by a specific program or text.
5) The list can be updated optionally.
6) The selected process can be killed. (Forces the application to close.)
7) The selected process connects to CE.
Cool A checklist can be used to automatically filter the list on each startup. (Not active by default. It can be activated by clicking the "Apply" button.)

The module is packaged with 4 lua files and 2 folders (Module folder and Icon folder) and is ready for use.

So, what more could be added to this module?
Please share your thoughts in the comments.

_________________
Hi Hitler Different Trainer forms for you!
https://forum.cheatengine.org/viewtopic.php?t=619279
Enthusiastic people: Always one step ahead
Do not underestimate me Master: You were a beginner in the past
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Labyrnth
Moderator
Reputation: 10

Joined: 28 Nov 2006
Posts: 6301

PostPosted: Fri Jul 18, 2025 1:02 pm    Post subject: Reply with quote

I would have an option to locate the target folder the selected resides in.
Back to top
View user's profile Send private message
AylinCE
Grandmaster Cheater Supreme
Reputation: 36

Joined: 16 Feb 2017
Posts: 1511

PostPosted: Fri Jul 18, 2025 9:47 pm    Post subject: Reply with quote

Labyrnth wrote:
I would have an option to locate the target folder the selected resides in.


Actually, there's pidPath in the code.

Okay, that function will be revealed with this idea.
Thanks for the feedback.

_________________
Hi Hitler Different Trainer forms for you!
https://forum.cheatengine.org/viewtopic.php?t=619279
Enthusiastic people: Always one step ahead
Do not underestimate me Master: You were a beginner in the past
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Dark Byte
Site Admin
Reputation: 470

Joined: 09 May 2003
Posts: 25763
Location: The netherlands

PostPosted: Sat Jul 19, 2025 3:09 pm    Post subject: Reply with quote

enumModules(processid][1]) has something that can help there
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
AylinCE
Grandmaster Cheater Supreme
Reputation: 36

Joined: 16 Feb 2017
Posts: 1511

PostPosted: Sun Jul 20, 2025 6:13 am    Post subject: Reply with quote

You're right, @DB. There's a function in the archive (I last came across it in a reply by @atom0s.)
I was using this code to find and retrieve the icon path.
Now I've added a popup to the right-click menu that prints or opens the folder path for the selected line.

Code:
function getProcessPath(name)
  for pid, pname in pairs(getProcessList()) do
    if pname and pname:lower() == name:lower() then
      local mods = enumModules(pid)
      if mods and mods[1] and mods[1].PathToFile then
        return mods[1].PathToFile
      end
    end
  end
end

print(extractFilePath(getProcessPath("chrome.exe")))


It took me a while to create a right-click menu in ListView. Apparently, the logic behind it wasn't equivalent to a single click. Smile

It was easy to click and execute a button action.
However, right-clicking didn't simulate clicking on a line.
The "OnMouseDown" control helped with this.

Fortunately, I mapped the "Selected Path" and "Kill Process" functions to right-click, and they work. Wink

_________________
Hi Hitler Different Trainer forms for you!
https://forum.cheatengine.org/viewtopic.php?t=619279
Enthusiastic people: Always one step ahead
Do not underestimate me Master: You were a beginner in the past
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Csimbi
I post too much
Reputation: 97

Joined: 14 Jul 2007
Posts: 3320

PostPosted: Sun Jul 20, 2025 9:41 am    Post subject: Reply with quote

I use this built-in feature for filtering processes.
I can see most of the time only 1 or 2 processes.
Gets the job done for me so I did not really look for anything better Wink
Good work though! Does your code honour that built-in filter?
Back to top
View user's profile Send private message
AylinCE
Grandmaster Cheater Supreme
Reputation: 36

Joined: 16 Feb 2017
Posts: 1511

PostPosted: Sun Jul 20, 2025 4:55 pm    Post subject: Reply with quote

Dark Byte wrote:
enumModules(processid][1]) has something that can help there


Unfortunately, I've changed the code processed by enumModules.

This is because if there are multiple .txt files, it gives them all the following path:
Code:
C:\Windows\system32\NOTEPAD.EXE

However, the newly created code produces the following output:
Code:
EXE: C:\Windows\system32\NOTEPAD.EXE
Parametre [1]: 
Parametre [2]: C:\Users\PC\OneDrive\PC1\Cheat Engine 7.5\autorun\ProcessMemModules\pmMain.lua


Code:
EXE: C:\Users\PC\OneDrive\PC1\Cheat Engine 7.5\cheatengine-x86_64.exe
Parametre [1]: C:\Users\PC\Games_Code1\CELua\CE-ProcessList-Icon-Memory.CT
Parametre [2]: 


I think when I share the article it will give me some ideas for the archive.

--------------------------------------------

Csimbi wrote:
Does your code honour that built-in filter?


Ahh, of course...
Probably not as many as your entire list.
But there's a "Process Filter" code that will allow you to block entries as they occur and create an updated list.

On first use, it starts without a default filter.

When you click the "Apply" button (from the CheckListBox panel. The Apply button is on the second image), the list you specified will be blocked with the filter every time it's opened.

_________________
Hi Hitler Different Trainer forms for you!
https://forum.cheatengine.org/viewtopic.php?t=619279
Enthusiastic people: Always one step ahead
Do not underestimate me Master: You were a beginner in the past
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine Lua Scripting All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites