@ [Джон Calsbeek]
Затем он жалуется на недостающие символы.
(gdb) p (NSUInteger)[(NSObject*)$esi retainCount]
No symbol table is loaded. Use the "file" command.
(gdb) p [(NSArray *)$esi count]
No symbol "NSArray" in current context.
Я пытался загрузить символы для Фонда:
(gdb) add-symbol-file /System/Library/Frameworks/Foundation.framework/Foundation
add symbol table from file "/System/Library/Frameworks/Foundation.framework/Foundation"? (y or n) y
Reading symbols from /System/Library/Frameworks/Foundation.framework/Foundation...done.
, но до сих пор не повезло:
(gdb) p [(NSArray *)$esi count]
No symbol "NSArray" in current context.
Во всяком случае, я не думаю, что литье является решением этой проблемы, вам не нужно знать, какой именно объект он хочет, чтобы отправлять сообщения на него. Странная вещь, что я нашел NSCFArray у меня нет никаких проблем с отправкой сообщений:
(gdb) p $eax
$11 = 367589056
(gdb) po $eax
<NSCFArray 0x15e8f6c0>(
file://localhost/Users/ask/Documents/composing-fractals.pdf
)
(gdb) p (int)[$eax retainCount]
$12 = 1
так что я думаю, что была проблема с объектом я расследовал ... или что-то.
Благодарим за помощь!
Примечание. Тег [reverseing] не предназначен для описания обратных инженерных тем; вместо этого использовать [обратное проектирование] – user1354557 2016-06-22 15:59:02