どのようにメインメニューからツールプログラムトレイアイコンはWindows*デフォルト*?

StackOverflow https://stackoverflow.com/questions/904790

  •  05-09-2019
  •  | 
  •  

質問

た場合のプログラムを実行するとのWindows7では、自動的に隠しアイコンで表します。はありまマニフェストの設定またはオプションをWindows7へメインメニューからツールのアイコンによるデフォルト?

役に立ちましたか?

解決

.NETロックスのポッドキャストではなく、長い時間前に、マイクロソフトからケイトグレゴリーは、それが不可能であることを言っていた。

彼女は次のように言った:「ユーザーが(トレイアイコン)たい場合、彼/彼女はそこにそれを置くだろう」。 この理由は、トレイ領域に混乱を防止するためである。

他のヒント

あなたが本当にあなたのトレイアイコンを表示したい場合は、

は、あなたは最小限のテキストでバルーンをポップアップし、ちょうどその後バルーンを隠し、それがコード例以下で、再び影だことができます:

trayIcon.ShowBalloonTip(30000, "", ".", ToolTipIcon.None)

Dim balloonHandle As IntPtr = GetBalloonHwnd(balloonText) ' mainly: FindWindow("tooltips_class32", Nothing)

If (balloonHandle <> IntPtr.Zero) Then
  Dim sysShadowClassHwnd As IntPtr = FindWindow("SysShadow", Nothing)

  ' will hide balloon and leaving a small shadow artifact - just for this balloon
  PostMessage(balloonHandle, WM_SETREDRAW, IntPtr.Zero, IntPtr.Zero)
  SetWindowPos(balloonHandle, IntPtr.Zero, 0, 0, 0, 0, SWP_HIDEWINDOW)

  If (sysShadowClassHwnd <> IntPtr.Zero) Then
    ' this will remove the small shadow artifact
    PostMessage(sysShadowClassHwnd, WM_CLOSE, IntPtr.Zero, IntPtr.Zero)
  End If
End If
Explorer.exeのを考えているので、

あなたが(例えば、30秒ごとに)これを繰り返している場合、あなたのトレイアイコンは、ユーザーに表示して開きバルーンがあり、そこに滞在します。いくつかのマイナーな問題 - などがないよう、アイコンの上に直接、右クリック - 残っています。

私は本当に、ユーザーが手動で各更新のためにこれを行うために意図されていない私達の会社のソフトウェアのためのトレイアイコンを表示するために使用します。だから、多分これが誰かを助ける...:)

そうでなければ、私は完全に同意する:。これは、アプリケーションによって制御されない、唯一のユーザーの手にする必要があります。

これは確かに「不可能」ではありません。エクスプローラ自体によって使用されるトレイアイコンを取得し、それらの可視性を変更するための文書化されていないCOMインタフェースITrayNotifyがあります。ここでは完全なC ++ソース: http://thread0.me/tag/windows/する

もちろん、非公式のAPIを使用しての のは危険であり、Windows 8を使用すると、XPのための2つの異なる定義を使用する必要がありますを意味し、このAPIへの変更を壊すintoducedた - win7のとWin8 - Win10を。でもねえ、クロムrel="nofollow">でもをだまします。ただ、適切に障害を処理するようにしてくださいます。

A 質問どの複製 の回答の方法で行われます。

こちらのリンク (交互リンク る方法を説明し、 こちらはC#のコード.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top