Символы (pdb) для собственного dll не загружаются должные отправить шаг сборки

У вас проблемы с синтаксическим анализом json, о чем говорит ваша ошибка.

Я бы предложил использовать GET для загрузки файла вместо POST, попробуйте что-то вроде:

this.http.get<any>(url, {responseType: 'blob'}).pipe(..);
6
задан sean e 16 May 2009 в 20:19
поделиться

2 ответа

Этот пост привел меня к chkmatch . На обработанной dll команда chkmatch показывает следующую информацию:

Executable:
TimeDateStamp: 4a086937
Debug info: 2 ( CodeView )
TimeStamp: 4a086937  Characteristics: 0  MajorVer: 0  MinorVer: 0
Size: 123  RVA: 00380460  FileOffset: 00380460
CodeView signature: sUar

Debug information file:
Format: PDB 7.00
Result: unmatched (reason: incompatible debug information formats)

С тем же pdb и предварительно обработанной dll он сообщает следующее:

Executable:
TimeDateStamp: 4a086937
Debug info: 2 ( CodeView )
TimeStamp: 4a086937  Characteristics: 0  MajorVer: 0  MinorVer: 0
Size: 123  RVA: 00380460  FileOffset: 00380460
CodeView format: RSDS
Signature: (my guid)  Age: 19
PdbFile: (my path)

Debug information file:
Format: PDB 7.00
Signature: (my matching guid)  Age: 19

Я открыл обе версии dll и перешел к смещению 00380460. В исходной версии, достаточно ясно, я вижу имя pdb, но в версии с постобработкой нет информации pdb для этого смещения. Я искал путь к pdb и нашел тот же самый блок - только с другим смещением. Затем я сделал bin поиск байтов «38 00 60 04» в исходной dll. Глядя на то же смещение в обработанной dll, я обнаружил такие же байты. Поэтому я скорректировал RVA и смещение (расположенное путем сопоставления байтов). Бинго! Теперь chkmatch сообщает о тех же результатах для обработанной dll, что и исходная (кроме RVA и FileOffset, которые я изменил).

12
ответ дан 8 December 2019 в 17:27
поделиться

в Windbg попробуйте использовать .symopt +40 , это вызовет загрузку pdb.

2
ответ дан 8 December 2019 в 17:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: