0
약간의 문제가 있습니다. 작성한 메소드에 Mono.Cecil과 함께 Collection of Instructions를 삽입하려고합니다. Mono.Cecil 새 지침 만들기
Collection<Instruction> InstructionList = new Collection<Instruction>();
예를 들어 "징벌"또는 같은 어떤 피연산자가없는 일반 명령을 추가하려면 "ldarg.0"난 그냥 이렇게 :
InstructionList.Add(Instruction.Create(OpCodes.Ret));
을하지만 내가이있는 명령을 만드는 문제가 이러한 (이미지)과 같은 피연산자 :
http://puu.sh/bzWi8/710c8008df.png
사람이 어떻게 ldsfld 빈 문자열 또는 br.s 또는 callvir처럼,이 피연산자 명령을 추가하는 나를 설명 할 수 티.
나는 이것을하는 방법을 모른다.
InstructionList.Add(Instruction.Create(OpCodes.Ldsfld, ModuleDef.Import(typeof(System.String))));
그러나 예외가 발생합니다 :
내 시도는이 있었다 형식 'System.ArgumentException'처리되지 않은 예외가 Mono.Cecil.dll 에 추가 정보 발생 동작 코드
사람 수를 이 "더 복잡한"지침을 추가하는 방법을 설명해주십시오.
당신은 그것을 두 피연산자를 줄 필요가 있어야한다이다 즉 유형과 값 – leppie
방법이 값이 같을 것이다? (미안 나는 이것에 아주 경험되지 않는다) –