コマンド ラインから Windows フォームの関数またはイベント (ボタン クリックなど) を実行できる必要があります。どうすればこれを行うことができますか?
特定の制約により、コンソールまたは Windows サービスを使用できません。
コマンド ラインから Windows フォームの関数またはイベント (ボタン クリックなど) を実行できる必要があります。どうすればこれを行うことができますか?
特定の制約により、コンソールまたは Windows サービスを使用できません。
Windowsフォームアプリケーションのコマンドライン(コンソール)アプリケーションでメソッドを再利用する場合は、クラスを含むアセンブリを参照し、そのメソッドを次のように呼び出すだけです。
static void Main()
{
Form1 form = new Form1();
form.SomeButton_Click();
}
これが機能するには、SomeButton_Click
メソッドとForm1
クラスがパブリックである必要があることに注意してください。これがあなたのやりたいことであるなら、これは含まれているロジックSomeButton_Click
がいくつかの一般的なユーティリティクラスにリファクタリングされるべきであることを示す良い兆候です。
または、実行中のWindowsフォームアプリケーションでボタンクリックをシミュレートする場合は、いくつかのオプションがあります。
これらのいずれかを実現するにはさまざまな方法がありますが、どちらもメソッドを呼び出すよりも複雑です。問題についてより詳細に説明すると役立ちます。
これは、Powershell スクリプトを使用して実行できる場合があります: Windows PowerShell による UI オートメーション