Ich kenn mich damit nicht wirklich aus, aber vielleicht solltest du mal die anderen Modi von _FFLinkClick versuchen.
[autoit]_FFLinkClick("javascript:__doPostBack('ctl00$ContentBody$pgrBottom$ctl08','')", "href")
[/autoit]Ich kenn mich damit nicht wirklich aus, aber vielleicht solltest du mal die anderen Modi von _FFLinkClick versuchen.
[autoit]_FFLinkClick("javascript:__doPostBack('ctl00$ContentBody$pgrBottom$ctl08','')", "href")
[/autoit]Ja das wäre möglich, und auch gar nicht so schwer umzusetzen. Aber dein Konzept würde nicht berücksichtigen, dass man ein Fenster auch aktiv lässt wenn man kurz vom PC weg muss ;).
Du suchst vermutlich diese Funktion...
[autoit]_GUICtrlEdit_Find
[/autoit]Ist AppData in dem Treeview überhaupt vorhanden? Falls es vorhanden sein sollte, dann versuch mal etwas anderes (z.B. "Desktop|" & @UserName & "|Bilder"). Und wieso editierst du deinen Beitrag, nachdem ich dich auf einen Fehler hingewiesen habe? Das ist doch irgendwie irreführend für alle die erst später auf diesen Beitrag stoßen. ![]()
Mach es doch so.
[autoit]ControlTreeView ("Ordner suchen", "Destination Directory:", "[CLASS:SysTreeView32; INSTANCE:1]", "Expand", @AppDataDir)
[/autoit]
Und wieso hängst du "|AppData" an den Rückgabewert von ControlTreeView an? ![]()
*seufz* kriegt euch mal wieder ein...
In der Hilfe zu RunWait steht, dass der Rückgabewert dem Exitcode der exe entspricht. Ist das was du brauchst?
[autoit] Zitatund womit stoppe/pausiere ich?
_SoundStop
_SoundPause
Darauf kann man allerdings auch selbst kommen
.
Ich würde es so machen, dann muss nicht jedesmal das Array komplett durchsucht werden ;).
#include <GUIConstants.au3>
#include <Array.au3>
Global $aRemaining[33]
$aRemaining[0] = 32
For $i = 1 To $aRemaining[0]
$aRemaining[$i] = $i
Next
$Form1 = GUICreate("Form1", 458, 276, 193, 125)
$Edit1 = GUICtrlCreateEdit("", 0, 0, 457, 169)
$Button1 = GUICtrlCreateButton("Karten Geben", 104, 184, 235, 81, 0)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
If $aRemaining[0] > 0 Then
$iRandom = Random(1, $aRemaining[0], 1)
If Not $iRandom Then $iRandom = 1
GUICtrlSetData($Edit1, GUICtrlRead($Edit1) & StringFormat("%02d", $aRemaining[$iRandom]) & " ")
_ArrayDelete($aRemaining, $iRandom)
$aRemaining[0] -= 1
Else
MsgBox(64, "Info", "Alle Karten verteilt")
_Reset()
GUICtrlSetData($Edit1, "")
EndIf
EndSwitch
WEnd
Func _Reset()
ReDim $aRemaining[33]
$aRemaining[0] = 32
For $i = 1 To $aRemaining[0]
$aRemaining[$i] = $i
Next
EndFunc ;==>_Reset
So meinst du?
#include <File.au3>
#include <Array.au3>
$sPath_Src = @ScriptDir & "\Test"
$sPath_Dst = @ScriptDir & "\Destination"
$aFiles = _FileListToArrayRecursiv($sPath_Src, "Bild*.tif", 1)
[/autoit] [autoit][/autoit] [autoit]For $i = 1 To $aFiles[0]
FileCopy($sPath_Src & "\" & $aFiles[$i], $sPath_Dst & "\Bild" & StringFormat("%03d", $i) & ".tif", ![]()
Next
; #FUNCTION# ======================================================================================
; Name ..........: _FileListToArrayRecursiv()
; Description ...: Findet Dateien in einem Verzeichnis und allen Unterverzeichnissen
; Syntax ........: _FileListToArrayRecursiv($sPath, [$sFilter = "*"])
; Parameters ....: $sPath - Verzeichnispfad in dem gesucht werden soll.
; $sFilter - [optional] Dateinamenfilter (z.B. "*.mp3"). Wildcards werden unterstützt.
; $iFlag - [optional] 0 = Dateien und Ordner auflisten.
; 1 = Nur Dateien auflisten.
; 2 = Nur Ordner auflisten.
; Return values .: Success - Return Array with Files ($Array[0] = Count)
; Failure - Return 0
; Author ........: name22 (autoit.de)
; Remarks .......: Benötigt #include <File.au3>
; =================================================================================================
Func _FileListToArrayRecursiv($sPath, $sFilter = "*", $iFlag = 0)
Local $aFiles = _FileListToArray($sPath, $sFilter, $iFlag)
If Not IsArray($aFiles) Then
Local $aFiles[1]
$aFiles[0] = 0
EndIf
Local $aFolders = _FileListToArray($sPath, "*", 2)
If Not IsArray($aFolders) Then
If $aFiles[0] = 0 Then Return 0
Else
$bResult = False
For $i = 1 To $aFolders[0]
$aSearchTmp = _FileListToArrayRecursiv($sPath & "\" & $aFolders[$i], $sFilter, $iFlag)
If IsArray($aSearchTmp) Then
$bResult = True
ReDim $aFiles[$aFiles[0] + $aSearchTmp[0] + 1]
For $j = 1 To $aSearchTmp[0]
$aFiles[$aFiles[0] + $j] = $aFolders[$i] & "\" & $aSearchTmp[$j]
Next
$aFiles[0] += $aSearchTmp[0]
EndIf
Next
EndIf
Return $aFiles
EndFunc
Du kannst die devcon.exe per AutoIt über Befehlszeilenparameter steuern. Einfach den gewünschten Befehl als Parameter bei z.B. ShellExecute verwenden.
Zuerst solltest du dir vielleicht mal die Grundkenntnisse aneignen. Die "Wichtigen Links" links von hier solltest du dir mal anschauen.
1. Ja. Mit HotKeySet oder _IsPressed.
2. Ich kenn micht damit zwar nicht aus, aber mit der NomadMemory.au3 kannst du Adressen aus dem Speicher auslesen und verändern.
3. Ja. Mit FileOpen, FileWrite und FileClose.
4. Wenn du damit PixelGetColor meinst, dann ja ;).
Falls du nicht weiß, wie du die Funktionen verwendest schau dir einfach den zugehörigen Hilfeeintrag an.
Also Bei mir funktioniert das von UEZ auch wenn ich 2 Bildschirme angeschlossen habe.
Bei mir sieht das ganz normal aus, also die Kurve beginnt exakt am linken Bildschirmrand. Ich kann mir echt nicht vorstellen woran das liegen könnte, aber an deinem Script wird es wohl nicht liegen wenn es bei mir funktioniert.
Bei mir geht es auch im Fullscreen Modus. Kannst du mal dein Script zeigen, oder den relevanten Teil davon?
Das ist ja eigenartig... Hast duu mal das Array für die Punkte der Kurve überprüft? Ich habe mit der Funktion nämlich keine Probleme.
#include <GDIPlus.au3>
[/autoit] [autoit][/autoit] [autoit]$hWnd = GUICreate("Test", 400, 400)
GUISetState()
_GDIPlus_Startup()
[/autoit] [autoit][/autoit] [autoit]$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hWnd)
_GDIPlus_GraphicsSetSmoothingMode($hGraphic, 2)
$hPen = _GDIPlus_PenCreate(0xFF000000, 5)
[/autoit] [autoit][/autoit] [autoit]Global $aPoints[4][2]
$aPoints[0][0] = 3
$aPoints[1][0] = 0
$aPoints[1][1] = 200
$aPoints[2][0] = 200
$aPoints[2][1] = 300
$aPoints[3][0] = 400
$aPoints[3][1] = 200
_GDIPlus_GraphicsDrawCurve($hGraphic, $aPoints, $hPen)
[/autoit] [autoit][/autoit] [autoit]_GDIPlus_GraphicsDispose($hGraphic)
_GDIPlus_PenDispose($hPen)
_GDIPlus_Shutdown()
While GUIGetMsg() <> -3
WEnd
Hast du schon versucht eine andere Funktion zu verwenden? Z.B. _GDIPlus_GraphicsDrawRect? Ich kann mir nämlich nicht vorstellen, dass es an dieser Funktion liegt... ![]()
Vielleicht, aber ich wüsste nicht wie...^^
ZitatIch bin mir nicht sicher, ob das das richtige für mein Script ist
Und ich bin mir nicht sicher was du überhaupt willst. Ich weiß noch nicht einmal was genau du mit "liegpunkt" meinst. Außerdem habe ich dich bereits darauf hingewiesen, dass du mit deinen Doppelpostings aufhören sollst. Benutze doch einfach den bearbeiten Knopf um deine alten Beiträge zu editieren.
Nö, wieso? Dann muss ich es nicht machen ;).