Hi everyone,
So I have decided to use the enigma skin to replace my windows taskbar etc. I know that rainmeter is not designed to be a shell replacement. I was however wondering whether it would be possible to create a ini or a part of the skin that reads the running applications (like in task manager) and make them selectable. Also would it be possible to have an enigma box dedicated to displaying the apps that are in the system tray?
It is currently September 29th, 2024, 3:38 pm
running tasks and system tray
-
- Posts: 6
- Joined: May 5th, 2014, 11:20 am
-
- Moderator
- Posts: 1387
- Joined: April 11th, 2013, 8:08 pm
- Location: Italy
Re: running tasks and system tray
Yes, it's possible, I've already done something similar, to monitor programs currently running in my launchers skin, so, limited only to those (still under testing).
I can't say it's easy to code something like that, even more complicated if you plan to distribute the skin, because you've to monitor every known program, one measure for every single program, or choose in some way what programs one has installed in his system.
I can't say it's easy to code something like that, even more complicated if you plan to distribute the skin, because you've to monitor every known program, one measure for every single program, or choose in some way what programs one has installed in his system.
-
- Posts: 6
- Joined: May 5th, 2014, 11:20 am
Re: running tasks and system tray
hmm (thanks for the reply)
Wouldn't it be possible to read the information displayed in task manager in the applications tab?
Or are there limitations within windows that prevent that information being accessed?
Wouldn't it be possible to read the information displayed in task manager in the applications tab?
Or are there limitations within windows that prevent that information being accessed?
-
- Moderator
- Posts: 1387
- Joined: April 11th, 2013, 8:08 pm
- Location: Italy
Re: running tasks and system tray
Rainmeter has his own plugin, named Process, with it you can read if a program is running or not, every program needs to be controlled separately, and here comes the complication, you must have a measure for every program you want to monitor...
I'm already thinking to build something similar, but I still have to think how to do it using less code as possible.
...and obviously all this skin could do is nothing compared with the original Taskbar.
I'm still searching some Windows code to add at least a few functions, but just a few.
I'm already thinking to build something similar, but I still have to think how to do it using less code as possible.
...and obviously all this skin could do is nothing compared with the original Taskbar.
I'm still searching some Windows code to add at least a few functions, but just a few.
-
- Developer
- Posts: 22790
- Joined: April 19th, 2009, 11:02 pm
- Location: Fort Hunt, Virginia, USA
Re: running tasks and system tray
Might be something you could do with the RunCommand plugin and "WMIC PROCESS get Caption" in a command window to get a list of all running processes. Then have some kind of lookup table in Lua that has all the processes you want to "watch" (or the ones you want to "exclude") and react to that.
The "tasklist" command in a RunCommand plugin measure might also do the trick.
tasklist /FI "SESSIONNAME ne Services"
This has nothing to do with what is "shown" in the system tray. As far as I know, it is up to the app to tell Windows to display an icon in the system tray or not, and I don't know of any way to get what is displayed there after the fact. It might well be very "dynamic" and not stored anywhere you can get at.
Code: Select all
Caption
System Idle Process
System
smss.exe
csrss.exe
wininit.exe
csrss.exe
winlogon.exe
services.exe
lsass.exe
svchost.exe
svchost.exe
dwm.exe
atiesrxx.exe
svchost.exe
svchost.exe
svchost.exe
svchost.exe
svchost.exe
AvastSvc.exe
spoolsv.exe
svchost.exe
schedul2.exe
armsvc.exe
afcdpsrv.exe
Fuel.Service.exe
aaHMSvc.exe
AsSysCtrlService.exe
AsusFanControlService.exe
dasHost.exe
FileZilla server.exe
sqlwriter.exe
svchost.exe
TeamViewer_Service.exe
svchost.exe
svchost.exe
WUDFHost.exe
svchost.exe
atieclxx.exe
taskhostex.exe
itype.exe
ipoint.exe
explorer.exe
HWiNFO64.exe
rundll32.exe
SearchIndexer.exe
SkyDrive.exe
schedhlp.exe
df.exe
TrueImageMonitor.exe
TibMounterMonitor.exe
df64.exe
AvastUI.exe
Dropbox.exe
xchat.exe
atkexComSvc.exe
syncagentsrv.exe
wmpnetwk.exe
SettingSyncHost.exe
FSCapture.exe
TGitCache.exe
WUDFHost.exe
Rainmeter.exe
chrome.exe
chrome.exe
chrome.exe
chrome.exe
chrome.exe
chrome.exe
chrome.exe
chrome.exe
chrome.exe
chrome.exe
chrome.exe
chrome.exe
cmd.exe
conhost.exe
SearchProtocolHost.exe
notepad++.exe
WMIC.exe
WmiPrvSE.exe
tasklist /FI "SESSIONNAME ne Services"
Code: Select all
Image Name PID Session Name Session# Mem Usage
========================= ======== ================ =========== ============
csrss.exe 716 Console 1 10,700 K
winlogon.exe 772 Console 1 796 K
dwm.exe 80 Console 1 37,748 K
atieclxx.exe 3832 Console 1 1,544 K
taskhostex.exe 3936 Console 1 7,128 K
itype.exe 3948 Console 1 2,488 K
ipoint.exe 4028 Console 1 2,060 K
explorer.exe 2852 Console 1 141,836 K
HWiNFO64.exe 2128 Console 1 8,092 K
rundll32.exe 3856 Console 1 1,468 K
SkyDrive.exe 4432 Console 1 3,840 K
schedhlp.exe 4920 Console 1 1,020 K
df.exe 4996 Console 1 9,124 K
TrueImageMonitor.exe 5016 Console 1 9,004 K
TibMounterMonitor.exe 5048 Console 1 2,396 K
df64.exe 4300 Console 1 656 K
AvastUI.exe 1268 Console 1 7,796 K
Dropbox.exe 4616 Console 1 76,892 K
xchat.exe 3804 Console 1 6,224 K
SettingSyncHost.exe 6420 Console 1 1,800 K
FSCapture.exe 3564 Console 1 408 K
TGitCache.exe 6512 Console 1 3,568 K
Rainmeter.exe 5632 Console 1 45,624 K
chrome.exe 7716 Console 1 141,396 K
chrome.exe 7556 Console 1 126,008 K
chrome.exe 6664 Console 1 40,056 K
chrome.exe 3424 Console 1 42,884 K
chrome.exe 3764 Console 1 101,456 K
chrome.exe 6820 Console 1 40,140 K
chrome.exe 3932 Console 1 59,800 K
chrome.exe 5420 Console 1 74,376 K
chrome.exe 5472 Console 1 64,160 K
chrome.exe 4188 Console 1 79,380 K
cmd.exe 7352 Console 1 2,252 K
conhost.exe 6940 Console 1 5,188 K
tasklist.exe 868 Console 1 5,396 K
-
- Moderator
- Posts: 1387
- Joined: April 11th, 2013, 8:08 pm
- Location: Italy
Re: running tasks and system tray
Even if I tend to avoid plugins not included in Rainmeter, (...and LUA scripts ) I must admit that this sounds very interesting.
Another question strictly related: does the Process plugin or this solution understand if there are multiple instances of a program running and treat them separately?
Another question strictly related: does the Process plugin or this solution understand if there are multiple instances of a program running and treat them separately?
-
- Developer
- Posts: 22790
- Joined: April 19th, 2009, 11:02 pm
- Location: Fort Hunt, Virginia, USA
Re: running tasks and system tray
Nope. Process is binary. Is any instance of "chrome.exe" running or not...fonpaolo wrote:Even if I tend to avoid plugins not included in Rainmeter, (...and LUA scripts ) I must admit that this sounds very interesting.
Another question strictly related: does the Process plugin or this solution understand if there are multiple instances of a program running and treat them separately?
Certainly nothing in WMIC or TaskList is going to filter that way. You can have two entirely different SomeApp.exe instances that are two entirely different applications. "image name" in Windows is not unique. You would need to deal with duplicates like chrome.exe in the Lua script.
-
- Moderator
- Posts: 1387
- Joined: April 11th, 2013, 8:08 pm
- Location: Italy
Re: running tasks and system tray
Thanks jsmorley, I was almost sure... I just want to have a final word.
For what I'm doing, it's already good as is, since I only need to know if a program is running, and display his state on the launcher.
...for the LUA code, I need to learn how to build it... with my current speed, it's already scheduled for the next century!
For what I'm doing, it's already good as is, since I only need to know if a program is running, and display his state on the launcher.
...for the LUA code, I need to learn how to build it... with my current speed, it's already scheduled for the next century!
Last edited by fonpaolo on May 5th, 2014, 2:54 pm, edited 1 time in total.
-
- Developer
- Posts: 22790
- Joined: April 19th, 2009, 11:02 pm
- Location: Fort Hunt, Virginia, USA
Re: running tasks and system tray
Yeah, Process is fine for that. I did something like that here:fonpaolo wrote:Thanks jsmorley, I was almost sure... I just want to have a final word.
For what I'm doing, it's already good as is, since I only need to know if a program is running, and display his state on the launcher.
[ Direct Link ]
-
- Moderator
- Posts: 1387
- Joined: April 11th, 2013, 8:08 pm
- Location: Italy
Re: running tasks and system tray
You're light years ahead!
...well, maybe I'm a little slow.
I'm doing it in this way:
But I'm still searching a better way to react only if it's and .exe and have something like "-1" if it's something else.
I'll give a look at your code.
...well, maybe I'm a little slow.
I'm doing it in this way:
Code: Select all
[MeasureLLData1]
Measure=Time
Format="#LLP1#"
RegExpSubstitute=1
Substitute=".*\\(.*)$":"\1","\w+.pdf":"","\w+.txt":"","\w+.ini":"","\w+.inc":"","\w+.doc":"","\w+.docx":""
DynamicVariables=1
[MeasureProgr1]
Measure=Plugin
Plugin=Process.dll
ProcessName=[MeasureData1]
IfBelowValue=1
IfBelowAction=[!HideMeter MeterProg1On][!Redraw]
IfEqualValue=1
IfEqualAction=[!ShowMeter MeterProg1On][!Redraw]
I'll give a look at your code.
Last edited by fonpaolo on May 5th, 2014, 3:05 pm, edited 1 time in total.