ZitatSo?
gut editiert aber da fehlt immernoch n endif
ZitatSo?
gut editiert aber da fehlt immernoch n endif
so wärs recht einfach gelöst
[autoit]While 1
If WinActive("Program Manager") Then
#Region Tasten
#Region normale Tasten
If _IsPressed(30) Then
$Text = $Text & "0"
Do
Sleep(10)
Until Not _IsPressed(30)
EndIf
EndIf
WEnd
was ist das für eine icon datei?
hast du die evtl bearbeitet oder wo hast du sie her?
war denn die gewünschte antwort dabei?
deinen thread kannst du selber auf gelöst setzten. indem du den ersten beitrag bearbeitest und das präfix auf gelöst setzt. und speichern nicht vergessen^^
bitte nicht den ersten beitrag löschen.
ein thema kannst du wie folgt auf gelöst setzen:
ersten beitrag bearbeiten--> präfix auf gelöst setzten --> Speichern bzw Absenden
also war es doch:
[autoit]WinSetState("LAN USB Utility" , "",@SW_SHOW)
[/autoit]
oder?^^
2 kleine bitten noch:
1. nicht öfters hintereinander posten. dafür gibts bearbeiten. (außer du willst dein thema pushen weil noch keiner antwortet, aber das auch nur nach 1-2 tagen)
2. es gibt hier super syntax highlighting für autoit quellcode. bitte den auch verwenden.
wenn jemand nochmal in dem thema nach einer lösung sucht findet er nur einen pastebinlink der wahrscheinlich nicht mehr funktioniert weil pastebin das nach ner zeit löscht
Schnitzel um das Häckchen zu machen reicht btw auch nur ControlSend c
ich weiß
Wenn Random negative Zahlen kann, wo hat dann H43DSH0T ein Problem?
frag ich mich auch schon die ganze zeit
so viele lösungen aber random nimmt sowieso negertive zahlen^^
deswegen hab ich auch das gedacht:
Zitatkann es sein dass du die zahlen von -200 bis +200 in einer zufälligen Reihenfolge willst?
aber am besten er erklärt es nochmal genau wie er es haben will...
Dazu gibt's genug beispiele, wie man das anstellt.
du musst TCPAccept einfach immer wieder anwenden.
such mal nach TCP chat oder mehrere verbindungen oder irgendsowas.
oder im englischen forum nach sowas wie: TCP Event driven
oder aber:
[autoit]If Not _CheckInet() Then
[/autoit]aber es gibt immer viele möglichkeiten...
aber warum hast du soviele (unnötige?) INCLUDDEs
nimm doch die includes raus^^
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <IE.au3>
#include <GUIConstantsEx.au3>
_IEErrorHandlerRegister ()
$oIE = _IECreateEmbedded ()
GUICreate("", @DesktopWidth,@DesktopHeight,0,0, _
$WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
$GUIActiveX = GUICtrlCreateObj($oIE, 10, 40, (@DesktopWidth) -200, (@DesktopHeight) -250)
$GUI_Button_Back = GUICtrlCreateButton("Zurück", 10, 8, 100, 30)
$GUI_Button_Forward = GUICtrlCreateButton("vor", 120, 8, 100, 30)
$GUI_Button_Start = GUICtrlCreateButton("Game Starten", 230, 8, 100, 30)
;$Pic1 = GUICtrlCreatePic("", 0, 0, 1024, 800, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
$var = IniRead("hp.ini", "section2", "key", "http://www.autoit.de/index.php?page=Thread&postID=145585#post145585")
_IENavigate($oIE, $var)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
ExitLoop
Case $msg = $GUI_Button_Back
_IEAction ($oIE, "back")
Case $msg = $GUI_Button_Forward
_IEAction ($oIE, "forward")
Case $msg = $GUI_Button_Start
_IEAction ($oIE, "")
EndSelect
WEnd
ok dann nochmal
server:
#include <GUIConstantsEx.au3>
#include <String.au3>
#include <Array.au3>
Opt('MustDeclareVars', 1)
;==============================================
;==============================================
; SERVER!! Startet mich zuerst !!!!!!!!!!!!!!!
;==============================================
;==============================================
DirCreate("C:\Message\")
Global $open
[/autoit] [autoit][/autoit] [autoit]Example()
[/autoit] [autoit][/autoit] [autoit]Func Example()
; Richte einige wiederverwendbare Informationen ein.
; Richte deine öffentliche IP Adresse (@IPAddress1) hier ein.
; Local $szServerPC = @ComputerName
; Local $szIPADDRESS = TCPNameToIP($szServerPC)
Local $szIPADDRESS = @IPAddress1
Local $nPORT = 33891
Local $MainSocket, $GOOEY, $edit, $ConnectedSocket, $szIP_Accepted, $ip, $host, $time
Local $msg, $recv
; Startet den TCP Service
;==============================================
TCPStartup()
; Erstellt einen lauschenden Port.
; Benutzt deine IP Adresse und den Port 33891. (Oben angegeben)
;==============================================
$MainSocket = TCPListen($szIPADDRESS, $nPORT)
; Wenn die Socketerstellung fehl schlägt, dann wird das Programm beendet.
If $MainSocket = -1 Then Exit
; Erstellt eine GUI für Messages.
;==============================================
$GOOEY = GUICreate("Message - Server IP: " & $szIPADDRESS, 550, 200)
$edit = GUICtrlCreateEdit("", 10, 10, 300, 180)
GUISetState()
; Initialisiert eine Variable um eine Verbindung anzugeben
;==============================================
$ConnectedSocket = -1
; Wartet auf und akzeptiert eine Verbindung
;==============================================
Do
$ConnectedSocket = TCPAccept($MainSocket)
Until $ConnectedSocket <> -1
; Bekommt die IP des verbundenen Clients
$szIP_Accepted = SocketToIP($ConnectedSocket)
; GUI Message Schleife
;==============================================
While 1
$msg = GUIGetMsg()
; GUI beendet
;--------------------
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
; Versucht Daten zu empfangen, bis zu 2048 bytes
;----------------------------------------------------------------
$recv = TCPRecv($ConnectedSocket, 30000)
; Aktualisiert das Input-Control mit dem, was wir empfangen haben.
;----------------------------------------------------------------
If $recv <> "" Then
GUICtrlSetData($edit, _
$szIP_Accepted & " > " & $recv & @CRLF & GUICtrlRead($edit))
$ip = _StringBetween($recv, "IP Adresse: ", " Computername:")
$host = _StringBetween($recv, "Computername: ", " Zeit des Clienten:")
$time = StringRight($recv,
IniWrite(@ScriptDir & "\recieved.ini", $ip[0], $host[0], $time)
EndIf
WEnd
If $ConnectedSocket <> -1 Then TCPCloseSocket($ConnectedSocket)
[/autoit] [autoit][/autoit] [autoit]TCPShutdown()
EndFunc ;==>Example
; Funktion um die IP Adresse eines verbundenen Sockets wiederzugeben.
;----------------------------------------------------------------------
Func SocketToIP($SHOCKET)
Local $sockaddr, $aRet
$sockaddr = DllStructCreate("short;ushort;uint;char[8]")
[/autoit] [autoit][/autoit] [autoit]$aRet = DllCall("Ws2_32.dll", "int", "getpeername", "int", $SHOCKET, _
"ptr", DllStructGetPtr($sockaddr), "int*", DllStructGetSize($sockaddr))
If Not @error And $aRet[0] = 0 Then
$aRet = DllCall("Ws2_32.dll", "str", "inet_ntoa", "int", DllStructGetData($sockaddr, 3))
If Not @error Then $aRet = $aRet[0]
Else
$aRet = 0
EndIf
$sockaddr = 0
[/autoit] [autoit][/autoit] [autoit]Return $aRet
EndFunc ;==>SocketToIP
client:
TCPStartup(); wird nur einmal aufgerufen
[/autoit] [autoit][/autoit] [autoit]Global $szIPADDRESS = "192.168.245.128"
Global $nPORT = 33891
Global $ConnectedSocket = TCPConnect($szIPADDRESS, $nPORT)
AdlibRegister('_client', 5000); rufe die func _client alle 5 sec auf
While 1
Sleep(100)
WEnd
Func _client ()
$szData = "IP Adresse: " & @IPAddress1 & " Computername: " & @ComputerName & " Zeit des Clienten: " & @HOUR & ":" & @MIN & ":" & @SEC
TCPSend($ConnectedSocket, $szData)
EndFunc ;==>_client
Func _quit()
TCPShutdown()
EndFunc ;==>_quit
achso du verwendest MustDeclareVars
dann tausch z.B. die zeile:
[autoit]Local $MainSocket, $GOOEY, $edit, $ConnectedSocket, $szIP_Accepted
[/autoit]
gegen die aus:
Local $MainSocket, $GOOEY, $edit, $ConnectedSocket, $szIP_Accepted, $ip, $host, $time
[/autoit]Oscar : warum umständlich?
[autoit]Random(0, 400, 1) - 200
; =
Random(-200, 200, 1)
nach pm absprache entstand das:
[autoit]If $recv <> "" Then
GUICtrlSetData($edit, _
$szIP_Accepted & " > " & $recv & @CRLF & GUICtrlRead($edit))
$ip = _StringBetween($recv , "IP Adresse: ", " Computername:")
$host = _StringBetween($recv , "Computername: ", " Zeit des Clienten:")
$time = StringRight($recv,
IniWrite(@Scriptdir & "\recieved.ini", $ip[0], $host[0], $time)
EndIf
und nicht vergessen:
[autoit]Include <String.au3>
[/autoit]wieso denn mit batch?
wir sind ein autoit forum^^
Edit: boa und lass mal die ganzen doppelposts. der thread wird so unübersichtlich. und Bearbeiten haste ja schon gelernt
Also noch mal zur Erläuterung.
Macht mir doch bitte einen Script der in eine msg-box Zahlen von -200 bis +200 AUSWÄHLT und dan einschreibt...THX schon mal im vorraus und nette Grüße
H34DSH0T
deine erklärungen sind ziemlich spärlich...
kann es sein dass du die zahlen von -200 bis +200 in einer zufälligen Reihenfolge willst?
also wie hier nur von -200 bis +200
ZitatAlles anzeigen-3
4
3
-5
-1
-4
0
5
2
-2
1
ansonsten mach bitte ein kleines beispiel wo man genau sieht was du willst
_Stringbetween gibt ein array zurück:
ZitatErfolg: Ein 0-basierendes $Array[0] enthält den ersten gefundenen String.
wenn de mir sagst wie
schau dir doch mal die beispiele zu iniread und iniwrite an. damit dus verstehst.
lösen würd ich das ganze dann so in etwa:
[autoit]If $recv <> "" Then
GUICtrlSetData($edit, _
$szIP_Accepted & " > " & $recv & @CRLF & GUICtrlRead($edit))
IniWrite(@Scriptdir & "\recieved.ini", "Recieved", "<HierIPeinfügen>", $recv)
EndIf
hab ich ja gesagt dass du das abändern musst wenn du eine installation machst und nicht so wie ich ein update:
[autoit];zwischen hier
WinWait("TrueCrypt Setup", "TrueCrypt has been successfully updated")
ControlClick("TrueCrypt Setup", "TrueCrypt has been successfully updated", "[CLASS:Button; INSTANCE:1]")
; und hier
sieh dir am besten an nach welchen schema ich vorgegangen bin. untersuch das ganze mit dem window info tool, dann bekommst dus schon hin