I think you can use ChangeWindowMessageFilter to allow the necessary messages though (like WM_DROPFILES):
Sub Open()
// untested
Const WM_DROPFILES = &h563
Const MSGFLT_ADD = 1
Declare Function ChangeWindowMessageFilter Lib "User32" (MessageID As UInt32, Flags As Integer) As Boolean
Call ChangeWindowMessageFilter(WM_DROPFILES, MSGFLT_ADD) // allow WM_DROPFILES messages through
End Sub