PDA

View Full Version : dll doesn't show up on the taskbar


narsinha
05-12-2004, 08:09 AM
I have used the example provided in VB6Actiion to create my own dll. I have created a build script to register, execute and unregister the dll using the examples. The users of this build script are complaining that they can't alt-tab to the form that the dll displays. The form doesnot show on the taskbar. I have tried displaying the form as non-modal in the dll, but the build script won't allow a non-modal form to be displayed. Is there a way to work around this problem.

kinook
05-12-2004, 09:21 AM
There is (gleaned from http://groups.google.com/groups?hl=en&lr=&threadm=7i1km7%2426q%40nfs0.sdrc.com&rnum=2&prev=/groups%3Fhl%3Den%26lr%3D%26q%3Dvb6%2Bform%2Bshow%2 Btaskbar):

Add this code to the VB form

Private Sub Form_Resize()
Me.Caption = Me.Caption
End Sub

narsinha
05-12-2004, 10:27 AM
That helps. Users can now alt-tab to the dll.

BUT it still does not show up in the taskbar. The link you provided mentioned setting ShowInTaskbar property in VB. This property is true when I display its value in the form_load. Need to investigate this further.

kinook
05-12-2004, 10:40 AM
I noticed that too. One workaround would be to force the form to be always on top:

' in form declaration section
Private Const HWND_TOPMOST = -1
Private Const SWP_NOMOVE = &H2
Private Const SWP_NOSIZE = &H1

Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

Private Sub Form_Load()
SetWindowPos Me.hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE
End Sub