Zitatwenn ich des so mach z.B. gehts net
Meine Lieblingsfehlermeldung!
Was geht nicht? Welche Fehlermeldung erhälst Du?
BTW: Meine UDF kann (bisher) nur ID3-Tags auslesen, nicht schreiben.
Zitatwenn ich des so mach z.B. gehts net
Meine Lieblingsfehlermeldung!
Was geht nicht? Welche Fehlermeldung erhälst Du?
BTW: Meine UDF kann (bisher) nur ID3-Tags auslesen, nicht schreiben.
Wir lassen uns nicht veralbern!
Lern die Grundlagen! Wenn Du dann konkrete Fragen hast, kannst Du einen neuen Thread aufmachen.
[Thread closed]
Eine Funktion für beides (9 Zeilen). ![]()
Edit: Oder in der extrem gekürzten Version = 5 Zeilen (Func und EndFunc mitgezählt). ![]()
Ok, Du hast recht (gerade getestet). Hatte da gerade einen Denkfehler.
Aber der Lösungsweg von monkey ist umständlich (geht viel kürzer). ![]()
Ja, wenn er das Ergebnis (291) so speichern (2 Byte) würde, aber nicht, wenn er es dann noch auf ASCII reduziert (1 Byte).
Und wenn Du im Passwort den Buchstaben "n" hast (Asc = 110) und im Text den Buchstaben "µ" (Asc = 181) bekommst Du ebenfalls 291 raus. Wie hälst Du die auseinander?
Wie Du siehst, funktioniert Deine "Verschlüsselung" so nicht.
Diese Art:
[autoit]
$iAsc = $aString[$i] + $aPassword[$o]
If $iAsc > 255 Then $iAsc -= 255
von "Verschlüsselung" kann nicht funktionieren, da sie nicht eindeutig ist. Soll heißen: der verschlüsselte Buchstabe kann zu mehreren Klartext-/Passwort-Kombinationen passen.
Da musst Du Dir schon etwas anderes ausdenken. ![]()
Einfach die Funktion "_log" um eine Zeile erweitern:
[autoit]
Func _log($text)
$aResult = StringRegExp($text, ".{35,45}( .)", 3)
If Not @error Then
$aAResult = StringTrimLeft($aResult[0], 1)
GUICtrlSetData($listLog, _NowTime() & " -> " & StringReplace($text, $aResult[0], "|" & $aAResult, 1) & "|")
Else
GUICtrlSetData($listLog, _NowTime() & " -> " & $text & "|")
EndIf
_GUICtrlListBox_SetTopIndex($listLog, _GUICtrlListBox_GetCount($listLog) - 1)
EndFunc ;==>_log
Ein Zugriff via Skript verstösst gegen die AGB des Betreibers:
ZitatThis web site is intended to be accessed via standard web browser software such as the ones present on our Compatible Browsers section, and similar products via direct interaction by a human. With the exception of publicly accessible RSS feeds provided in XML format, the web site and its associated files are not meant to be accessed via any automated means such as by scripts or bots or automated applications.
[Thread closed]
Einfach und kurz:
[autoit]
$hGui = GUICreate("Test", 600, 600)
Dim $Button[6]
For $z = 0 To 5
$Button[$z] = GUICtrlCreateButton($z, 10 + Mod($z, 2) * 300, 10 + Int($z / 2) * 85, 282, 80)
Next
GUISetState()
Do
Until GUIGetMsg() = -3
So ein Client verstösst gegen die AGB des Betreibers und somit auch gegen unsere Forenregeln. Kein Support!
[Thread closed]
Eben nach einem Windows-Neustart lief es erst auch nicht (Absturz).
Dann habe ich das Skript als 64 Bit compiliert und anschließend als 32 Bit und jetzt funktioniert es wieder.
Edit: Raupi meldet gerade, so funktioniert auch das Ursprungs-Skript.
Richtig komisch wird es (weil es so funktioniert), wenn man die Array-Variablen gegen normale austauscht:
#region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_UseX64=n
#endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <GuiStatusBar.au3>
Global $bTest = True
[/autoit] [autoit][/autoit] [autoit]Opt("GUIOnEventMode", 1)
$hGui = GUICreate("Test", 200, 200)
Local $aParts[3] = [150, -1]
$hStatus = _GUICtrlStatusBar_Create($hGui)
_GUICtrlStatusBar_SetParts($hStatus, $aParts)
_GUICtrlStatusBar_SetText($hStatus, "Bereit...", 0)
GUISetOnEvent(-3, "_exit")
GUISetState()
AdlibRegister("Chance", 2000)
[/autoit] [autoit][/autoit] [autoit]While 1
If $bTest Then
If _GUICtrlStatusBar_GetText($hStatus, 0) <> "Warte..." Then _GUICtrlStatusBar_SetText($hStatus, "Warte...", 0)
Else
If _GUICtrlStatusBar_GetText($hStatus, 0) <> "Bereit..." Then _GUICtrlStatusBar_SetText($hStatus, "Bereit...", 0)
EndIf
Sleep(100)
WEnd
Func Chance()
Local $aText[10] = ["Test", "loooooool", "huhuhuuhuh", "12345", "nixxxx", "hmmmm", "naaaaaja", "blaaaaaa", "bkuuub", "soooo"]
_GUICtrlStatusBar_SetText($hStatus, $aText[Random(0, UBound($aText) - 1, 1)], 0)
Sleep(1000)
$bTest = Random(0, 1, 1)
EndFunc ;==>Chance
Func _exit()
Exit
EndFunc ;==>_exit
Uih! Die Idee ist gut!
Eine automatische Ordnerstruktur erstellen. Da könnte man dann wieder eine "Copy"- und eine "Move"-Funktion anbieten.
Das dürfte dann aber eine ziemlich langwierige Aktion werden (42000 Dateien umkopieren). ![]()
Mache mich mal an die Arbeit...
Welche Website (Link)?
Und welche Information benötigst Du dort?
Eine Schleife ist gar nicht nötig:
[autoit]
$sCheck = StringRegExpReplace(@IPAddress1, '172\.30\.(\d{1,3})\.\d{1,3}', '$1')
If $sCheck >= 0 And $sCheck < 16 Then
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\samplekey", "Remote", "REG_SZ", "ON")
Else
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\samplekey", "Remote")
EndIf
Alina: Der Fehler, der bei Dir auftritt, könnte mit der AutoIt-Begrenzung auf 65532 GUI-Controls zu tun haben. Jedes Listview-Item wird vermutlich als Control gezählt?! Das würde erklären, warum es bei mir noch funktioniert, bei Dir aber nicht mehr. ![]()
Dazu brauchst Du nur eine rekursive Funktion. Hier habe ich das mal eingesetzt.
Skilkor: Wieso? Das verschieben der Dateien funktioniert doch bereits! Wenn Du Einträge markiert hast, kannst Du diese kopieren, verschieben oder löschen.
Alina: Das Suchfeld wird während des einlesens der MP3-Dateien rot? Das dürfte eigentlich nicht passieren. Es sei denn, das da irgendeine Grenze bei AutoIt überschritten wird?!
Ich habe das Programm bisher "nur" mit 42022 Dateien getestet. Da funktioniert aber alles problemlos. Allerdings ziehen sich dann sämtliche Funktionen etwas in die Länge. Von daher ist eine Aufteilung keine schlechte Idee. Deshalb habe ich ja auch die Möglichkeit geschaffen einzelne Ordner/Festplatten einlesen zu lassen. Du kannst also die Funktion "Verzeichnis nach MP3s durchsuchen" benutzen und dann z.B. "C:\" auswählen. Diese Liste speicherst Du dann als "MP3s_auf_c" oder so.
Und es gibt noch eine Lösungsmöglichkeit (aber nur geringfügig anders als die von blubbstar):
[autoit]
$Path = "c:\Programme\Bla\blub.exe"
$FileName = StringMid($Path, StringInStr($Path, "\", 0, -1) + 1)
MsgBox(0, "", $FileName)