
プログラムの内部作業方法/関数を直接呼び出して、実行可能ファイルのGUIをバイパスできるかどうか疑問に思います。
実行可能ファイルは、Linux上で動作するGnomeまたはKDEインターフェースを持つC / C ++プログラムであると仮定します。
答え1
これは特別な状況で行うことができます。説明は、Cダイナミックリンクローダを介してプラグインを動的にロードするのと似ています。man dlopen
詳細を理解してください。一般に、いわゆるコードは「場所に依存しない」にコンパイルする必要があるため、特定のプログラムでは運が悪いことはほとんど確実です。
あなたは見ることができますユーザーモードの実行コードを書くと、これを行う方法についてのヒントが得られますが、説明されているようには実行されないことはほぼ確実です。
答え2
これはまだテストされていません。私は試してみます。
それで、それが答えと見なされるかどうかはわかりません。
デバッガを使用して実行を追跡する場合(耐久性のある作業)。実行したい関数のアドレスを書き留めた後。スクリプトを使用してリモートでデバッガを制御できます。ほとんどのアプリケーションでは、まずいくつかの初期化手順を実行する必要があります。
会議:
- デバッガの起動
- 実行ファイルのロード
- アプリケーション初期化後のブレークポイントの設定
- 走る
- ブレークポイントに到達したら、その関数にジャンプします。