Modify

Opened 17 years ago

Closed 17 years ago

Last modified 16 years ago

#934 closed Bug (Fixed)

MouseGetCursor consumes left mouse clicks

Reported by: martin Owned by: J-Paul Mesnage
Milestone: 3.3.1.0 Component: AutoIt
Version: 3.3.0.0 Severity: None
Keywords: MouseGetCursor Cc:

Description

if a script continually calls MouseGetCursor() then double clicking in other applications can be disabled.
This thread http://www.autoitscript.com/forum/index.php?showtopic=42268&hl=problem+MouseGetCursor has three reports of the problem, and this example demonstrates. While the script is running double clicking on a desktop shortcut is liable to fail.

$g = GUICreate("check mousegetcursor")
GUISetState()
while GUIGetMsg()<> -3
	MouseGetCursor()
sleep(30)
Wend

Attachments (0)

Change History (2)

comment:1 by J-Paul Mesnage, 17 years ago

Milestone: 3.3.1.0
Owner: set to J-Paul Mesnage
Resolution: Fixed
Status: newclosed

Fixed in version: 3.3.1.0

comment:2 by anonymous, 16 years ago

Sorry - still occurs when using autoIt COM control - I downloaded 3.3.2.0.
I went ahead and made my own COM .dll using VBExpress2008 (had to register it using .NET regasm.exe and gacutil.exe to make it COM visible). And it works *great* with no double click cancelling - but it doesn't return the same set of numbers you have (e.g. Arrow returns 65553).

Please see if the following Class code helps you to make the AutoIt one work.

Public Class cursorData

Public Declare Function GetCursorInfo Lib "user32.dll" (ByRef pc As CURSORINFO) As Integer

Structure CURSORINFO

Dim cbsize As Integer
Dim flags As Integer
Dim hCursor As Integer
Dim p As PointAPI

End Structure

Structure PointAPI

Dim X As Integer
Dim Y As Integer

End Structure

Public Function cursorType()

Dim ff As New CURSORINFO
ff.cbsize = System.Runtime.InteropServices.Marshal.SizeOf(GetType(CURSORINFO))
GetCursorInfo(ff)
cursorType = ff.hCursor

End Function

End Class

Modify Ticket

Action
as closed The owner will remain J-Paul Mesnage.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.