Add information about how to reverse engineer COM interfaces#97
Closed
Lej77 wants to merge 3 commits into
Closed
Conversation
Owner
|
Hey! Awesome work. I do have Python script already to do this: https://github.com/Ciantic/DumpVDIA I don't plan to put your tool in this Rust repository. But I would be happy to link if you release your tool in Cargo, it would be nice to have a tool that could be called from the command line: Or something like that. It would then list all interfaces with "Virtual" on it. To me important feature of such a tool is to output DIFFable files, this repository: https://github.com/mzomparelli/GetVirtualDesktopAPI_DIA you linked doesn't do that. I had to modify it slightly. Diffable files are important when you run it against different versions of the Windows, so you can see the changes. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds a "note" markdown file to the repository with information about how to find COM interface ids and function definitions. It also includes a Rust CLI program that automatically gathers all that information and prints it to stdout.
I was myself curious how this information was gathered and I don't think I am alone considering: #93 (comment) and #94.
The reason that the CLI tool is in a different workspace is so that you don't need to download or compile its dependencies when building the main project.
This work was largely started because of the information provided in issue #14 ("Reverse engineering process") on the C# library Slion/VirtualDesktop. It linked to the Python script mzomparelli/GetVirtualDesktopAPI_DIA which inspired the initial Rust CLI program.