Habe was gefunden was du noch beheben solltest.
wenn man keinen ordner auswählt sondern auf Abbrechen klickt, öffnet sich der player ohne playlist und reagiert nicht wenn man ihn schließen will.
Beiträge von Skerg
-
-
Hatte mal einen Pc mit ähnlichen symptomen. Windows startet bis zum logo normal, anschließend BSOD. Hab dann eine Linux platte eingebaut die hat auch normal gebootet, jedoch hab ich dann versucht ein spiel zu starten. Sofort ist alles abgeschmiert... ende vom lied Graka ausgetauscht und alles hat funktioniert.
-
Ich würde dir trozdem eher zur
[autoit]ControlClick()
[/autoit]raten, die ist wesentlich sicherer wenn es um das ansteuern einer Anwendung geht.
-
ich glaube du verstehst nicht was i2c geschrieben hat. Wir brauchen die UDF, mit der Func allein können wir auch nichts anfangen wenn wir nicht wissen was __Skype_SendCommand() macht. Also währe es angebracht einen link zur UDF zu geben.
Denn selbst wenn wir uns die mühe machen die UDF zu suchen, woher sollen wir wissen ob es nicht 2 Skype UDF's gibt die etwas unterschiedlich sind.Edit: grade nochmal überflogen, so wie es aussieht steuert diese Function nur das Skype sein eigenes FileOpen öffnen um jetzt ohne auswahl etwas zu schicken müsste man wohl anders an die sache rangehen, wenn das überhaupt möglich ist. Aber ohne UDF kann ich das nicht prüfen.
-
und $archiv muss auch noch angepasst werden denn sonst wird in zeile 26 und 29 ein problem auftreten.
-
Wenn eine Variable ByRef übergeben wird arbeitet man innerhalb der Funktion mit der original variable unter anderem namen, ohne ByRef wird die Variable kopiert, was bei sehr langen strings oder großen arrays lange dauern kann.
-
ByRef heißt das die übergebene variable nicht für die aufgerufene funktion kopiert wird sondern mit der ursprungsvariable "verknüpft" wird
[autoit]
ein beispiel:
[/autoit][autoit][/autoit][autoit]
Func test1(ByRef $var)
$var &= " welt"
EndFuncFunc test2($var)
[/autoit][autoit][/autoit][autoit]
$var &= " welt"
EndFunc$var1 = "Hallo"
[/autoit][autoit][/autoit][autoit][/autoit]
test2($var1)
ConsoleWrite($var1 & @CRLF)
test1($var1)
ConsoleWrite($var1 & @CRLF) -
Auch von mir ein frohes Fest an alle.
-
1) Ja Autoit kann sowas.
2) Würdest du damit sicherlich gegen die AGB's des Bilderstellers / der Seite von der die Bilder stammen verletzen und das würde bedeuten kein Code von uns. -
du musst Sql erst im script "starten"
[autoit]#include <SQLite.au3>
[/autoit]
_SQLite_Startup()
$hDatenbank = _SQLite_Open("test.db")
_SQLite_Close($hDatenbank)
_SQLite_Shutdown()
[autoit]
und anschließent "herrunterfahren". ansonsten um SQL normal zu verwenden ist alles nötige in der SQLite.au3.
Die SQLite.au3 hat einen include für die SQLite.dll.au3 die erstellt falls nicht vorhanden eine Dll für SQL im@SystemDir
[/autoit]wenn das scheitert wird eine Temporäre datei erstellt die mit
[autoit]_SQLite_Shutdown()
[/autoit]gelöscht wird. Es ist auch möglich eine eigene SQLite.dll zu verwenden wenn man das braucht, dafür einfach mal _SQLite_Startup() in der hilfe nachschlagen.
-
Du könntest mit
[autoit]Adlibregister("KeepAlive", 10000)
[/autoit]die Function alle xxx sekunden ausführen lassen. Leider ist das aber auch nur im selben Thread also nur bedingt das was du wohl suchst.
-
Ich verstehe nicht wirklich was du meinst, aber um eine schleife zu verlassen gibt es
[autoit]Exitloop
[/autoit]es gibt auch die möglichkeit
[autoit]While $iVar = 0
[/autoit]Die $iVar auf etwas was nicht 0 ist zu ändern.
Am besten gibst du uns ein beispiel und erklärst nochmal genau um was es geht, damit wir dir richtig helfen können -
Gut wenn du es geschafft hast, Hier nochmal zur veranschaulichung wie ich es gemacht hätte.
Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GuiListView.au3>Func _ArrayGetList(Const ByRef $aArray)
[/autoit] [autoit][/autoit] [autoit]
If Not isArray($aArray) Then Return SetError(1,0,0)
GUICreate("", 400, 300)
$bButton = GUICtrlCreateButton("OK", 185, 272, 50)
$hListView = GUICtrlCreateListView("", 2, 2, 394, 268)_GUICtrlListView_InsertColumn($hListView, 0, "Bitte Auswählen", 350)
[/autoit] [autoit][/autoit] [autoit]
For $i = 0 To Ubound($aData)-1
_GUICtrlListView_AddItem($hListView, $aArray[$i])
Next
GUISetState()While True
[/autoit] [autoit][/autoit] [autoit]
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Return SetError(1,0,0)
Case $bButton
Local $iIndex = -1
For $i = 0 To _GUICtrlListView_GetItemCount ($hListView) -1
If _GUICtrlListView_GetItemFocused($hListView, $i) Then
$iIndex = $i
Exitloop
EndIf
Next
If $iIndex >= 0 And $iIndex <= Ubound($aArray)-1 Then Return $aArray[$iIndex]; <--- Variable mit dem ausgewählten wert
MsgBox("", "Fehler", "Bitte Wert auswählen")
EndSwitch
WEnd
EndFuncLocal $aData[15] = [15,14,13,12,11,10,9,8,7,6,5,4,3,2,1]; Beispiel Array
[/autoit]
Local $DeineVar = _ArrayGetList($aData)
If @error = 0 Then MsgBox("","Deine Auswahl",$DeineVar) -
Wenn du es in eine Ini geschrieben bekommst warum nimmst du nicht einfach
[autoit]Return $sClip
[/autoit]um die Variable $sClip an dein Script zurückzugeben und mit
[autoit]$DeineVar = _ArrayDisplay2($DeinArray)
[/autoit]in deine Variable zu bekommen? Natürlich musst du im Code noch ein paar andere sachen ändern, z.B. zeile 164 auskommentieren aber im grunde hast du doch schon alles was du brauchst.
-
-
Wenn du die Namen der Files brauchst kannst du auch
[autoit]#include <Array.au3>
[/autoit]
$aFiles = _FileListToArray(@ScriptDir, "*", 1)
_ArrayDisplay($aFiles)nehmen
-
Du speicherst den Rückgabe wert von
[autoit]_GDIPLus_GraphicsDrawImageRectRect
[/autoit]und das ist laut hilfe True/False versuche mal
[autoit]_GDIPlus_ImageSaveToFile($Bitmap, @MyDocumentsDir & "\Bildausschnitt-Test-NEU.png")
[/autoit] -
Script B kann nicht so ohne weiteres einen Pointer von Script A nutzen da es sich um unterschiedliche Prozesse handelt. Ich hab sowas wie du es machen möchtest mal mit der NomadMemory UDF erziehlt (anbei der einzige mir bekannte "gute" nutzen der UDF). Wenn ich später bei mir am Rechner bin kann ich dir mal schnell ein beispiel zusammen basteln wenn du brauchst.
-
garnicht gesehen :pinch: zu kleiner bildschirm hier und scrollen war mir wohl zu umständlich ^^. Stimmt speichern vor dem öffnen sollte verhindert werden
Spoiler anzeigen
[autoit]#include <ButtonConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>$Form1 = GUICreate("Form1", 615, 438, 192, 124)
[/autoit] [autoit][/autoit] [autoit]
$Code = GUICtrlCreateEdit("", 64, 64, 353, 297)
$btnOpen = GUICtrlCreateButton("Öffnen", 448, 64, 139, 25)
$btnSave = GUICtrlCreateButton("Speichern", 448, 96, 139, 25)
GUICtrlSetState(-1, $GUI_DISABLE)
$btnClose = GUICtrlCreateButton("Close File", 0, 0, 0, 0); Position muss selbst erstellt werden
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetState(@SW_SHOW)While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
ExitCase $btnOpen
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Local $sFilePath = FileOpenDialog("OPEN", @ScriptDir & "", "Code (*.au3;*.txt)", 1)
[/autoit] [autoit][/autoit] [autoit]If @error Then
[/autoit] [autoit][/autoit] [autoit]
MsgBox(4096, "", "Keine Datei ausgewählt")
Else
Local $hdatei = FileOpen($sFilePath, 0)
$sInhalt = FileRead($hdatei)
FileClose($hdatei)
GUICtrlSetData($Code, $sInhalt)
GUICtrlSetState($btnSave, $GUI_ENABLE)
GUICtrlSetState($btnClose, $GUI_ENABLE)
EndIfCase $btnSave
[/autoit] [autoit][/autoit] [autoit]
If $sFilePath <> "" Then
$hdatei = FileOpen($sFilePath, 2)
FileWrite($sFilePath, GuictrlRead($Code))
FileClose($hdatei)
EndIf
Case $btnClose
$sFilePath = ""
GUICtrlSetData($Code,"")
GUICtrlSetState($btnSave, $GUI_DISABLE)
GUICtrlSetState($btnClose, $GUI_DISABLE)EndSwitch
[/autoit] [autoit][/autoit] [autoit]WEnd
[/autoit]ungetestet hab hier kein Autoit... kennt man ja...^^
-
dein Script fliegt dir jedoch immernoch um die ohren wenn mehrere Files ausgewählt werden und "ordendlich" sind die handel auch nicht geschlossen.
[autoit]$hHANDEL = FileOpen("deine File", "dein Mode")
[/autoit]
$sInhalt = FileRead($hHANDEL) #cs oder #ce FileWrite($hHANDEL, "dein Text")
FileClose($hHANDEL)