c# - 如何使用 C# 在单独运行的 native 进程中调用函数?

标签 c# c++ reverse-engineering interprocess

您能否使用 C# 调用另一个用 C/C++ 编写的正在运行的进程内部的函数?

我知道您可以使用 C++ 执行此操作,方法是注入(inject)一个 DLL,该 DLL 启动一个远程线程,监听关联的按键,并调用其签名和地址已定义的所需函数。

C++ 到 C++ 教程在这里: http://www.codeproject.com/Articles/29527/Reverse-Engineering-and-Function-Calling-by-Addres#Applying

如果我没记错的话,我过去也读到过,您不能将托管 DLL (C#) 注入(inject)到非托管进程 (C++) 中。但也许存在另一种方式......

我想这样做的原因是对 PC 游戏进行逆向工程,并用我熟悉的 C# 语言编写一些小程序。

最佳答案

看看 MemorySharp图书馆,它正是你想要的。

关于c# - 如何使用 C# 在单独运行的 native 进程中调用函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35910889/

相关文章:

c++ - C++ 中如何使用内联说明符来保留一个定义规则?

javascript - 如何使用 js/uml 对我的 JavaScript 文件进行逆向工程?

c# - 编译一些反编译的 C# 代码时遇到问题

C# 深入探讨 : Type Constraint

c++ - 在结构中使用 pthread 条件等待

c++ - OpenSSL::SSL_library_init() 内存泄漏

c - 是否可以从 so(共享对象)文件中恢复所有代码?

c++ - 对 Apple Kext 进行逆向工程 - 重构类

c# - DataGridView:在单击或击键时禁用单元格编辑,仅在双击时启用单元格编辑

c# - 迭代平滑曲线