_ImageSearchArea Hilfe !!!

10/21/2010 22:18 Lighthex#1
Hallo alle zusammen ,
wie der Titel schon sagt ich brauche hilfe bei
_ImageSearchArea...
Ich blicke im moment garnicht durch deswegen würde ich etwas um Hilfe bitten.
Ihr könnt mir einfach nur erklären was wo hin muss etc etc etc
ich verstehe im moment den ganzen aufbau der funktion
10/22/2010 12:01 FizzeBu#2
Einfach die Hilfe von AutoIt anschauen, da stehen alle Parameter, sogar mit einer guten Erklärung.
10/22/2010 13:24 Lighthex#3
Ehm das ist nicht dadrin enthalten,weil es nicht von autoit selbst ist ...
10/22/2010 22:21 Lighthex#4
Keiner kennt sich mit _ImageSearchArea aus ?
10/22/2010 22:38 PenGuin :O#5
_ImageSearchArea IST _ImageSearch:

Code:
;===============================================================================
;
; Description:      Find the position of an image on the desktop
; Syntax:           _ImageSearchArea, _ImageSearch
; Parameter(s):     
;                   $findImage - the image to locate on the desktop
;                   $tolerance - 0 for no tolerance (0-255). Needed when colors of 
;                                image differ from desktop. e.g GIF
;                   $resultPosition - Set where the returned x,y location of the image is.
;                                     1 for centre of image, 0 for top left of image
;                   $x $y - Return the x and y location of the image
;
; Return Value(s):  On Success - Returns 1
;                   On Failure - Returns 0 
;
; Note: Use _ImageSearch to search the entire desktop, _ImageSearchArea to specify
;       a desktop region to search
;
;===============================================================================
Func _ImageSearch($findImage,$resultPosition,ByRef $x, ByRef $y,$tolerance)
   [SIZE="4"][B]return _ImageSearchArea($findImage,$resultPosition,0,0,@DesktopWidth,@DesktopHeight,$x,$y,$tolerance)[/B][/SIZE]
EndFunc

Func _ImageSearchArea($findImage,$resultPosition,$x1,$y1,$right,$bottom,ByRef $x, ByRef $y, $tolerance)
	;MsgBox(0,"asd","" & $x1 & " " & $y1 & " " & $right & " " & $bottom)
	if $tolerance>0 then $findImage = "*" & $tolerance & " " & $findImage
	$result = DllCall("ImageSearchDLL.dll","str","ImageSearch","int",$x1,"int",$y1,"int",$right,"int",$bottom,"str",$findImage)

	; If error exit
    if $result[0]="0" then return 0
	
	; Otherwise get the x,y location of the match and the size of the image to
	; compute the centre of search
	$array = StringSplit($result[0],"|")
   
   $x=Int(Number($array[2]))
   $y=Int(Number($array[3]))
   if $resultPosition=1 then
      $x=$x + Int(Number($array[4])/2)
      $y=$y + Int(Number($array[5])/2)
   endif
   return 1
EndFunc