Recommended Posts

great work Schmoove, just noticed one problem. I had the monitor set to stay on top. In IE (sp2) if I do a CTRL-F5 to refresh the page the battery monitory settings dialog box appears.

Ah! Sorry, I didn't realize the window had to be layered for that to work =/. Great job figuring that out - it took me a very long time to find how to do that. I'm looking forward to the next release!

Thanks for pointing me into the right direction. Indeed you have to add the value of WS_EX_LAYERED to it because the form I use is a layered window. If I used your solution it all worked fine, except for the bitmap of the monitor itself not showing up. So if you add WS_EX_LAYERED to WS_EX_TRANSPARENT you combine the best of both worlds :)

great work Schmoove, just noticed one problem. I had the monitor set to stay on top. In IE (sp2) if I do a CTRL-F5 to refresh the page the battery monitory settings dialog box appears.

Yes sorry, it wasn't really smart of me to choose CRTL+F5 and CTRL+F6. I changed it to Shift+F2 and Shift+F3 for the next release (unless someone has problems with that ofcourse, I don't know for sure if that interferes with an application).

Three more feature requests:

1. Show % inside the monitor. I have it showing remaining time below the monitor and it would be cool if it could show the percentage inside.

2. Different transparency levels for monitor and text.

3. Possibly allow resizing of the monitor.

I love this program! :D The built in IBM battery monitor is so UGLY!

Three more feature requests:

1. Show % inside the monitor. I have it showing remaining time below the monitor and it would be cool if it could show the percentage inside.

2. Different transparency levels for monitor and text.

3. Possibly allow resizing of the monitor.

I love this program! :D The built in IBM battery monitor is so UGLY!

1) Only possible if I extend the skin format. I might do that eventually sometime.

2) That is quite hard and would involve a lot of code being rewritten, so I'm not gonna do that.

3) Thought of that, but you will get ugly (unsharp, blurred) results. So if you want it bigger/smaller, make bigger/smaller skins.

Hello,

first, this app is really good and usefull and it looks good, too :yes:

Second, choosing .NET is not a mistake and you should stick to it, it is the way to go and probably remaining "memory issues" (which are not that big) will hopefully one day be solved by MS until then it is not that a issue compared with the big advances in coding the .NET framework for the developer.

One quite major issue with the app: It does not work correctly with different resolution settings, I mean I use the big fonts setting (custom set to 150%, 144 DPI). These modern laptops have a quite high resolution display and setting this option ensures that the fonts are readable without using a magnifying glass ontop of the display ;) :D

So, I know it is a little bit more difficult to make sure that the app works with different display resolutions, but .NET makes a little bit more easy. So the problem is 1st, that the text displayed below the battery icon is cut off, please check some font measurement code/API that must be available and not be too hidden.

Second the option window does also do not look right. With the default settings the dialogs normally look good, too, with high DPI settings. If not, sometimes it helps to design them with higher dpi settings and then the look on lower DPI settings will not be perfect, but much better than the reverse effect. Eventually with a little bit testing you get good results for all cases. This all is a rather difficult thing, but this is essential and important for all applications.

About the 9,75 or 9.50 problem, I understand that, too. I does come from creating the inital settings file on a differenct PC. At the end I think this shows that the idea of using XML files here does not really cut it. Also I did not check where this setting file is stored. If it is stored in the application folder this means that the app will not work correctly with limited accounts or more general for multiple users. I currently think that it is best here to stick to the HKCU (current user) registry tree, this does solve the multi user problem and you can store real numbers in the registry, not only text. A quick fix (if there is this problem), would be to store or access the XML settings from the user-data directory. I think there is a API call or enumeration of such special folders information (e.g. where is the desktop, my documents, application data directory, ... ).

Perhaps this helps a little and we get a greet nice tool useabe in even more cases and for more users :woot: :D Keep the fun will developing it, because it is free, so it should help you, too :)

chris

Awesome! Click through makes it so much more usable :) I love it.

2 more comments from me:

1. Do you think you could find some way to remove the program from the alt-tab window?

2. If I alt-tab to this program, then hit alt-F4, it closes. Then if I double click the tray icon, it throws a .NET error:

Cannot access a disposed object named "m".

Object name: "m".

Clearly thats just the obfuscated variable name, but I hope u can reproduce and fix that error.

LOVE THIS PROGRAM! Thank you.

i cant see that option :(

all the menus and the time left text is cut off :/

the preferences window is resizable. You should be able to see it when you resize the window.

Why it f*cks up when you use higher DPI modes I don't know.... I use standard .NET forms, nothing fancy. So if that doesn't work... well what can I do??

thank you :D

resized it

the end of the menu bar still goes over the edge of the screen, and stays there

but this is great :D

one slight problem with the alerts, when the alert pops up it takes the focus away from the window you are using, so if you are typing in a box, you have to click in the box to continue

anyway to solve this?

thank you :D

resized it

the end of the menu bar still goes over the edge of the screen, and stays there

but this is great :D

one slight problem with the alerts, when the alert pops up it takes the focus away from the window you are using, so if you are typing in a box, you have to click in the box to continue

anyway to solve this?

No, that's what an alert is for, to get your attention. I'm not going to change that.... sorry.

Awesome! Click through makes it so much more usable smile.gif I love it.

2 more comments from me:

1. Do you think you could find some way to remove the program from the alt-tab window?

2. If I alt-tab to this program, then hit alt-F4, it closes. Then if I double click the tray icon, it throws a .NET error:

Cannot access a disposed object named "m".

Object name: "m".

Clearly thats just the obfuscated variable name, but I hope u can reproduce and fix that error.

LOVE THIS PROGRAM! Thank you.

Will be fixed in the next version (already got it fixed in the latest build).

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Are you going to do performance benchmarks comparing all states? I'd be interested in seeing that in the next "part".
    • My father still uses a programme written in dbase3. Still manages to work with a little help from dosbox. 
    • Microsoft hides these secret Windows 11 performance boost settings available on every PC by Sayan Sen Windows enthusiasts often look for ways to extract as much performance out of their systems as possible, and it's often the case that they try and do so while trying to minimize the heat and power consumption. This is especially relevant in the case of mobile Windows PCs since laptops and notebooks tend to get hot and management of that heat and power is harder in such a form factor. As such users often turn to techniques like under-volting which can be used to squeeze out the maximum capabilities of a chip while also maintaining lowered power levels. There are official apps from AMD and Intel with the likes of Ryzen Master and XTU (Extreme Tuning Utility). While these are quite handy, most enthusiasts probably prefer to dig into the BIOS and play around with settings there like Curve Optimizer on Ryzen, which lets users set various frequency-voltage scaling values. These are essentially called P-States. If you are not familiar with them, Processor Power Management is done through Advanced Configuration and Power Interface (ACPI) P-states and C-states. While P-states or performance pwoer states handle CPU voltage-frequency scaling, C-states deal with CPU sleep states so that some of the CPU functions, which are not necessary at that moment, can be disabled. The P-states and C-states work together to make the processor run more efficiently. It helps the OS and apps determine which cores can be parked and which should be boosted. Of course not every user is an enthusiast or knows the technicalities and integrities of how things like overclocking or undervolting work. Thankfully for them Windows itself offers something pretty cool, though it is hidden by default on all systems. By default, Windows only has two P-States, "Minimum Processor State" and "Maximum Processor State." However, this can be changed with a Registry trick to expand the options under a secret "Processor performance boost mode" dropdown. This essentially enables the HWP or hardware P-States available on a device, and these are not controlled just by the OS itself as the underlying hardware gets involved too. In total there are five Processor Performance Boost Mode profiles that control how Windows requests and allows CPU turbo/boost behavior under the different power policies. They are: Disabled: In this mode, processor boosting is effectively turned off. The CPU will avoid entering turbo or boost frequencies and instead operate closer to its base frequency ceiling. This can significantly reduce power consumption and heat output, but at the cost of reduced burst performance and responsiveness in short workloads. Enabled: This is the standard behavior where boost functionality is allowed under normal conditions. The processor can opportunistically increase frequency when workload demands it, balancing performance gains with power and thermal constraints as managed by the system. Aggressive: Aggressive mode favors performance more heavily, allowing the CPU to enter higher boost states more readily and sustain them longer. This should in theory improve responsiveness under bursty or heavy workloads but increases power draw and thermal output compared to the default enabled behavior. Efficient Enabled: This mode still allows boosting, but with a stronger bias toward energy efficiency. The system attempts to use boost more selectively, avoiding unnecessary frequency spikes when the performance gain is marginal. Efficient Aggressive: This is a hybrid approach where boost is still performance-responsive, but the system continuously weighs efficiency more heavily than in Aggressive mode. It aims to deliver noticeable performance improvements while reducing wasted power in less demanding scenarios. Here's how to enable the Processor performance boost mode: Open Registry Editor: Press Win+R, type regedit, and click OK. Go to: HKLM\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\be337238-0d82-4146-a960-4f3749d470c7 (where HKLM stands for HKEY_LOCAL_MACHINE_) Modify the value of Attributes from 1 to 2 (you can find modify option by right-clicking) After that, exit Registry, you should now be able to see the new "Processor performance boost mode" dropdown menu: As you can see there are now five new P-States or CPPC states or power profile available that help define the boost mode processor setting on your PC. Wrapping it up here's a quick run-down of the settings as defined by Microsoft itself. Setting Description Disabled The corresponding P-state-based behaviour is disabled. Collaborative Processor Performance Control (CPPC) behaviour is disabled. Enabled The corresponding P-state-based behaviour is enabled. CPPC behaviour is Efficient Enabled. Aggressive The corresponding P-state-based behaviour is enabled. CPPC behaviour is Aggressive. Efficient Enabled The corresponding P-state-based behaviour is Efficient. CPPC behaviour is Efficient Enabled. Efficient Aggressive The corresponding P-state-based behaviour is Efficient. CPPC behaviour is Aggressive. Aggressive At Guaranteed Windows calculates the desired extra performance above the guaranteed performance level, and asks the processor to deliver that specific performance level. Efficient Aggressive At Guaranteed Windows always asks the processor to deliver the highest possible performance above the guaranteed performance level. In the next part we shall be comparing these settings to explore how much of a benefit or regression they can provide in terms of performance and power efficiency. If you decide to change the values on your system and are experiencing problems like crashes or an overheating PC, make sure to revert the steps back to the original state.
  • Recent Achievements

    • Week One Done
      rolfus earned a badge
      Week One Done
    • One Month Later
      Leroy Jethro Gibbs earned a badge
      One Month Later
    • Conversation Starter
      flexorcist earned a badge
      Conversation Starter
    • One Month Later
      AndreaB earned a badge
      One Month Later
    • One Month Later
      agatameier earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      518
    2. 2
      +Edouard
      198
    3. 3
      PsYcHoKiLLa
      147
    4. 4
      ATLien_0
      93
    5. 5
      Steven P.
      78
  • Tell a friend

    Love Neowin? Tell a friend!