Microsoft MVP성태의 닷넷 이야기
컴파일된 코드를 원시코드로 바꾸려면 어떻게해야하나요? [링크 복사], [링크+제목 복사],
조회: 12643
글쓴 사람
주니어개발자
홈페이지
첨부 파일

if (ExportToExcel.<> o__1.<> p__4 == null)
{
    ExportToExcel.<> o__1.<> p__4 = CallSite<Func<CallSite, object, bool>>.Create(Microsoft.CSharp.RuntimeBinder.Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsTrue, typeof(ExportToExcel), new CSharpArgumentInfo[]
                            {
                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                            }));
}

Func<CallSite, object, bool> target = ExportToExcel.<> o__1.<> p__4.Target;
CallSite<> p__ = ExportToExcel.<> o__1.<> p__4;


코드보면 이런식으로 진행이 되던데 어떤원시코드가 저렇게 바뀌었는지 잘 모르겠네요 ㅠㅠ

어떤원시코드가 이렇게 컴파일되는건지 알려주시면 감사하겠습니다








[최초 등록일: ]
[최종 수정일: 4/13/2022]


비밀번호

댓글 작성자
 



2022-04-13 09시52분
일단 해당 C# 파일로부터 원본 코드로 자동으로 다시 바꿀 수 있는 방법은 없습니다. (그냥 보면 dynamic을 쓴 경우로 보이는데요, 혹시 제 책을 가지고 계시다면 9장 C# 4.0의 "9.2 dynamic 예약어"를 참고하시고.)

그런데, 첨부 파일이 DLL/EXE로부터 역어셈블해 구한 코드 아닌가요? 그런 경우라면, 역어셈블 도구에 따라 그 부분을 해석해서 dynamic으로 바꿔주는 것을 선택하면 됩니다. 가령 dnspy같은 도구는 첨부한 파일처럼 dynamic 코드를 보여주지만, JetBrains dotPeek같은 도구를 쓰면 그 부분을 적절하게 dynamic 코드로 바꿔줍니다.
정성태

1  2  3  4  [5]  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5866월급쟁이3/28/202312660cmake 크로스 컴파일 관련하여 질문이 있습니다 [1]
5865guest3/28/202312797Github Copilot과 코딩실력 향상? [1]
5864guest3/27/202314067System.NullReferenceException - 개체참조가 개체의 인스턴스... [6]파일 다운로드1
5863guest3/24/202312778이벤트 핸들러 사라짐 현상 - Button [4]
5862guest3/21/202313287세계최초 hts와 싱글스레드 [8]
5861다크파이썬3/21/202314165WPF를 사용하려고 하려고 도서 문의합니다. [2]
5860guest3/21/202313105인텔코어 i5 CPU와 스레드 [4]
5859guest3/21/202312319개발 일지 어떻게 관리하시나요? 이런 프로그램 없나요? [3]
5858김태원3/18/202312706안녕하세요! [5]
5857guest3/17/202312514귀도 반 로썸을 보고 [4]
5856guest3/17/202313794Form1_FormClosing에 closing time을 Sqlite 저장하는 법? [6]파일 다운로드1
5855욜로3/17/202312228C# 메타데이터에서 불러오는 참조 정의가 안됨 [1]
5854민성3/16/202312372안녕하세요 asp.net mvc using문 관련하여 [1]
5853pa3/16/202313061오피스 2016 업데이트 후 파일 출력 불가 [1]
5852guest3/16/202311649입력 foreach 검색/출력 foreach [3]
5851guest3/15/202312890foreach내 list변경 [10]
5850독서가3/14/202311613C#에서 동적dll 사용시 문의입니다. [4]파일 다운로드1
5849guest3/9/202313192C# wpf로 Web에서 구동되는 hts가능한가요? (노트북없고 스마트폰 없음) [4]
5848민성3/9/202312290도움 요청드립니다. [2]파일 다운로드1
5847guest3/7/202312440SQlike Like 구문 - 1시간째 인데 안되네요 [13]
5846Huuu...3/7/202310890웹 다운로드에 대한 고찰 [5]파일 다운로드1
5845guest3/7/202311399C# Split함수의 불친절함 [1]
5844까망이3/7/202311463c# 무료 디컴파일러는 어떤게 좋습니까? [1]
5843guest3/7/202311937판매 후 dll 등 에러 [5]
5842kr13/6/202311726publish 할 때 분석기 관련 dll 제외 [5]
5841guest3/3/202312130프로그램 판매 시 - Upgrade 버전 판매 [2]
1  2  3  4  [5]  6  7  8  9  10  11  12  13  14  15  ...