Git Product home page Git Product logo

msstyleeditor's Introduction

msstyleEditor Latest Release License: MIT

The msstyleEditor is an editor for Windows Vista, 7, 8, 10 and 11 visual styles (.msstyles files). It allows you to change visual styles without using a hex editor or a PE resource tool. It lists all components, can add/remove/modify the majority of properties, as well as extract and replace images.

Installation

The application is a single, portable executeable. It needs no installation but requires .NET Framework 4.5 on your PC. That comes preinstalled with Windows 8+, and likely exists on your Windows 7 already as well.

In order to apply the visual styles, your Windows must also be patched with one of the following tools, because Microsoft locks-out third party themes.

Limitations

  • can't create styles from scratch
  • can't add new fonts
  • no preview of items in image atlases
  • supports only .png ' s

No abstraction over the internals is done. Things are named and structured as they were by the developers at Microsoft. It may be a bit puzzling at first to figure out what each class/part/property effects. The following chapter might help a bit though.

Visual Style Structure

Understanding of the logical structure of visual styles is helpful when using this program. Fortunately its quite simple, so the figure below should give you the basic understanding required.

├─ Class 1 (e.g. Button, Window)
│   └─ Part 1 (e.g. Pushbutton, Left Frame)
│      ├─ State 1 (e.g. Pressed, Disabled)
│      └─ State 2
│          ├─ Property 1 (e.g. BackgroundColor, Margins)
│          └─ Property 2
├─ Class 2
│    ├─ Part 1
│    └─ Part 2
└─ Class 3

You will also encounter classes with :: in their names, such as BrowserTab::Tab. This means that the BrowserTab class inherits (reuses) the parts, properties and states of Tab, and just defines a few that override existing ones or are an addition. With this concept, duplication of properties is minimized and further provides a single place for common properties.

User Interface Description

Ui of the msstyleEditor

In the treeview on the left, the classes, parts and images are listed. On selection of an image, it is shown in the middle area. Right-click the image area to change the background if images are barely visible. Export and replace of the currently visible image can be done via the menu bar.

On selection of a part, its properties are shown on the right side, grouped by their states. This is also the place where the properties can be added, removed and edited. The search function is invoked via CTRL+F; it allows to search for classes, parts and properties with specific values.

Saving the style is done via the menubar. It is recommended to save often, and to a new file, since there is no undo/redo functionality. Also remember to backup your original style and don't work in the "Themes" directory directly (probably no write permission anyways, but still).

Contributors

msstyleeditor's People

Contributors

memoarfaa avatar mishaproductions avatar nptr avatar wily-coyote avatar zzhiyi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

msstyleeditor's Issues

The search feature is hidden

One more thing. I read about the search feature, but could not find it. I accidentally read about it later and found out one has to press Ctrl-F to activate it. You should add a menu item for the feature or hint about it somehow, otherwise it's kind of hidden.
The same applies to the background change function. Unless one right clicks the image area, they are unlikely to find the function.

Also, I could not find the classes "Window" and "Button" - at first. Somehow, I tried again and then it started working. I could find everything. So, sometimes search just does not work, and sometimes it does and in order to make it work I have to do some fake activity.
Also, Esc should close the find dialog and the dialog should have a button to start searching.

Help needed with Classic Theme for Windows 10

Hello, I am aware that the issue-section of github is normally not used to discuss user problems, but I could not found any other forum.
I tried to make some changes on a Classic Theme for Windows 10, which I uploaded to http://www.share-online.biz/dl/Q3IPJIIP19EO (ca. 12 MB)

  1. On the left side in the Explorer the font style appears blurred, unclear, while on the right side everything looks normal.
    How can I change this font to get rid of the blur?

  2. When selecting, marking files and directories on the right side, the font color should change from black to white. How do I achieve this? "Textcolor" in ExplorerListView-->Listitem doesn't seem to work.

  3. Is it possible to change the font size of the main menu ("File", "Edit" etc.) ?

Thank you very much, malvinas2

(the theme where I already did some changes is ".... Fall Creators 1709 / Show Commandbar / Windows Classic LightCaption.theme")

https://i.imgur.com/j6nOOMr.png

Command line support

Hi, I would like to associate msstyleEditor with *.msstyles files.
But currently command line seems to be ignored or I do it wrong?

msstyleEditorX64.exe "C:\Windows\Resources\Themes\aero\aero.msstyles"

Does not load the aero.msstyles.

Path with cyrillic symbols cause "bad conversion" error

If you put your .msstyles folder which has cyrillic symbols in its name, you will get "bad conversion" error if you try to open the file from there.
image
For example, I have named my folder as "тест" ("test" in English). If I open the file from folder without cyrillic symbols, which is "test" in this case, it will open normally. If I try to do this in "тест" folder, which has cyrillic symbols, I'll get the error message as above on the screenshot.

Search/Filter Suggestion

Would be great to be able to search for properties like "textcolor" or "fillcolor", or a filter to better find those things without knowing the exact RGB.

Also, a find/replace function would be extremely helpful!

Cannot add HIGHCONTRASTCOLORTYPE properties

Sample text output includes:
State: PROGRESSBAR
Prop FILLCOLOR (COLOR) (229, 229, 229)
Prop TEXTCOLOR (COLOR) (35, 151, 201)
Prop FILLCOLOR_HIGHCONTRAST (HIGHCONTRASTCOLORTYPE) (BTNFACE)
Prop TEXTCOLOR_HIGHCONTRAST (HIGHCONTRASTCOLORTYPE) (BTNTEXT)

Trying to copy these properties to another style, I cannot add the HIGHCONTRASTCOLORTYPE property.

Windows 10 Defender claiming Trojan:Win32/Fuery.B!cl detected

Windows 10 Defender prevents download of msstyleEditorX64.zip with the following message.

"Failed - Virus detected.

From Event Log ->Name: Trojan:Win32/Fuery.B!cl

Trojan:Win32/Fuery.B!cl occasionally connects to a remote host to execute tasks like the following:

Notify attacker on the new infection
Sends gathered data from the infected computer
Download and execute additional files including an updated version of the trojan
Accept command from a remote attacker

Can't change fontface

Hi again, thanks for the application, one more limitation: I want to change font for some system stuff like Start Menu, but wherever I see fonts in an msstyles file, I only have a limited list of other fonts to select from, they're all Segoe of various sizes and styles. But I can't change font face to Tahoma or smth else. I opened the msstyle file in ResHack and found a string table with all the Segoe fonts, then I replaced one of the items to Arial, just for test, and complied it and saved it. But this had no effect on the msstyle file.

[Support] add borders / shadows to all windows (active/inactive/borderless)

on my quest to add back a window border to all windows (some are borderless now) and also to inactive windows, i stumbled across this tool. looking around in the opened aero.msstyles i feel a bit overwhelmed and not sure how / where i could change settings to achieve my goal.

could you give some pointers which properties to change?

some windows are borderless now, that is really a problem in dark mode, when you do not see where windows overlapping each other end. i used process hacker to identify some classes drawing windows which do not have borders, e.g. "Chrome_WidgetWin_1" from MS teams and "UnrealWindow" from Epic Games Launcher. those should be affected in the end as well.

stardock's curtains is AFAIK currently the only tool working on win 10 able to achieve this, but ofc i would love to get a solution without extra software running in the background. curtains allows to set shadow with some color and opacity around windows - which then acts as a border.

the aero.msstyles is referened by the aero.theme file. so you would also need to create theme file to reference your own msstyles file and place it in the Themes folder? do you need to adjust file ownership to TrustedInstaller?

also, some way to set the background color for all windows not honoring the dark mode would be nice (mmc, control panel, regedit, task manager, ... )

thanks for any tips or pointers to more documentation!

Is it possible to add a new property state?

Is it possible to add a new property state?
ComboBox Border has Focused state, but ComboBox ReadOnly does not have Focused state.
If you switch to classic theme (Windows 7), you can see, that ComboBox ReadOnly can be focused.
On Aero themes, Focused state is missing, so you can't determine, is it focused or not.
If this property is missing, is it possible to add it? Not possible in the interface, you need repack all styles and add new.

If it is not clear, ComboBox can be one of two types: editable and read-only. When you set focus on editable ComboBox, cursor is showing, and all text is selected. When you set focus on read-only ComboBox , in Classic theme you see all text is selected (and non-editable), but in Aero theme, you see nothing (when mouse cursor NOT pointing over it).

So, this state is missing, but may be it is supported, and, if added manually, it may work.

But this state (not property) can't be added through the interface, so it is needed to extract all classes, add another, and pack it again.

ReactOS and Windows XP and Server 2003 msstyle files support?

Why Windows XP/Server 2003 .msstyle files are unsupported?

For doing new msstyles for ReactOS this unique Open Source tool it is useless.
And when opening ReactOS Lautus msstyle (you can decompress ReactOS LiveCD iso), the program just close.

White Text Color on buttons in Firefox

I thought this was a change that I had made but I was also able to reproduce it with Windows 8.1's stock aero.msstyles via the Theme Tester, so I figured it was related to this.
Basically all you have to do is download a file, such as this project, and the selected OK/Cancel button will have white text instead of black. You can also see this with Closing Multiple Tabs warning's OK and Cancel Buttons.
I've only been able to find this in Firefox, and I suspect it might be something beyond the scope of this project.
I thought I saw it once in Notepad++ as well though. I'll keep an eye out, but it may have been a Firefox dialog on-top of Notepad++.

I don't mean to bother you but as this seems to be potentially related to the application itself.

OS rejects style in some cases

It was reported that while applying the style works now most of the time, in some cases it still fails.
One case is the default aero theme in an unspecified Win10 versions (see issue #29, one of the last comments).

This issue has the purpose to collect and track those cases so I don't forget.

OS rejects style

When I open any theme in the editor (original aero.msstyle or any custom theme) I can't test it 'because the OS rejects it' even before I changed anything. If I save it and move it to it's corresponding directory in /Windows/Resources and change the theme it will just keep the skins, color etc of the last theme that was active. I also tried Visual Style Builder and it behaved in the same way. I have patched the system with UX Patcher and other custom themes from the net work perfectly well.

OS: Windows Pro x64
10.0.17763 Bld. 17763

Thanks in advance.

How to change taskbar color?

I'm using a theme however translucent taskbar doesn't behave nicely with the taskbar and and I was wondering if I could somehow fix that? Here's how it looks right now:
image

Test feature changed my fonts

Hi again. I tried the Test feature, it changed fonts in window caption, desktop icons and some more. It changed the fonts from small Tahoma to large Segoe, and when I stopped testing, the fonts did not recover. After that I tried both AeroByDesign.msstyles and aero.msstyles and they all changed their styles but could not restore the changed fonts. After that I investigated what has changed in the registry and found out that the key HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics has some several values changed. After I restored the previous version of the node (luckily I have one, so I did not have to use a restore point) the fonts restored.

So if your app changes the registry node it should recover it as well.
Also, it is not clear what the Test feature does - whether it applies all the styles in the open file or just the open node.

[Feature] Search functionality

Hi, I've just discovered your little tool and I gotta say I've searched and some good softwares are lacking.
I begin to mess around with it but could you add to your roadmap a few function to make it usable on a whole msstyle editing scale?
Right now it I see these functionnalities who might be mandatory :

  • search ( in object names/classs or in value )
  • search and replace ( with next occurence button and replace all function)

What do you think about it ?
My coding skills are limited but I'll try to look to your code and find some hints to do that

Will keep you posted
Cheers

Cant Find PopupItem Hot

Trying to find PopupItem Hot (that's the name in Win7 Style Builder) but I can't :( I just want to change the highlighting image of the context menu (like when you right-click your desktop) but I've looked through what feels like the entire menu.

Can not open file

When I open file nothing is shown. I tried V 1.3.0.0 - beta2 and V 1.2.3.0
slika

Issue with CONTENTALIGNMENT

Hi

First off, thank you very much for this utility, much needed as a free and well working alternative for hacking a bit with msstyles.

Now, I tried making Explorer title bars have their caption centered. For that, a trick that indeed works is described here: https://www.sevenforums.com/customization/186924-center-titlebar-text.html. Basically, one has to add CONTENTALIGNMENT property to Window\CAPTION and Window\MAXCAPTION. All works well, but, unfortunately, there is a small issue: if you want the title bar text to be centered, you have to set the property to Right. Similarly, if you want to have it aligned to the right, the property needs to be set to Center.

The way I see it, these could be caused by two things:

  • you simply interpreted the values in the enum wrong, and labelled them switched in your application's code; this should be an easy fix, in VisualStyleEnums.cpp
  • Microsoft interprets the values wrong in their File Explorer code, which you can do nothing about, and this is not an issue with your application at all

Thanks again for this wonderful application.

Corrupted Style with Test Feature

I was making a theme with this and I did a bit of a dicey edit and I tried to test it.
This caused the screen to flash black with the mouse appearing every now and then.
I figure there is a setting somewhere that gets rerouted when the tester is enabled.
Do you know what I do to reset the msstyle back to default?
I have tried deleting the msstyle in the public folder but that has done nothing.
This has essentially bricked my computer, please help.
Thank you.

Cannot add properties to an empty Class Item

There is no option to add properties to Class Items that are empty.
e.g. in one instance I have:

Class: TaskBand
	Part: Common Properties
	Part: GROUPCONTENT
		State: Common
			Prop FONT (FONT) (503)
			Prop TEXTCOLOR (COLOR) (255, 255, 255)

and in another I have:

Class: TaskBand
	Part: Common Properties
		State: Common
			Prop BGTYPE (ENUM) (NONE)

	Part: GROUPCONTENT

and I cannot create the missing properties to the Class Parts that are empty.
Once a State exists then others can be added, but the Part itself cannot be added.
I therefore am unable to make one match the other.

Create proper documentation and tutorials

Over the years the tool has gained a small user base and help requests keep coming in. It's not a lot, but I still think it is time for some documentation and tutorials to help new or infrequent users. This issue shall serve the purpose of tracking and organizing the progress.

I am aiming for a web based documentation, probably hosted used github pages or using the wiki functionality. For structure, I'd go with a location map kind of style. Each chapter shows a screenshot of an important object with all the known parts highlighted.
I suppose a rough overview is enough for the intelligent user to find its way and figure out a solution to the specific problem.

Chapter Subchapter Status
Introduction hardly any
Basic Concepts Visual Styles okay
Common Controls okay
Window Frames basic
Explorer basic
Desktop todo

When time allows, I'll add more information and examples how I imagine the documentation. To contribute, please

  • create a comment here
  • attach a screenshot of the object in question
  • highlight and numerate its parts
  • provide the "paths" in msstyleEditor like Button > CHECKBOX > UNCHECKEDDISABLE > TEXTCOLOR

I'll collect and polish the provided snippets.

Update:
Find the basics here: https://github.com/nptr/msstyleEditor/wiki/Introduction
It's still very basic, but better then nothing.

[Request] Adding New Property Feature

Hi.
I using your app recently and found a suggestion.
Maybe you could add new property feauture.
I think that's make a huge impact on your app, because can read and edit data/property is good enough.
New Property value like SIZINGMARGINS, CONTENTMARGINS, etc.
Maybe you could limit new property that can be added.
Sorry for sudden suggest. I think this app will become great tool for editing style theme.

Black screen after applying a theme

Hello,

Thank you for msstyleEditor. I'm a complete beginner in themes editing and I appreciate your work.

I was trying to edit a Windows Theme (NOT located in Resources/Themes but in my Downloads folder) with msstyleEditor and pressed "Test".
The corrupt theme was applied and I now get a black screen on reboot.

I've read https://technastic.com/recover-from-black-grey-screen-third-party-themes-on-windows-10/ but that corrupt theme is not listed under Resources/Themes.

I've used xcopy aero "Downloads\Corrupt Theme" /i but I do not know how to run copy aero.theme "corrupt theme 01.theme".
What .theme file is Windows using now? And where is it located?

(Windows 10 20H2. Unfortunately I did not have a restore point).

This is an emergency. :) I'd appreciate your help.

A humble suggestion...

If there was a way to export all settings to a text/xml/csv file, that would allow one to compare different styles in a logical manner. I thank you for the tool it is quite useful!

Simplify compilation process

so i downloaded the files - saw there was an .sln file so i ran that opening visual studio, pressed build and error. . . fair enough.

so i click run last successful build, more errors,
so what exactly am i suppose to run, i feel rlly dumb founded atm ;-;

Windows 8.1 CommandModule/LIBRARYPANEIDENTIFIER is actually LIBRARYPANEBACKGROUND

It would appear that between Vista, 7 and 8.1 the parts for CommandModule have changed.
This can be seen when doing a direct comparison between Windows 8.1, 7 and Vista's aero.msstyles.

Windows Vista
MODULEBACKGROUNDCOLORS is TASKBUTTON
TASKBUTTON is SPLITBUTTONLEFT
SPLITBUTTONLEFT is SPLITBUTTONRIGHT
SPLITBUTTONRIGHT is MENUGLYPH
MENUGLYPH is OVERFLOWGLYPH

Windows 8.1
LIBRARYPANEIDENTIFIER is actually LIBRARYPANEBACKGROUND

"Apply Theme" breaks the desktop environment - 1.3.0.0-beta

On Win 8.1, the "Apply Theme" option (with an unmodified 3rd party style) broke my desktop environment.
DWM seems to crash and the lock screen appeared. On login, the preparation of the desktop fails and the lockscreen appears again.

Safe-Boot:

  • no avail, problem still there

Booting from a recovery image:

  • removing the applied style via the recovery console to force a default theme -> failed
  • sfc /scannnow /offbootdir=[..] /offwindir=[..] -> canceled it, seemed to hang, no progress report
  • using the original uxtheme.dll manually -> still broken
  • restoring old files from /system32/config/RegBack -> xcopy failed: "Invalid SHARE blabla" ??
  • restoring a system recovery point - didn't have any :(
  • soft-reset (keeping user data) -> failed with little information why
  • factory-reset (loosing user data on the OS partition) -> worked

Maybe i broke it even more by cutting the power a few times. Lockscreen didn't even appear later on.
Might try to reproduce it sometime; with a recovery point

Error message when saving styles with a missing image file

Hello. When I save styles after (mistaken) removing an image file that I replaced an image with, the msstyleEditor displays an error that does not explain what happened. At least, it should say what file name is missing and for what node it is used.
Also, if I try to save styles to the same file, msstyleEditor displays an error message with errorcode 100. The idea not to change the original file in itself is good, but the error message should be more explaining. At least, it should say that one cannot save a file to itself or something like that.

msstyleEditor disappears when opening a file

I have the msstyleEditorX64 1.3 and i want to try is on my Windows 10 v1803.
It start up msstyleEditorX64 but when i open a msstyles msstyleEditor disappear ?

Do you have a fix for me ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.