<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;"><DIV>Andreas,</DIV>
<DIV> </DIV>
<DIV>Will look into that, thanks.</DIV>
<DIV> </DIV>
<DIV>We are also investigating the global mouse hook, etc., also trying to re-implement those OLE drag/drop APIs from very low level, and see if can get some clues. </DIV>
<DIV> </DIV>
<DIV>We have our own implementation of the core DoDragDrop() win32 API. </DIV>
<DIV> </DIV>
<DIV>It seems the problems goes down to SetCapture() for the mouse. What we need is a way to capture the mouse to a hidden window automatically. So far, not successfull yet.</DIV>
<DIV> </DIV>
<DIV>Huihong<BR><BR>--- On <B>Wed, 5/13/09, Andreas <I><pentagonik@sun.com></I></B> wrote:<BR></DIV>
<BLOCKQUOTE style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: rgb(16,16,255) 2px solid"><BR>From: Andreas <pentagonik@sun.com><BR>Subject: Re: [vbox-dev] mouse capture inside vm for dnd (drop and drop)?<BR>To: "Huihong Luo" <huisinro@yahoo.com><BR>Cc: vbox-dev@virtualbox.org<BR>Date: Wednesday, May 13, 2009, 3:36 AM<BR><BR>
<DIV class=plainMail>Huihong,<BR><BR>maybe you could install a separate mouse hook for doing this? In order to hide the guest mouse pointer when its outside the guest window we're using a mouse filter driver (VBoxMouse.sys) to achieve this. There you could also implement newer functionalities like dragging/dropping actions (mouse button handling). Then the driver could notify VboxTray (ring 3, Kernel to User Notification) that something happend like that.<BR><BR>-Andreas.<BR><BR><BR><BR>Huihong Luo wrote:<BR>> We are trying to implement drag and drop from host to guest, and get stuck on it.<BR>>  We figured how to accept drops and send the data to VBoxTray.exe running in guest vm. The problem is how to continue the drag and drop operations inside vm? We need to tell VBoxTray to initiate the drag operations, and we have difficult doing this.<BR>>  When mouse moves to vm window while pressed down, how do you informs VBoxTray.exe to
 handle the mouse events? Seems no applications are getting the mouse events? We need to let a window proc to be called, and then start drag and drop from there.<BR>>  In order to initiate a drag/drop operations, usually requires the mouse is clicked and moved over a visible window. We try to use a hidden window inside vm to initiate a call to the ole ::DoDragDrop() method, so far no luck. The hidden windows does not get the mouse events.<BR>>  perhaps, we are in wrong direction, any suggestions?<BR>>  Thanks,<BR>>  Huihong<BR>> <BR>> <BR>> ------------------------------------------------------------------------<BR>> <BR>> _______________________________________________<BR>> vbox-dev mailing list<BR>> <A href="http://us.mc11.mail.yahoo.com/mc/compose?to=vbox-dev@virtualbox.org" ymailto="mailto:vbox-dev@virtualbox.org">vbox-dev@virtualbox.org</A><BR>> <A
 href="http://vbox.innotek.de/mailman/listinfo/vbox-dev" target=_blank>http://vbox.innotek.de/mailman/listinfo/vbox-dev</A><BR></DIV></BLOCKQUOTE></td></tr></table>