none
Build시 생성되는 SECTION 개수의 제한이 있는듯한데 늘릴 방안이 없을까요??? Revision 01 RRS feed

  • 질문

  • 안녕하세요.

    MSDN의 SECTION 정보를 이용해 개발의 효율을 높이는 업무를 진행중인데요.

    진행하면서 이슈가 있어서 자문을 구합니다.

    SECTION을 추가시 개수의 제한이 있는듯한데요.

    테스트한 결과

    Build시 생성하는 SECTION의 개수가 0x0C 이면 .pdb 파일이 정상 생성되나

    Build시 생성하는 SECTION의 개수가 0x0D 이면 .pdb 파일이 정상 생성 되지 않는 이슈가 있네요. (디버깅 정보 없음 메세지 박스가 팝업됨)

    신기하게도 Build시 생성하는 SECTION의 개수가 0x0E, 0x0F 이면 .pdb 파일이 정상 생성 되네요.

    1. 원인이 무엇일까요??

    2. 이 제약사항을 풀고 SECTION 개수를 늘릴 방안은 없는지요??

    증상에 대한 상세 정보는 다음과 같습니다.

    답변 감사합니다.

    우선 문제가 있을때도 pdb, exe 파일은 생성되고요.

    아래와 같은 창이 뜨네요.

    파일경로: https://social.msdn.microsoft.com/Forums/getfile/971175

    아래 exe 파일을 dump 한 내용을 보니 Build시에 exe 파일에

    pdb 파일 연결이 안되어서 이런 창이 발생하는것 같아보이네요.

    아래는 문제 발생을 위해 기존 0x0b 개수로 되어있는 코드에 아래와 같이

    TEST1, TEST2 Section을 추가하는 코드입니다. (SECTION 개수가 0x0d가 됨)

    이렇게 추가후 Build시 위와같은 메세지박스가 출력됩니다.

    아래는 dumpbin /all로 정보 추출후 정상과 비정상을 비교한 결과입니다.

    sec0d.txt: pdb 생성 안되는 경우

    sec0b.txt: pdb 생성    되는 경우

    파일경로: https://social.msdn.microsoft.com/Forums/getfile/971170파일경로:https://social.msdn.microsoft.com/Forums/getfile/971171

    위 내용이 주요 부분인것 같네요. 이상하게 좌측은     Format: 이후에 pdb 관련 정보가 없네요.

    파일경로: https://social.msdn.microsoft.com/Forums/getfile/971172

    우선 MAP 파일 대비 SECTION 개수가 각각 하나씩 늘어났네요. (.rsrc 가 map에는 안보이네요)

    보기에는 큰 차이가 없는데 이상하게 sec0d.txt 에는 debug directories내의 pdb 파일 정보가 없네요.

    무엇이 문제 일까요??

    아 참고로 테스트를 위해  간단한 PRJ 생성해서 Section 개수를 0x0D (Section 관점에서 이슈 상황)로 생성시에는 정상 동작하네요. ㅜ.ㅜ

    김순동


    김순동


    2016년 12월 6일 화요일 오후 11:24