タスク バー アイコンの復元は、(エクスプローラではなく) アプリケーション自体によって実装されます。RegisterWindowMessage("TaskbarCreated")
必要に応じてタスク バー アイコンを復元するために、アプリケーションが応答する必要がある"TaskbarCreated" というウィンドウ メッセージ (値は で取得できます) があります。
たとえば、アプリケーションで次のことができます。
const int uTaskbarCreatedMsg = RegisterWindowMessage("TaskbarCreated");
次に、その WndProc 関数で:
LRESULT CALLBACK WndProc(HWND w, UINT msg, WPARAM wparam, LPARAM lparam)
{
// ... handle other messages
if (msg == uTaskbarCreatedMsg) {
NOTIFYICONDATA nid;
// fill in details to create icon
Shell_NotifyIcon(NIM_ADD, &nid);
return 0;
}
// ... default message handling
}
したがって、アプリケーションにタスク バー アイコンを強制的に復元させるには、同じTaskbarCreated
メッセージをアプリケーション内の適切なウィンドウに送信する必要があります。HWND
ウィンドウに到達する 1 つの方法は、 を使用することですFindMessage
(Apache Monitor はオープン ソースであるため、探すウィンドウを簡単に見つけることができます)。