2

私はWindowsで自動起動するプログラムに取り組んでいます。プログラムはでwindows-forms書かれたアプリケーションですC#。起動すると、自動的に非表示になり、トレイアイコンが表示されます。したがって、トレイにのみ表示され、タスクバーには表示されず、ウィンドウとしても表示されません。

ここで、実行中のWindowsフォームにID(単純なint番号)を送信したいのですが、フォームには、受信した番号が記載されたメッセージボックスが自動的に表示されます。

送信は、監視対象のデータベースやテキストファイルではなく、直接行う必要があります。

開いているWindowsフォームにデータを送信する方法はありますか?

どんな助けも感謝します:)

4

2 に答える 2

3

標準のWindowsAPI SendMessage(同期)またはPostMessage(非同期/送信して忘れる)を使用できます。これらのAPIを使用するには、Windowsフォーム/アプリケーションのメインフォームのハンドルを知っている必要があります。

他の方法もありますが、これははるかに単純で、同じプロセスまたは他のプロセスで機能し、渡す必要がある場合にのみ整数に対して非常に軽量です。

于 2012-10-29T15:49:16.573 に答える
3

名前付きパイプはどうですか?

それらは永続的で、簡単にアクセスできます。2.0と3.5の両方の実装について詳しく説明しているブログ投稿は次のとおりです 。http ://www.switchonthecode.com/tutorials/dotnet-35-adds-named-pipes-support

于 2012-10-29T15:52:14.763 に答える