VB2年目です。
画面プロセスにおいて常に最背面かつ「デスクトップの表示」が押されても
表示されているという動作実現の為に,デスクトップに貼り付けるという
処理を行っています。
***********************************************************
Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Declare Function SetParent Lib "user32" _
(ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
Dim lDesktop As Long
lDesktop = FindWindow("Progman", vbNullString)
If SetParent(Me.HWND, lDesktop) = 0 Then
'SetParent失敗
Else
'SetParent成功
End If
***********************************************************
ですがこの場合Explorer.exeが死んでしまうと画面が消失してしまいます。
上記方法以外で画面プロセスを常に最背面かつ「デスクトップの表示」が
押されても表示されているという動作を実現しようとしています。
いろいろネット上で調べまして、最背面はWM_WINDOWPOSCHANGINGという
ウィンドウメッセージに対応することで可能という事がわかりました。
しかし「デスクトップの表示」が押されても表示されているという動きに
ついてはネット上探しても見つかりませんでした。
どなたかご存知の方はいらっしゃるでしょうか?
宜しくお願い致します。