私は、他のコンパイルされた C# アプリケーション (.exe) を読み込んで、EXE からフォームを表示できる翻訳アシスタントを構築しようとしています。現在の英語の単語を表示する英語の列が隣にあるテーブルとともに、個別に表示されます。表示され、翻訳者が入力できる値の別の列。翻訳が完了すると、翻訳者は翻訳を resx ファイルにエクスポートしてプロジェクトに追加したり、記録目的で Excel ファイルとしてエクスポートしたりできます。
私はC#を初めて使用するため、構造が正しいかどうかわかりません。コンパイラー中にdllが.exeに挿入されるように設計し、このdllを使用して、翻訳アプリケーションが文字列を抽出できます。これはほとんどの文字列で機能しますが、複数の文字列が異なる時間に同じテキスト ボックスに表示される場合 [切断、接続など] でスタックします。どこでも検索してみましたが、アプリケーションを作成するために、アプリケーションからすべての文字列を引き出し、それらがどのフォームに属しているかを特定する方法に関する情報を見つけることができません。
私が直面している他の問題は、実際に翻訳された文字列を表示することです。翻訳された文字列がどのように見えるかの例を表示できれば、私が構築しているアプリケーションは非常に有益です。しかし、コンパイルされたアプリケーションの側面を読み取ってインスタンスを作成することしかできないことがわかりましたが、それを翻訳することはできません。
Reflection を使用して exe を読み込んでいますが、オンラインで、reflection.emit を使用してフォームを変更する必要があることを理解しました。しかし、フォームから識別され、インスタンスとして抽出されるすべての文字列を見つけているため、文字列を変更すると文字列のインスタンスのみが変更され、フォーム自体のインスタンスは変更されません。したがって、私は正しい表示ができません。
私はこれらの最後の 2 つの質問を解決するために 3 週間試みてきました。これを解決するのを手伝ってくれてありがとう。