제 3 자 라이브러리를 .NET으로 포팅하는 것을 고려 중입니다. Windows 용 앱 스토어. 라이브러리는 ILGenerator.Emit 메소드 오버로드에 대한 호출을 통해 System.Reflection.Emit.OpCodes을 과도하게 사용합니다. 윈도우 스토어 앱 API에 대한 .NET에서 Windows 용 .NET의 Emit.OpCodes 용도 Store apps API?
는이OpCode
구조와 OpCodes
클래스가 포함되어 있지만 ILGenerator
클래스가 없다, 그리고 지금까지 내가 중 하나를 대체를 찾을 수 있었다한다.
나는 분명히 뭔가를 잃었지만, 다음 ILGenerator
클래스하지 않고, 윈도우 스토어 앱 API에 대한 .NET에서 System.Reflection.Emit.OpCode
및 OpCodes
등의 목적은 무엇인가?
좋은 질문이지만 많은 사람들이 답할 수 없을 것 같습니다. 내가 말할 수있는 것은 그들이 여전히 내부 목적에 따라 필요하고 노출에 "해를 끼치 지 않는다"는 것입니다 (LocalVariableInfo를 사용할 수있는 것처럼 많이 사용하지만, 구할 수있는 합리적인 방법은 없습니다) –
@Damien_The_Unbeliever Many 이 문제를 자세히 살펴 주셔서 감사합니다. 필자는'Reflection.Emit' 네임 스페이스에 대한 경험이 거의 없으므로 물어볼 것이라고 생각했지만 분명히'OpCode'와'OpCodes'만이 왜 여전히 사용 가능한지 분명하지 않습니다 :-) –
대체품이 필요하면 ILGenerator.Emit에서 Mono - Cecil을 살펴보십시오. 나는 그것을 사용하지 않았지만 다른 사람들은이를 표현 트리 해석기로 사용한다. http://www.mono-project.com/Cecil –