は、私は、各C exeファイル内のデバッグシェル(Linuxの的環境)を作成する必要があり、次のように私の解決策は次のとおりです。ELFシンボルとc文法コマンドパーサーを使用してインスタントシェルを作成する成熟したソリューションはありますか?
- 、EXEファイルからエルフのシンボルを読む メモリ内のシンボル - >アドレステーブルを構築します。
- ユーザー入力を受け入れるためにreadlineを呼び出すスレッドを実行します。何かが関数呼び出しのように です。
- leacc & yaccを使用して関数名とargリストを解析します。
- シンボルテーブル内の関数のアドレスを検索します。
- args listを使用して関数を呼び出します。
- 書き込まれたすべての関数をシェルコマンドとして即座に入力できます。
これは新鮮なアイデアではないと私の質問です:すでに成熟したコードが実装されていますか? ご協力いただきありがとうございます!
私はLinuxでプログラムしますが、Windowsは決して考えられません – Acewind
私はそのようなことは聞いたことがありませんが、それは興味深い考えです。あなた自身でそれを探索しなければならないかもしれません。 [またはいくつかのコードを投稿してください!] –
にknizz:プロジェクトはgdbなしで展開されるので、gdbの "call"コマンドと同じように使いやすいものにすることができます。 – Acewind