@ [John Calsbeek]
Dann klagt es über fehlende Symbole.
(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.
Ich habe versucht, die Symbole für Foundation zu laden:
(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.
aber noch kein Glück:
(gdb) p [(NSArray *)$esi count]
No symbol "NSArray" in current context.
Wie dem auch sei, ich Gießen nicht glaube, die Lösung für dieses Problem ist, Sie sollten nicht wissen müssen, um was für ein Objekt es sich handelt, um Nachrichten an sie senden zu können. Die seltsame Sache ist, dass ich eine NSCFArray fand ich habe keine Probleme, das Senden von Nachrichten an:
(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
also denke ich, gibt es ein Problem mit dem Objekt war ich nachforschte ... oder so ähnlich.
Danke für Ihre Hilfe!
Hinweis: Das [reversing] -Tag soll nicht zur Beschreibung von Reverse-Engineering-Themen verwendet werden. Verwenden Sie stattdessen [Reverse-Engineering] – user1354557