Reflexil не может сохранить эту сборку: элемент объявлен в другом модуле и должен быть импортирован

Я пытаюсь просто сделать самое основное изменение в логике сборки.net с reflexil.

Самое основное изменение, которое я могу придумать, это создание нового исключения в конструкторе класса, который я пытаюсь изменить.

Поэтому я создал похожий класс с конструктором, выдав исключение. При изменении с reflexil этот код для конструктора выглядит так:

Offset  OpCode  Operand
0   ldarg.0 
1   call    System.Void System.Object::.ctor()
6   nop 
7   nop 
8   ldstr   THIS ASSEMBLY IS HACKED
13  newobj  System.Void System.Exception::.ctor(System.String)
18  throw   

Затем я пытаюсь изменить пустой конструктор сборки, который я на самом деле хочу изменить из этого:

Offset  OpCode  Operand
0   ldarg.0 
1   call    System.Void System.Object::.ctor()
6   ret 

и измените его так, чтобы он выглядел точно так же, как код сверху.

когда я тогда пытаюсь сохранить сборку с этими изменениями, я получаю следующую ошибку:

Reflexil не может сохранить эту сборку: элемент 'System.Void System.Exception::. Ctor(System.String)' объявлен в другом модуле и должен быть импортирован

Как мне импортировать "другой модуль" с рефлексилом?

Я использую рефлексил с ilspy, я не использую Mono.Cecil

0 ответов

Другие вопросы по тегам