问题标签 [reflexil]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
12771 浏览

c# - “该模块应该包含一个程序集清单。”

我有一个正在尝试修补的 C# .NET DLL。我为这项工作选择了带有 Reflexil 插件的 .NET Reflector(以及用于反混淆的 de4dot)。Reflector 能够非常成功地向我展示我想看到的 C#,并且我能够使用 Reflexil 修补 CIL 程序集。当我试图将 DLL 保存为一个新的二进制文件时,Reflexil 给了我一个 Signed Assembly 对话框,我选择了 Remove Strong Name。

当我尝试运行加载程序集的代码时,出现错误:

System.BadImageFormatException:无法加载文件或程序集“MyAssembly,Version=1.0,Culture=neutral,PublicKeyToken=somehash”或其依赖项之一。该模块应包含程序集清单。

我该如何解决这个问题?

此外,如果我在修补的 DLL 上使用 peverify.exe,我会收到错误消息:找不到文件或标头错误。这让我相信 Reflexil 的修补过程有问题?

0 投票
1 回答
292904 浏览

c# - “命名空间不能直接包含字段或方法等成员”

我正在尝试使用 Reflexil 将此代码用于 NET.reflector。我正在尝试用以下代码替换代码:

}

但是当我尝试编译时它给了我一个错误:

这是我认为的 Unity 代码。我没那么有经验。谁能帮我解决这个问题?或者告诉我该怎么做?谢谢!

0 投票
1 回答
272 浏览

.net - 使用 Reflexil 注入代码时选择 .NET 版本

我有一个没有用 .NET 2.0 编译的源代码的 .NET dll 文件。需要向这个 dll 添加一些字段,所以我使用了 Reflexil(与 JustDecompile 结合使用)。我在 Reflexil 中使用了注入字段选项。当我保存并重新加载时,我检查了引用并发现现在添加了“mscorlib 4.0.0.0”。我希望 Reflexil 注入该字段,但不添加 .NET 4.0 依赖项。我到处寻找设置,让它重新编译为 .NET 2.0,但我在任何地方都看不到这个。

编辑函数时,您可以选择使用什么编译器作为选项(2.0、3.5、4.0)。添加字段时,我想要同样的选项。

有人对这个问题有任何见解吗?

0 投票
2 回答
9225 浏览

plugins - .NET 反射器 + Reflexil 插件

我刚刚安装了 reflexil v2.0 插件,但是当我在突出显示一个方法后单击它时,它只显示 3 个子菜单:删除、重命名、更新反射器对象模型......我没有看到另存为、注入菜单......谁能帮我解决这个问题?

0 投票
1 回答
353 浏览

cil - 使用 Reflexil 将字符串分配给 IL 中的 CommandText

我需要为前段时间开发的应用程序编辑查询。但是我没有源代码,只有编译好的dll。以下是 Telerik JustDecompile 反编译的源码。

Reflexil 中生成的 IL 为:

现在我想要的是:

com.CommandText = "选择 * form tbl_user where u_name = 'admin'"

我试图在偏移量 115 之后加载一个字符串

但输出变成了

所以我删除了我的更改并在偏移量 117 之后添加了相同的字符串:

输出发生了变化,感觉有点接近我想要的但仍然不正确。输出变为:

我想要的是:

com.CommandText = "选择 * from tbl_user where u_name = 'admin'"

我还尝试在偏移量 122 之后添加 callvirt 操作码,但是当加载的 .NET 框架为 4.6.1 时,我无法在 System.Data.SqlClient.SqlCommand 中找到 set_CommandText 方法

我怎样才能做到这一点?请,任何帮助将不胜感激。谢谢

0 投票
1 回答
130 浏览

c# - Adding write to log using Reflection

I'm trying to use Reflexil to log a string in an existing method in a dll I haven't got the source code to. The problem is, I can add a method that uses System.IO because I'm trying to add it to a dll that didn't use file writing before and can't add references.

Is there some log writing command that is accessible through System.dll I can use?

0 投票
2 回答
101 浏览

.net - 修补 .NET 应用程序以使用 Reflector/Reflexil 运行隐藏(启动屏幕/主窗口)

我试图修改一个程序以隐藏运行,没有启动屏幕,也没有窗口(它是佳能相机通过 wifi 接收图像的免费应用程序)。

我用于现场幻灯片,但每次相机重新连接时,程序都会启动,并且启动画面和应用程序窗口会放在幻灯片前面。程序不需要交互,只需在后台运行。(它是接收图像的程序,它需要运行)

我对 ollydbg 的基本修补有点熟悉,但由于这是一个 .net 应用程序,所以我无法理解。

我尝试使用修补启动 STARTUPINFO 的应用程序来隐藏应用程序窗口,但仍显示启动画面,并且由于程序是通过另一个检测相机并使用适当参数启动它的程序控制的,它需要运行隐藏“在其自己的”

Reflector/Reflexil 似乎足够强大,可以做我需要的事情,但我只是不知道找到什么函数/调用/参数来隐藏整个应用程序。

如果有人能指出我正确的方向......在此先感谢!

OBS:文件,如果有人想看看:http ://www111.zippyshare.com/v/gMvozk1h/file.html

0 投票
2 回答
1282 浏览

c# - 如何修补已签名的 dll

我有一个 C# 项目,它使用依赖于旧版本 DevExpress 的第三方库。此版本 DevExpress 的一个 dll(DevExpress.Utils.v9.2.dll) 中有一个错误。我使用 .NET Reflector 和 Reflexil 来修补 dll 并使用修补后的 dll 替换旧的。然后当我重建解决方案时,Visual Studio 显示错误:

错误 CS0012 类型“XtraForm”在未引用的程序集中定义。您必须添加对程序集“DevExpress.Utils.v9.2, Version=9.2.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a”的引用。

似乎原始 dll 已签名导致问题。我试过删除强名称,但它不起作用。如何解决?