You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am currently able to modify .dlls via editing C# sources in GUI. But there seems to be no documented way to patch .dll via dnSpy.Console.exe.
I suspect that it should be possible to decompile .dll fully to source code, introduce changes and compile it back, but I am not sure how (and if contents of decompiled files are guaranteed to be the same to reliable apply diff patches). But if it's the intended solution, then I'm dumb, sorry.
Proposal
Add CLI flags to introduce changes to .dlls based on modified source code of methods.
Alternatives
No response
Additional Context
No response
The text was updated successfully, but these errors were encountered:
The CLI app is very primitive and is currently written in a way that allows only decompilation of a given file. It lacks all the necessary infrastructure to run the other components of dnSpy like assembly editing, debugging, etc. Extending the CLI app to add more functionality is something I want to do especially for debugging.
However, I'm not sure how text-based C# level assembly editing would be implemented in a CLI. If you want to apply C# level patches it is probably best to fully decompile the file using dnSpy or ILSpy to produce a C# project file/solution file, apply text-based patches onto the source code, and then recompile. It is not the ideal way of applying patches to files though. The C# editing is only meant to be a quick way of applying patches to files manually. Automated patching should always do what is described below.
Ideally, you'd want to use a lower-level library like dnlib and edit assemblies on the metadata and CIL code level. This is a lower level than C# and makes it so you do not have to recompile the code. Libraries like dnlib can open a .exe and traverse the type structure similar to dnSpy and edit methods and method bodies in a way similar to Edit Method dialog and Edit IL instructions option. This ensures that parts of code you are not patching do not undergo changes as a result of decompilation errors.
Problem Description
I am currently able to modify .dlls via editing C# sources in GUI. But there seems to be no documented way to patch .dll via
dnSpy.Console.exe
.I suspect that it should be possible to decompile .dll fully to source code, introduce changes and compile it back, but I am not sure how (and if contents of decompiled files are guaranteed to be the same to reliable apply diff patches). But if it's the intended solution, then I'm dumb, sorry.
Proposal
Add CLI flags to introduce changes to .dlls based on modified source code of methods.
Alternatives
No response
Additional Context
No response
The text was updated successfully, but these errors were encountered: