0

クローズド ソース アプリケーションで既に識別されているクラスにいくつかのメソッドを追加する必要があります。f-script anwywhere と gdb を使用して、目標を達成するために何と対話する必要があるかを知っています。

ただし、実行中のアプリケーションにコード (できれば object-c) を挿入できるようにするための解決策を見つけるのに苦労しています。

最近Snow leopardにアップグレードしたばかりで、SIMBLの問題を認識しているため、当面はgdb経由でコードを挿入し、手動でコードを開始するだけで十分です.

これを開始するための基本的なガイドはありますか? グーグルで本当に役立つものを見つけることができません。

アプリケーションバンドルを作成する必要があると思います(これまでにこれを行ったことがないため、これ自体が課題です)、GDBを使用してアプリケーションにロードします。これが完了したら、GDB からバンドル コードを呼び出すことができると信じています。

基本的には、バンドルの作成とそれに続く GDB 経由のロードに関するヒントが必要だと思います。クラス/オブジェクトをアプリケーションにロードする簡単な例 (単純に hello world が適しているかもしれません) は、非常に高く評価されます。

バンドルに焦点を当てることで誤解を招く可能性もありますか?

ありがとう、

4

1 に答える 1

0

DYLD_INSERT_LIBRARIESメインの実行可能ファイルをロードする前に、環境変数を使用して(プレーンで古い動的) ライブラリをロードします。を参照してくださいman dyld

Mike Ash は、gdb を使用した簡単なコード インジェクションに関する素晴らしい記事を書いています。

于 2009-09-09T11:53:51.903 に答える