How to change desktop background image on windows with c++? - winapi

How to change the desktop background image on Windows?
Right now, I found this solution:
SystemParametersInfoA(SPI_SETDESKWALLPAPER, 0, (PVOID*)desktop_image_file, SPIF_SENDCHANGE);
It works fine, but after a restart, the image is gone. How to save it permanently?

You need to include the SPIF_UPDATEINIFILE flag:
SPIF_UPDATEINIFILE
Writes the new system-wide parameter setting to the user profile.
SystemParametersInfoA(..., SPIF_SENDCHANGE | SPIF_UPDATEINIFILE);

Related

How to change the name of windows app in flutter?

Question No 1:
I am developing a windows app during this I have to change the name "admin_panel" to "Admin Panel"
And in Runner.rc file I have changed the OriginalFilename to "Admin Panel.exe" but it shows admin_panel at the top.
Question No 2:
And also I will be grateful towards you if you also provide the information regarding app icon. I was trying to use png file but it's not working. It needs ico file. I also tried to change the extension of image from png to ico but it still not working. So, how can I change that png file into desktop app icon.
Try changing ProductName
"ProductName","Admin Panel"
To change the icon you just need to replace the icon file in your project:
Windows: windows/runner/resources/app_icon.ico
macOS: macos/Runner/Assets.xcassets/AppIcon.appiconset
if still not updated the icon try flutter clean

How to change the font color of SageMath terminal version 9.5?

I am rocking a Ubuntu 22.04 laptop, so I am stuck to SageMath v9.5, instead of the current version as of today. The font is currently blue, which is not the best match at all with the default purple terminal background. How could I change the color to, let's say, green?
I've tried something in this link, but the approach is so old, it doesn't apply to this version anymore. I can type %colors Linux at the Sage shell itself, but it resets whenever I log off.
You can change the font colour of the terminal by modifying the Sage Terminal profile in the terminal's preferences.
Open the terminal in SageMath.
Go to Edit > Profile Preferences.
In the Profile Preferences window, select the Colours tab.
4.Under Text colour, you can use the colour picker to select a new font colour for the terminal.
5.Click Close to apply the changes and close the window.
I've tried something in this link, but the approach is so old, it
doesn't apply to this version anymore. I can type %colors Linux at the
Sage shell itself, but it resets whenever I log off.
You have to save the command %colors Linux into init.sage file which will be save at location ~/.sage/init.sage you can flow the below steps to achieve this
Open the Terminal by pressing keys Ctrl+Alt+T or from all programs
Go to ~/.sage directory by using cd ~/.sage command
Enter touch init.sage to create a file by the name init.sage
Open the file with an editor like vim/nano etc
Now write the command %colors Linux and save the file and close it
New font color will not change after restarting sage

Windows 10 Taskbar open windows - thumbnails or list

In my old Windows 7, I could get the list of the open windows just hovering on the folder icon, and I could get the windows in "list" format:
Now, with my new Windows 10, the list of open windows has become to thumbnails.
I don't like these thumbnails, and would like to come back to see them as a list, without the thumbnails.
Is there a way to change the Windows 10 behavior?
Unfortunately you cannot turn it off completely. You can set it to stop showing thumbnails for two or more windows though. It requires a registry edit, and is explained here: https://www.tenforums.com/tutorials/20989-change-taskbar-thumbnail-threshold-show-list-windows-10-a.html
The gist of it is Windows will stop showing thumbnails when there are too many, depending on screen resolution. You can set this to be 1 in the registry so when you open more then two windows of the same program it will display the listing instead.
Just not to leave this unanswered, i found the solution:
Add a DWORD 32 registry key in:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Taskband
With the name:
NumThumbnails
And the value:
1
That's all.

Windows 10: Set Login Screen Image from Command Line

Is it possible to set the Windows 10 Login Screen Image from the command line? Using a registry hack is fine.
I had though that the image would be part of a saved theme, but it appears not.
Eventually, I would like to set the image from a batch file as part of a setup for training machines.
To set the LockScreen go to the registry and add this key:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Personalization
Add a string with name LockScreenImage and the path and filename as value.

How to change Terminal background color when I open new tab?

I wanted to change color when I login to remote server by ssh.
The problem solved by this question.
How do I make the apple terminal window auto change colour scheme when I ssh to a specific server
But the solution above have a little problem.
Connet to remote server by ssh. (Background color is changed)
Open new terminal Tab.
This Tab's background is still changed.
So I want to "reset" background color when I open new Terminal Tab.
How can I do it?
By default, Terminal creates new tabs with the same settings as the current tab. You can change it to always use your default profile for new tabs in Preferences > Startup by changing New tabs open with: to Default Settings.
Note that there’s a built-in way to automatically set the background color for specific commands instead of using the script from that other answer:
You can set the name of a settings profile to a command name and Terminal will select that profile when you create a new terminal via either Shell > New Command… or Shell > New Remote Connection….
For example, duplicate your default profile, name it “ssh” and set its background color to red. Then use New Command… to run ssh host.example.com.
It also matches on arguments, so you can have it choose different settings for different remote hosts, for example. You could have one named “ssh host.example.com” with a blue background and another named “ssh” with a red background to handle any ssh commands that don’t match other profiles.

Resources