Beiträge von KingLoL
-
-
-
-
-
ok das skript sieht bei mir jezz so aus und läuft nicht
Spoiler anzeigen
[autoit]#include <GuiConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GdiPlus.au3>
#include <Misc.au3>
#include <Color.au3>$file = FileOpenDialog("SnakeLvLEditor", @DesktopDir &"\Eigene Programme\Snake", "Bilder (*.jpg)")
[/autoit] [autoit][/autoit] [autoit]
$iniFile = StringReplace($file, ".jpg", ".ini")_GDIPlus_Startup()
[/autoit] [autoit][/autoit] [autoit]$hBmp = _GDIPlus_ImageLoadFromFile($file)
[/autoit] [autoit][/autoit] [autoit]
$height = _GDIPlus_ImageGetHeight($hBmp)
$width = _GDIPlus_ImageGetWidth($hBmp)
$hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($hBmp) ; erstelle ein Bitmap aus Screenshot zur Verwendung mit GDI+
$hGraphics = _GDIPlus_ImageGetGraphicsContext($hBitmap) ; erstelle Grafikhandle um auf dem Bitmap zu zeichnenLocal $BitmapData = _GDIPlus_BitmapLockBits($hBitmap, 0, 0, $width, $height, BitOR($GDIP_ILMREAD, $GDIP_ILMWRITE), $GDIP_PXF32RGB)
[/autoit] [autoit][/autoit] [autoit]
Local $Stride = DllStructGetData($BitmapData, "Stride") ; Stride ist der Offset von einer Reihe zur nächsten
Local $Scan0 = DllStructGetData($BitmapData, "Scan0") ; Die Bilddaten im Speicher
Local $PixelData
For $row = 0 To $height - 1 ; Reihe für Reihe
For $col = 0 To $width - 1 ; Spalte für Spalte
; lese Farbinformation des aktuellen Pixels(Spalte,Reihe) aus
$PixelData = DllStructCreate("dword", $Scan0 + ($row * $Stride) + ($col * 4))
$Color = DllStructGetData($PixelData, 1)
If $Color = 0 Then
IniWrite($iniFile, "Pixel", $row, $col)
EndIf
Next
Next
_GDIPlus_BitmapUnlockBits($hBitmap, $BitmapData)_GDIPlus_Shutdown()
[/autoit]
MsgBox(0,"","fertig") -
-
-
-
Also das hier?
Spoiler anzeigen
[autoit]For $row = 0 To $Height - 1 ; Reihe für Reihe
[/autoit]
For $col = 0 To $Width - 1 ; Spalte für Spalte
; lese Farbinformation des aktuellen Pixels(Spalte,Reihe) aus
$PixelData = DllStructCreate("dword", $Scan0 + ($row * $Stride) + ($col * 4))
$Color = DllStructGetData($PixelData, 1)
; berechne Grauwert
$Luma = _ColorGetRed($Color) * 0.3 + _ColorGetGreen($Color) * 0.59 + _ColorGetBlue($Color) * 0.11
; Rot Grün und Blau wert werden jeweils auf den berechneten Grauwert gesetzt
DllStructSetData($PixelData, 1, BitOR($Luma, BitShift($Luma, -8), BitShift($Luma, -16)))
Next
Next -
-
habe gemerkt, dass alles super läuft, wenn ich meine funktion nicht aufrufe. Egal welche er aufrufen soll, es klappt einfach nicht.
EDIT: Ich habe den befehl _FTP_ProgressDownload kopiert und nach meinen wünschen umgestaltet... provisorisch, aber es klappt jetzt
-
nee.. das mim backslash muss, weil im Array alle Datein so anfangen: /bin/ ... omg thx für den gedanken im FTP sind die shlashes ja andersrum :DD denke das löst mein problem
EDIT: geht immer noch nicht, mein neuer code:
[autoit]_FTP_ProgressDownload($Connect, @AppDataDir &"\.minecraft\" &StringReplace($FileList[$i], "/", "\"), $FileList[$i], "_MinecraftRepair")
[/autoit] -
Hi, ich hab ein Programm erstellt, was mir minecraft Up- und Downgraded... das Problem dabei liegt bei einem _FTP_ProgressDownload und ich weiss nich was da falsch ist =(. Hab die Stelle markiert
Spoiler anzeigen
[autoit]#RequireAdmin
[/autoit] [autoit][/autoit] [autoit]#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <FTPEx.au3>
#include <File.au3>
#include <Array.au3>
#include <ArrayMore.au3>Global $Percent, $Combo, $CheckboxRepair, $Open, $Connect, $Versions, $Version, $State, $FileSize, $FileList, $FileCounter
[/autoit] [autoit][/autoit] [autoit]
$Percent = 0MsgBox(0, "Minecraft Downgrader by xXKingLoLXx", "WICHTIG!" &@CRLF &"Minecraft muss geschlossen sein, bevor Sie ein Up- und Downgrade ausführen!")
[/autoit] [autoit][/autoit] [autoit]#Region ### START Koda GUI section ### Form=C:\Users\Louis\Desktop\Eigene Programme\Minecraft-Downgrader.kxf
[/autoit] [autoit][/autoit] [autoit]
$Main = GUICreate("Minecraft Downgrader by xXKingLoLXx", 498, 377, 292, 138)
$Screenshot = GUICtrlCreatePic("", 8, 8, 480, 255, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
$Progress = GUICtrlCreateProgress(8, 272, 481, 25)
$Homepage = GUICtrlCreateLabel("http://www.island-minecraft.de.tl/", 8, 356, 163, 17)
GUICtrlSetColor(-1, 0x0000FF)
$Copyright = GUICtrlCreateLabel("Copyright (c) by Island-Minecraft", 336, 356, 155, 17)
$State = GUICtrlCreateLabel("Verbinde mit Download-Server...", 8, 308, 400)
$Combo = GUICtrlCreateCombo("Version wählen...", 8, 328, 105, 25)
$Start = GUICtrlCreateButton("Start", 384, 328, 105, 25, 0)
$CheckboxRepair = GUICtrlCreateCheckbox("Minecraft Reparieren", 120, 328, 121, 21)
GUICtrlSetState($Start, $GUI_DISABLE)
GUICtrlSetState($Combo, $GUI_DISABLE)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###$Open = _FTP_Open("Island-Minecraft")
[/autoit] [autoit][/autoit] [autoit]
$Connect = _FTP_Connect($Open, "*******", "*******", "*******")GUICtrlSetData($State, "0% - Downloade Top-Screenshot...")
[/autoit] [autoit][/autoit] [autoit]
_FTP_ProgressDownload($Connect, @TempDir &"\Screenshot.bmp", "Screenshot.bmp", "_Screenshot")
GUICtrlSetImage($Screenshot, @TempDir &"\Screenshot.bmp")_FTP_DirSetCurrent($Connect,"/minecraft/")
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData($State, "Prüfe verfügbare Versionen...")
$Versions = _Ftp_ListToArray($Connect, 2)
$ComboList = _ArrayToString($Versions, "|", 1)
$ComboList = StringReplace($ComboList, "minecraft-", "")
$ComboList = StringReplace($ComboList, ".jar", "")
GUICtrlSetData($Combo, $ComboList)GUICtrlSetData($State, "Fertig...")
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetState($Start, $GUI_ENABLE)
GUICtrlSetState($Combo, $GUI_ENABLE)While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
ExitCase $Homepage
[/autoit] [autoit][/autoit] [autoit]
ShellExecute("http://www.island-minecraft.de.tl/")
Case $Start
GUICtrlSetState($Start, $GUI_DISABLE)
GUICtrlSetState($Combo, $GUI_DISABLE)
$Version = GUICtrlRead($Combo)
If $Version <> "Version wählen..." Then
If GUICtrlRead($CheckboxRepair) = $GUI_CHECKED Then
GUICtrlSetData($State, "Erstelle Filelist...")
_FTP_DirSetCurrent($Connect,"/bin/")
$FileList = _Ftp_ListToArray($Connect, 2)
$FileSize = 0
For $i = 1 to $FileList[0]
$FileSize = $FileSize + _FTP_FileGetSize($Connect, "/bin/" &$FileList[$i])
$FileList[$i] = "bin/" &$FileList[$i]
Next
_FTP_DirSetCurrent($Connect, "/bin/natives/")
$FileListRec = _Ftp_ListToArray($Connect, 2)
For $i = 1 to $FileListRec[0]
$FileSize = $FileSize + _FTP_FileGetSize($Connect, "/bin/natives/" &$FileListRec[$i])
$FileListRec[$i] = "bin/natives/" &$FileListRec[$i]
Next
_ArrayConcatenate($FileList, $FileListRec, 1)
$FileList[0] = $FileList[0] + $FileListRec[0]
_FTP_DirSetCurrent($Connect, "/")
GUICtrlSetData($State, "0% - Downloade Datei 1 von " &$FileList[0])
For $i = 1 To $FileList[0]
$FileCounter = $i
_FTP_ProgressDownload($Connect, @AppDataDir &"\.minecraft" &$FileList[$i], $FileList[$i], "_MinecraftRepair") ;Hier muss der Fehler sein!
Next
GUICtrlSetData($State, "0% - Downloade Minecraft Version " &$Version)
_FTP_ProgressDownload($Connect, @AppDataDir &"\.minecraft\bin\minecraft.jar", "minecraft-" &$Version &".jar", "_MinecraftVersion")
GUICtrlSetData($State, "Fertig...")
MsgBox(0, "Minecraft Downgrader by xXKingLoLXx", "Minecraft wurde repariert und die gewünschte Version wurde erfolgreich installiert.")
Else
GUICtrlSetData($State, "0% - Downloade Minecraft Version " &$Version)
_FTP_ProgressDownload($Connect, @AppDataDir &"\.minecraft\bin\minecraft.jar", "minecraft-" &$Version &".jar", "_MinecraftVersion")
GUICtrlSetData($State, "Fertig...")
MsgBox(0, "Minecraft Downgrader by xXKingLoLXx", "Ihre gewünschte Minecraft Version wurde erfolgreich installiert.")
EndIf
Else
MsgBox(0, "Minecraft Downgrader by xXKingLoLXx", "Bitte wählen Sie eine Minecraft Version.")
EndIf
GUICtrlSetState($Start, $GUI_ENABLE)
GUICtrlSetState($Combo, $GUI_ENABLE)
EndSwitch
WEndFunc _Screenshot($Percent)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData($State, $Percent &"% - Downloade Top-Screenshot...")
GUICtrlSetData($Progress, $Percent)
Return 1
EndFuncFunc _MinecraftVersion($Percent)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData($State, $Percent &"% - Downloade Minecraft Version " &$Version)
GUICtrlSetData($Progress, $Percent)
Return 1
EndFuncFunc _MinecraftRepair($Percent)
[/autoit]
$CurrencSize = ($Percent / 100) * _FTP_FileGetSize($Connect, $FileList[$FileCounter])
$Percent = $CurrencSize / ($FileSize / 100)
GUICtrlSetData($Progress, $Percent)
GUICtrlSetData($State, $Percent &"% - Downloade Datei " &$FileCounter " von " &$FileList[0])
Return 1
EndFuncEDIT: Bei mir kommt keine Fehlermeldung oder ein Error! Direkt nach ausführen des markierten downloads schließt sich das Programm "normal", also ohne error code und @error konnte ich deshalb ja auch nich rausfinden...
-
nee, iss aber in meinem fall nich so wichtig. Ich muss bloß was aus einer txt datei auslesen und zurückgeben...
also das mit der DLL iss eigentlich optimal -
ok thx ich schreib mir meine DLLs mit Visual C++ und ja, ich kann das ;D
-
Hi, kann man eine Funktion passiv laufen lassen, also einen Befehl ausführen und das Skript trotzdem weiterlaufen lassen.
-
Absender lädt Bild hoch, empfänger guckt ob nen neues Bild auf dem Server ist, wenn ja, dann lädt er das runter.
DFPWare
aber wenn mehr als einer im chat ist? Das iss ja eigentlich das schwierige... -
schwierig, da man sich nicht direkt mit dem anderen Computer verbinden kann oder?
-
Hey Leute... der Fehler von mir war echtn bissle dumm:
Spoiler anzeigen
[autoit]$ping = Ping("www.google.de",250)
[/autoit] [autoit][/autoit] [autoit]
If $ping Then
_UpdateCheck()
Else
Msgbox(0,"Status","Es können keine Updates durchgeführt werden!")
EndIfFunc _UpdateCheck()
[/autoit]
MsgBox(0,"","fisch")
EndFuncdachte es geht auch OHNE timeout, weil er dann 4sec zulässt, aber dann hat sich mien Script aufgehangen...
also jetzt gehts ;D
-
Hi... ich habe brauche grade ein Teilskript, dass mir die INternetverbindung prüft... aber irgendwie funktioniert Ping bei mir nicht.
1. Ich habe Ping auf google gemacht.
2. Ich bekomme einen fehler ABER @error bleibt 0!!
-Zur Auswahl bei @error bei Ping steht aber nur 1-4 zur Auswahl
3. DASSELBE bei keiner InternetverbindungFrage: Wie kann ich jetzt meine Internetverbindung testen?