Hallo ich hab mal ne Frage die wohl an XenoBiologist (Mega) geht ich wollte einfach mal seine geile DLLCall Funktion von seinem Yahtzee-Spiel in mein Script einbauen was auch Funktioniert, nur net komplett
Und zwar wird die GUI-Beim einblenden zwar eingeblendet aber 2 Inputs nicht... bzw. erst wenn der einblendevorgang schon abgeschlossen ist...
Woran liegt denn das?
Hier mal mein Script Das ausblenden Funktioniert perfekt
Hier mal noch die Kompelierte version (damit ihr auch die schönen Bildchen habt :D) http://fire.public-enemy-clan.de/awfl_demos2.exe
Spoiler anzeigen
#include <GUIConstants.au3>
#include <Process.au3>
AutoItSetOption("GUIOnEventMode", 1)
AutoItSetOption("TrayIconHide", 1)
$options = 1231234123
$input1 = 123149
$input2 = 12314123
FileDelete(@TempDir & "\liste.lst")
$regread = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Applications\WinRAR.exe\shell\open\command", "")
FileInstall( "C:\Hilfe.txt", @TempDir&"\Hilfe.txt")
FileInstall( "C:\awfl.jpg", @TempDir&"\awfl.jpg")
SplashImageOn("Splash Screen", @TempDir&"\awfl.jpg",644,173, Default, Default, 3)
Sleep(2000)
SplashOff()
$gui = GUICreate("AWFL Screenshot/Demo Uploader", 300, 230, Default, Default, Default, $WS_EX_ACCEPTFILES)
$edit = GUICtrlCreateList("", 10, 70, 280, 130)
$button = GUICtrlCreateButton("Demos hochladen", 10, 200, 100, 20)
$clear = GUICtrlCreateButton("Clear Edit", 120, 40, 60, 20)
$datei = GUICtrlCreateButton("Datei öffnen", 10, 40, 80, 20)
$input2 = GUICtrlCreateInput("Name", 210, 40, 80, 20)
$matchlink_input = GUICtrlCreateInput("Matchlink", 10, 10, 280, 20)
GUICtrlSetState($edit, $GUI_DROPACCEPTED)
GUISetOnEvent($GUI_EVENT_CLOSE, "GUI_exit")
GUICtrlSetOnEvent($button, "read")
GUICtrlSetOnEvent($clear, "clear")
GUICtrlSetOnEvent($datei, "gui_create")
sleep(200)
DllCall("user32.dll", "int", "AnimateWindow", "hwnd", $gui, "int", 1000, "long", 0x00080000)
GUISetState(@SW_SHOW)
$gui_anzeigen = 22394219387412934
$file = 1231023012730
$combo = 1332141234
$b1 = 123123213
$b2 = 2307123891
$gui_2 = 123123123
$rarfile = 2139109238
GUISetHelp("notepad "&@TempDir&"\Hilfe.txt")
Func gui_create()
Global $file = FileOpenDialog("Screenshot / Demo auswählen", "", "Screenshots (*.bmp)|CS-Demos (*.dem)")
If $file = "" Then
Return(0)
EndIf
Global $gui_2 = GUICreate("Demo/Screenshot hinzufügen", 300, 100)
Global $combo = GUICtrlCreateCombo("Map wählen", 10, 5, Default, Default, $CBS_DROPDOWNLIST)
GUICtrlSetData($combo, "de_airstrip|de_aztec|de_cbble|de_chateau|de_dust|de_dust2|de_inferno|de_nuke|de_piranesi|de_prodigy|de_storm|de_survivor|de_torn|de_train|de_tuscan|de_vertigo")
GUICtrlCreateLabel("Team:", 10, 33)
Global $b1 = GUICtrlCreateRadio("Counter-Terrorist", 50, 30, 100)
Global $b2 = GUICtrlCreateRadio("Terrorist", 150, 30, 100)
Global $ok = GUICtrlCreateButton( "OK", 10, 70)
Global $not = GUICtrlCreateButton( "Abbrechen", 40, 70)
GUICtrlSetOnEvent($ok, "ok")
GUICtrlSetOnEvent($not, "gui_close")
GUISetOnEvent($GUI_EVENT_CLOSE, "gui_close")
If StringRight($file, 3) = "bmp" Then
$anzeigen = GUICtrlCreateButton("Screenshot anzeigen", 190, 70)
EndIf
If StringRight($file, 3) = "bmp" Then
GUICtrlSetOnEvent($anzeigen, "screenshot_anzeigen")
EndIf
GUISetHelp("notepad "&@TempDir&"\Hilfe.txt")
GUISetState(@SW_SHOW)
EndFunc
Func gui_close()
GUISetState(@SW_HIDE, $gui_2)
EndFunc
Func ok()
Global $map = StringMid(GUICtrlRead($combo), 4)
Global $b11 = GUICtrlRead($b1)
Global $b21 = GUICtrlRead($b2)
If $map = " wählen" Then
MsgBox(0, "Error", "Bitte zuerst Map auswählen")
Return(0)
EndIf
If $b11 = $GUI_UNCHECKED And $b21 = $GUI_UNCHECKED Then
MsgBox(0, "Error", "Bitte zuerst Team wählen")
Return(0)
EndIf
If $b11 = $GUI_CHECKED Then
$seite = "ct"
Else
$seite = "t"
EndIf
$filename = $map&"_"&$seite&StringRight($file, 4) ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>FILENAME!!!!
For $t = 2 To 20
If FileExists("C:\"&$filename) <> 0 Then
$filename = $map&"_"&$seite&"_"&$t&StringRight($file, 4) ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>FILENAME!!!!
Else
ExitLoop
EndIf
Next
GUICtrlSetData($edit, $filename)
FileCopy($file, "C:\"&$filename)
FileWriteLine(@TempDir & "\liste.lst", "C:\"&$filename)
GUISetState(@SW_HIDE, $gui_2)
EndFunc
Func screenshot_anzeigen()
$gui_anzeigen = GUICreate( $file, 700, 560)
GUICtrlCreatePic( $file, 0, 0, 700, 525)
$exit = GUICtrlCreateButton( "EXIT", 10, 530, 680, 25)
GUICtrlSetOnEvent($exit, "schliessen")
GUISetOnEvent($GUI_EVENT_CLOSE, "schliessen")
GUISetHelp("notepad "&@TempDir&"\Hilfe.txt")
GUISetState(@SW_SHOW)
EndFunc
Func schliessen()
GUISetState(@SW_HIDE, $gui_anzeigen)
EndFunc
Func clear()
For $r = 1 To 100
$read3 = FileReadLine(@TempDir & "\liste.lst", $r)
If $read3 = "" Then
ExitLoop
EndIf
FileDelete($read3)
Next
FileDelete(@TempDir & "\liste.lst")
GUICtrlSetData($edit, "")
EndFunc ;==>clear
Func cancel()
GUISetState(@SW_HIDE, $options)
EndFunc ;==>cancel
Func read()
$matchlink = GUICtrlRead($matchlink_input)
If StringMid($matchlink,29, 4) <> "liga" Then
MsgBox(0, "Error", "Matchlink Falsch!")
Return(0)
EndIf
$matchsplit = StringSplit($matchlink, "/")
$length = StringLen($matchsplit[4])
Select
Case $length = 17
$liga = "oldskill"
Case $length = 18
$liga = "liga2on2"
Case Else
$liga = StringMid($matchsplit[4],10, 5) ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>LIGA!!!!
EndSelect
If GUICtrlRead($input2) = "" Or GUICtrlRead($input2) = "Name" Then
MsgBox(0, "Error", "Bitte zuerst Namen eingeben")
return(0)
EndIf
$name = GUICtrlRead($input2)
$string1 = StringInStr(GUICtrlRead($input2), "\")
$string2 = StringInStr(GUICtrlRead($input2), "/")
$string3 = StringInStr(GUICtrlRead($input2), ":")
$string4 = StringInStr(GUICtrlRead($input2), "*")
$string5 = StringInStr(GUICtrlRead($input2), "?")
$string6 = StringInStr(GUICtrlRead($input2), '"')
$string7 = StringInStr(GUICtrlRead($input2), "<")
$string8 = StringInStr(GUICtrlRead($input2), ">")
$string9 = StringInStr(GUICtrlRead($input2), "|")
If $string1 <> 0 Or $string2 <> 0 Or $string3 <> 0 Or $string4 <> 0 Or $string5 <> 0 Or $string6 <> 0 Or $string7 <> 0 Or $string8 <> 0 Or $string9 <> 0 Then
MsgBox(0, "Error", 'Folgende Sonderzeichen sind nicht erlaubt:'&@CRLF&'\ / : * ? " < > |')
Return(0)
EndIf
IF FileExists(@TempDir & "\liste.lst") = 0 Then
MsgBox(0, "Error", "Bitte erst Dateien hinzufügen")
Return(0)
EndIf
For $i = 1 To 30
$read = FileReadLine(@TempDir & "\liste.lst", $i)
If $read = "" Then
$read = FileReadLine(@TempDir & "\liste.lst", $i-1)
ExitLoop
EndIf
If StringRight($read, 4) <> ".dem" And StringRight($read, 4) <> ".bmp" Then
MsgBox(0, "Error", "Falsches Format, entweder bmp oder dem benutzen")
return(0)
EndIf
If $i > 1 Then
$read2 = FileReadLine(@TempDir & "\liste.lst", $i-1)
If StringRight($read, 4) <> StringRight($read2, 4) Then
MsgBox(0, "Error", "Bitte nur ein Format benutzen, entweder .dem oder .bmp")
return(0)
EndIf
EndIf
Next
Select
Case StringRight($read, 4) = ".bmp"
$gr = "sc"
Case StringRight($read, 4) = ".dem"
$gr = "pl"
Case Else
$gr = "ka"
EndSelect
If FileExists(StringMid(StringLeft($regread, StringLen($regread)-6), 2)) Then
FileDelete("C:\ftpupload.ftp")
FileWriteLine("C:\ftpupload.ftp", "open fire.public-enemy-clan.de")
FileWriteLine("C:\ftpupload.ftp", "********")
FileWriteLine("C:\ftpupload.ftp", "********")
FileWriteLine("C:\ftpupload.ftp", "cd httpdocs")
FileWriteLine("C:\ftpupload.ftp", "cd AWFL")
FileWriteLine("C:\ftpupload.ftp", "cd "&$liga)
FileWriteLine("C:\ftpupload.ftp", "BINARY")
$rarfile = StringMid($matchsplit[5], 22)&"_"&$gr&"_"&StringLower($name)&".rar" ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>RARFILENAME!!!!
FileWriteLine("C:\ftpupload.ftp", "put C:\Spiel"&$rarfile)
FileWriteLine("C:\ftpupload.ftp", "bye")
RunWait(StringMid(StringLeft($regread, StringLen($regread)-6), 2)&" A -ep1 -s -m5 C:\Spiel"&$rarfile&" @" & @TempDir & "\liste.lst")
sleep(1000)
$gui_progress = GUICreate("Uploading", 240, 30, Default, Default, $WS_CAPTION)
$progress = GUICtrlCreateProgress(5, 5, 200, 20)
$progress2 = GUICtrlCreateLabel( "", 210, 7, 50, 15)
GUISetState(@SW_SHOW)
Run(@ComSpec & " /c " & 'ftp -s:C:\ftpupload.ftp', "", @SW_HIDE)
$file = FileGetSize("C:\Spiel"&$rarfile)
$fertig = False
While $fertig = False
$size2 = InetGetSize("http://fire.public-enemy-clan.de/AWFL/"&$liga&"/Spiel"&$rarfile) / $file
$size = $size2 * 100
$split = StringSplit($size, ".")
GUICtrlSetData($progress, $size)
GUICtrlSetData($progress2, $split[1]&" %")
If $size > 99.99 Then
sleep(500)
$fertig = True
GUISetState(@SW_HIDE, $gui_progress)
ExitLoop
EndIf
WEnd
FileDelete(@TempDir&"\Hilfe.txt")
FileDelete("C:\ftpupload.ftp")
FileDelete("C:\Spiel"&$rarfile)
For $r = 1 To 100
$read3 = FileReadLine(@TempDir & "\liste.lst", $r)
If $read3 = "" Then
ExitLoop
EndIf
FileDelete($read3)
Next
FileDelete(@TempDir & "\liste.lst")
GUICtrlSetData($matchlink_input, "http://fire.public-enemy-clan.de/AWFL/"&$liga&"/Spiel"&$rarfile)
GUICtrlSetData($edit, "")
MsgBox(0, "Success", "Datei wurde erfolgreich hochgeladen")
Else
MsgBox(0, "Error", "WinRAR wurde nicht gefunden")
EndIf
EndFunc ;==>read
Func GUI_exit()
FileDelete(@TempDir&"\Hilfe.txt")
FileDelete("C:\ftpupload.ftp")
FileDelete("C:\Spiel"&$rarfile)
For $r = 1 To 100
$read3 = FileReadLine(@TempDir & "\liste.lst", $r)
If $read3 = "" Then
ExitLoop
EndIf
FileDelete($read3)
Next
FileDelete(@TempDir & "\liste.lst")
DllCall("user32.dll", "int", "AnimateWindow", "hwnd", $gui, "int", 1500, "long", 0x00090000)
Exit
EndFunc ;==>GUI_exit
While 1
WEnd
Danke für eure Hilfe
@xeno woher weisst du wie solche dllcall funktionen aussehen müssen damit die sachen passieren?