Question

I was trying out the Reflexil plugin for Reflector v7.4. Everything it promised about code change worked fine. Then I wanted to change some assembly attributes mainly the version and was successful when loading the assembly again in reflector and verifying. But when I saw the assembly in Windows Explorer it still showed the old assembly version. Please go through the images to verify the fact. What in the Thor's name is going on. Somebody please help.

Reflector Windows Explorer

Was it helpful?

Solution

Interesting one ... it has to do with managed vs. non managed worlds coliding. If you check this Stackoverflow answer out it may help you.

If you open your exe in Visual studio (Open->File then choose you .exe), you'll see the unmanaged version information. Reflexil is not changing it ... it is only changing the attribute values in the managed portion of the application.

You can see the detail if you go to scooter software and get beyond compare, compare the patched exe with the non-patched - by default it too shows the non-managed version information. You can however do a hex compare for more information -> go to Session -> Compare files using -> Hex Compare. In the middle of that compare, you'll see the managed .net version differences - but towards the end of the file past the area where the managed code and resources are, you'll see the unmanaged version information ... and it is unchanged after patching the attribute values using Reflexil.

If you have Visual Studio, you can change the versions by just opening the exe, going to the VERSION information and chaninging the values to what you want and clicking save.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top