Problem mit Patcher von iMer

03/07/2011 13:54 Jaffa Cake#1
Hallo,
habe nen Problem mit dem Patcher von iMer.
Eigentlich funktioniert alles soweit.
Habe den Patcher unter Desktop/RetroWorld²/
Wenn ich den Patcher starte klappt eigentlich alles. Er erstellt die Ordner auch im Unterordner. Habe jetzt zum Test mal die Datein test1.txt, test2.txt & test3.txt genommen.
Problem: Die Datein läd der Patcher auf den Desktop, nicht in den Unterorder.
Achja.. außerdem heißen die Datein dann immer z.B. RetroWorld²test1.txt
Mein Verdacht ist jetzt natürlich, das irgendwo nen / fehlt.
Nur wo? Habs mit der files.txt versucht. Da nen / oder \ reingetan. Macht keinen Unterschied.
Meine patch.ini sieht wie folgt aus:
Code:
http://patch.retroworld2.tld/
http://patch.retroworld2.tld/fenster_klein.html
http://patch.retroworld2.tld/fenster_gross.html
http://retroworld2.tld/index.php?s=login
Hoffe, das mir da jemand helfen kann.
gruß,
Jaffa
03/08/2011 15:13 Jaffa Cake#2
Problem besteht weiterhin..
03/08/2011 16:22 .Resistance#3
Poste mal deinen angepassten Code hier.
Du hast 100% im Code einen kleinen Fehler gemacht
03/08/2011 16:29 Saaja#4
Nimm den Patcher von musicinstractor.
Ist schneller und einfacher ;)
03/08/2011 16:30 Jaffa Cake#5
Ok..hier ist der Code:
PHP Code:
#Include <File.au3>
#Include <GuiConstants.au3>
#include <IE.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#NoTrayIcon
Global $m2ordner = @ScriptDir
Global $ScriptDir = @ScriptDir
Global $TempDir = @TempDir
Global $url = FileReadLine($ScriptDir & "\patch.ini", 1)
Global 
$adurl = FileReadLine ($ScriptDir & "\patch.ini",2)
Global 
$fensterurl = FileReadLine ($ScriptDir & "\patch.ini",3)
Global 
$buttonurl = FileReadLine ($ScriptDir & "\patch.ini",4)
FileInstall("C:\Program Files\Metin2Test\patchskin\main.bmp", @Tempdir&"\metin2start.bmp",1)
FileInstall("C:\Program Files\Metin2Test\patchskin\btn_startgame_up.bmp", @Tempdir&"\btn_startgame_up.bmp",1)
FileInstall("C:\Program Files\Metin2Test\patchskin\btn_settings_up.bmp", @Tempdir&"\btn_settings_up.bmp",1)
FileInstall("C:\Program Files\Metin2Test\patchskin\btn_newaccount_up.bmp", @Tempdir&"\btn_newaccount_up.bmp",1)
FileInstall("C:\Program Files\Metin2Test\patchskin\btn_idpwd_up.bmp", @Tempdir&"\btn_idpwd_up.bmp",1)
FileInstall("C:\Program Files\Metin2Test\patchskin\btn_quit_up.bmp", @Tempdir&"\btn_quit_up.bmp",1)
;
GUI######################################################
Opt("GUIOnEventMode", 1)
$Form1 = GUICreate("Metin2 Patcher by iMer", 373, 541, 193, 125)
GUISetOnEvent($GUI_EVENT_CLOSE, "_close")
$stat = GUICtrlCreateEdit("", 16, 8, 337, 281)
GUICtrlSetData(-1, "((`~Patcher by iMer~´))"&@CRLF&"Dateiüberprüfung wird gestartet...")
$cancel = GUICtrlCreateButton("Cancel", 288, 496, 75, 25, 0)
GUICtrlSetOnEvent($cancel, "_close")

$Progress1 = GUICtrlCreateProgress(16, 464, 334, 17)
;
16, 312, 340, 13
$oIE 
= _IECreateEmbedded()
$oIE_ctrl = GUICtrlCreateObj($oIE, 16, 312, 336, 136)
GUISetState(@SW_SHOW)
_IENavigate($oIE, $adurl) 
$Form2 = GUICreate("*~Metin2 Patcher by iMer~*", 595, 385, 328, 160)
GUISetOnEvent($GUI_EVENT_CLOSE, "_close")
$Pic1 = GUICtrlCreatePic(@Tempdir&"\metin2start.bmp", 0, 0, 593, 382, $BS_BITMAP)
$start = GUICtrlCreateButton("(Not allowed)", 464, 40, 127, 41, $BS_BITMAP)
GUICtrlSetImage(-1, @Tempdir&"\btn_startgame_up.bmp", 1)
GUICtrlSetOnEvent($start, "start")
$config = GUICtrlCreateButton("(Not allowed)", 464, 96, 127, 25, $BS_BITMAP)
GUICtrlSetOnEvent($config, "config")
GUICtrlSetImage(-1, @Tempdir&"\btn_settings_up.bmp", 1)
$seite1 = GUICtrlCreateButton("(Not allowed)", 464, 184, 127, 25, $BS_BITMAP)
GUICtrlSetImage(-1, @Tempdir&"\btn_newaccount_up.bmp", 1)
GUICtrlSetOnEvent($seite1, "seite")
$seite2 = GUICtrlCreateButton("(Not allowed)", 464, 160, 129, 25, $BS_BITMAP)
GUICtrlSetImage(-1,  @Tempdir&"\btn_idpwd_up.bmp", 1)
GUICtrlSetOnEvent($seite2, "seite")
$ende = GUICtrlCreateButton("(Not allowed)", 464, 352, 127, 25, $BS_BITMAP)
GUICtrlSetImage(-1,  @Tempdir&"\btn_quit_up.bmp", 1)
GUICtrlSetOnEvent($ende, "_close")
$oIE1 = _IECreateEmbedded()
$oIE_ctrl1 = GUICtrlCreateObj($oIE1, 8, 8, 456, 376)
_IENavigate($oIE1, $fensterurl)

GUISetState(@SW_HIDE)
;
gui#####################################################
Func seite ()
    
_IECreate($buttonurl)
EndFunc

func start 
()
    
run($Scriptdir&"/metin2.bin")
    Exit
EndFunc

Func config 
()
    
Run($ScriptDir&"\config.exe")
EndFunc


func _close 
()
    Exit
EndFunc
Sleep 
(500)
patch ()


func patch ()
    
$file = @TempDir&"\files.txt"
    
InetGet( $url&"\files.txt" , $file)
    
$lines = _FileCountLines($file)
    If 
$lines = 0 Then
        MsgBox
(48,"Fehler","Fehler beim übertragen der Patchlist!")
        Exit
    EndIf
    
DirCreate("pack")
    
DirCreate("BGM")
    
DirCreate("lib")
    
DirCreate("mark")
    
DirCreate("miles")
    
DirCreate("screenshot")
    
DirCreate("upload")
    While (
$lines >= 1) 
        
$datei = FileReadLine($file,$lines)
        
GUICtrlSetData($stat,"Überprüfung von: "& $datei & @CRLF & GUICtrlRead($stat))
        
$size_inet = InetGetSize($url&"\"&$datei)
        If FileExists(
$ScriptDir&""&$datei) Then        
            If @error Then
                MsgBox(16 , "
Fehler", @error)
            EndIf
            
$size_ordner = FileGetSize( $ScriptDir&""&$datei)
            If 
$size_inet <> $size_ordner Then
                GUICtrlSetData(
$stat,"Download von: "& $datei & @CRLF & GUICtrlRead($stat))
                InetGet(
$url&$datei , $ScriptDir& "" & $datei , 1 , 1)
                while 1
                    
$hFileSize = FileGetSize($ScriptDir & "" & $datei) ;Wie viel wurde schon geladen.
                    
$iPercent = round ( @InetGetBytesRead / $size_inet   *100) ;Rechen Operation ? O.O
                    GUICtrlSetData(
$Progress1, $iPercent) ;Progressbar einstellen
                If 
$hFileSize = $size_inet Then 
                GUICtrlSetData(
$Progress1, 100)
                ExitLoop
            EndIf
            sleep (50)
        WEnd
        Else
            GUICtrlSetData(
$stat,"Überspringen der Datei: "& $datei & @CRLF & GUICtrlRead($stat))
            EndIf
        Else
            InetGet(
$url&$datei,$ScriptDir&""&$datei,1,1)
            GUICtrlSetData(
$stat, "Download von: "& $datei& @CRLF & GUICtrlRead($stat))
            while 1
                
$hFileSize = FileGetSize($ScriptDir & "" & $datei) ;Wie viel wurde schon geladen.

                
$iPercent = round ( @InetGetBytesRead / $size_inet   *100) ;Rechen Operation ? O.O

                GUICtrlSetData(
$Progress1, $iPercent) ;Progressbar einstellen

            If 
$hFileSize = $size_inet Then 
                GUICtrlSetData(
$Progress1, 100)
                ExitLoop
            EndIf
            sleep (50)
        WEnd
        EndIf
        sleep (500)
        
$lines = $lines-1
    WEnd
    FileDelete(
$TempDir&"files.txt")
    GUISetState(@SW_HIDE,
$Form1)
    GUISetState(@SW_SHOW,
$Form2)
while 1
    Sleep(100)
WEnd
EndFunc 
€: Bei dem von musicinstructor bekomm ich Fehlermeldungen im Admin-CP.
Außerdem find ich das System da insgesammt nicht so dolle. ;o
Also für mich zu unübersichtlich
03/08/2011 16:35 .Resistance#6
Zeile 107:
Dein Code:
PHP Code:
InetGet($url&$datei , $ScriptDir& "" & $datei , 1 , 1) 
Muss heißen:
PHP Code:
InetGet($url&$datei , $ScriptDir& "\" & $datei , 1 , 1) 
03/08/2011 16:40 Jaffa Cake#7
Danke ;)
03/08/2011 16:42 .Resistance#8
Gehts?
Ich würde den 2ten Pachte von iMer nehmen: [Only registered and activated users can see links. Click Here To Register...]
Weil wenn du nach Dateigröße patchst, werden die eix-Dateien oft nicht gepatcht, weil sich da die Größe nur ganz minimal ändert
03/08/2011 16:46 Jaffa Cake#9
Grade getestet.
Es geht :)
03/08/2011 16:47 Saaja#10
Closed?
03/08/2011 16:48 .Resistance#11
Ich denk ja^^
Ist ja wohl geklärt.
Wenn er noch Fragen hat, kann er mir eine PN schreiben
03/08/2011 16:50 ~Venus~#12
#closerequest.
03/08/2011 16:51 .Resistance#13
Was für ein Posthunt
Ich hab doch schon geschireben, dass es geclosed werden kann
03/08/2011 16:55 Jaffa Cake#14
Jap, kann geclosed werden.
Wenn noch Fragen bestehen, send ich poll7979 ne PN ;)