Was mache ich falsch? Oder was fehlt?
Eine GUI? - und der richtige Bildtyp ![]()
Was mache ich falsch? Oder was fehlt?
Eine GUI? - und der richtige Bildtyp ![]()
'systeminfo | find "Systemstartzeit"'
In was für einem Windows soll es diesen Befehl geben? - Meines (XP Home) kennt das nicht. ![]()
Aso^^
konnte damit nix anfangen^^. Könnt mir das evtl. einer erklären blick da noch net so durch
Michi26206
Ich habe mich damit nicht weiter beschäftigt - ICQ ist mir den Aufwand nicht wert. ![]()
Das gesamte OSCAR-Protokoll wird dir sicher keiner erklären (wollen) - ist etwas zu umfangreich
. Aber die Funktionen aus dem Link sind doch eindeutig - damit kannst du doch deinen Bot erstellen. Lies dich ein - stell erst mal das Grundgerüst zusammen (Verbindung aufbauen, Nachricht senden, Nachricht empfangen...). Alles Schritt für Schritt. Und wenn dabei Fragen auftauchen: Code posten und Problem angeben. ![]()
OK - so sollte es klappen:
Case $btn_raum_laden
;hier sollte meiner meinung nach die list "geleert" werden, da ich sonst mehrfache einträge bekomme
; JA - muß geleert werden:
_GUICtrlListBox_ResetContent($list_clients) ; leert Liste
$raum_read = GUICtrlRead($cmb_raum)
;~ Global $data_raum ==> Deklaration am Skriptanfang, hier nur:
$data_raum = ''
$raumfile = ("z:\"& $raum_read & ".txt")
;~ MsgBox(0,"",$raumfile)
$raumfile= FileOpen ($raumfile,0)
$zeile = 1
While 1
$read = FileReadLine($raumfile, $zeile)
If $read = "" Then ExitLoop
$data_raum = $data_raum & $read & "|"
$zeile += 1
;~ MsgBox(0,"",$data_raum)
WEnd
GUICtrlSetData($list_clients, $data_raum)
Spielen wir mal ein Quiz :D.
1. Was ist das Pfadtrennzeichen unter Unix?
2. Was ist das Pfadtrennzeichen unter Windows?Der Gewinner bekommt... nichts :D.
peethebee
Muah - Ich verdoppele den Gewinn ![]()
Ich sehe jetzt nicht, welches Problem du hast.
Findest du nicht die Verknüpfung vom gewählten Eintrag aus der Combo zur zugehörigen Client-Datei? Oder wo liegt der Hund begraben? ![]()
Ich würde es (wie wohl bei mir nicht anders zu erwarten
) mit Array lösen ==> _FileReadToArray() .
Du wirst immer wieder den Verweis auf das OSCAR Protokoll bekommen - damit kannst du doch den Datenstrom "belauschen" und dann deine Nachrichten rausfiltern.
So z.B., Zahlen eingeben - mit Enter oder Tab nach der (zweiten) Zahl - das löst das Event aus.
#include <EditConstants.au3>
#include <GUIConstants.au3>
Opt('GUIOnEventMode', 1)
Global $isR = False, $isU = False, $isI = False
GUICreate('Test')
GUISetOnEvent($GUI_EVENT_CLOSE, 'ende')
GUICtrlCreateLabel('R: ', 15, 15, 30)
$R = GUICtrlCreateInput('', 50, 15, 60, -1, BitOR($ES_RIGHT, $ES_AUTOHSCROLL))
GUICtrlSetOnEvent(-1, '_R')
GUICtrlCreateButton('clear', 120, 15, 40, 20)
GUICtrlSetOnEvent(-1, '_cR')
GUICtrlCreateLabel('U: ', 15, 45, 30)
$U = GUICtrlCreateInput('', 50, 45, 60, -1, BitOR($ES_RIGHT, $ES_AUTOHSCROLL))
GUICtrlSetOnEvent(-1, '_U')
GUICtrlCreateButton('clear', 120, 45, 40, 20)
GUICtrlSetOnEvent(-1, '_cU')
GUICtrlCreateLabel('I: ', 15, 75, 30)
$I = GUICtrlCreateInput('', 50, 75, 60, -1, BitOR($ES_RIGHT, $ES_AUTOHSCROLL))
GUICtrlSetOnEvent(-1, '_I')
GUICtrlCreateButton('clear', 120, 75, 40, 20)
GUICtrlSetOnEvent(-1, '_cI')
GUISetState()
While 1
Sleep(100)
WEnd
Func ende()
Exit
EndFunc
Func _R()
If GUICtrlRead($R) <> '' Then
$isR = True
Else
$isR = False
EndIf
If $isR And $isU Then
_calcI()
ElseIf $isR And $isI Then
_calcU()
EndIf
EndFunc
Func _U()
If GUICtrlRead($U) <> '' Then
$isU = True
Else
$isU = False
EndIf
If $isU And $isR Then
_calcI()
ElseIf $isU And $isI Then
_calcR()
EndIf
EndFunc
Func _I()
If GUICtrlRead($I) <> '' Then
$isI = True
Else
$isI = False
EndIf
If $isI And $isU Then
_calcR()
ElseIf $isI And $isR Then
_calcU()
EndIf
EndFunc
Func _calcR()
GUICtrlSetData($R, StringFormat('%.2f', GUICtrlRead($U)/GUICtrlRead($I)))
EndFunc
Func _calcU()
GUICtrlSetData($U, StringFormat('%.2f', GUICtrlRead($R)*GUICtrlRead($I)))
EndFunc
Func _calcI()
GUICtrlSetData($I, StringFormat('%.2f', GUICtrlRead($U)/GUICtrlRead($R)))
EndFunc
Func _cR()
GUICtrlSetData($R, '')
EndFunc
Func _cU()
GUICtrlSetData($U, '')
EndFunc
Func _cI()
GUICtrlSetData($I, '')
EndFunc
Hi, hier mal ein Bsp., wie man mit vielen Controls umgehen kann. Habe jetzt nur eine Spalte Controls untergebracht. Kannst du jetzt natürlich auch noch erweitern auf mehrere Reihen mit Controls. Tipp: Erstelle dann ein 2D-Array für die Controls, damit die Controls einer Spalte auch immer in einer Arrayspalte liegen - vereinfacht das Verständnis, wo welches Control liegt.
Global $arCtrl[76] ; Anzahl aus deiner Funktionsrückgabe
Global $iMaxCtrl = 10 ; Anzahl der Controls, die auf eine Seite passen
Global $iTabCount = Ceiling(UBound($arCtrl)/$iMaxCtrl) ; ermitteln, wieviel Seiten (Tabs) notwendig
Global $arTab[$iTabCount]
Global $y = 15, $iCurrent = 0
$GUI = GUICreate('Test', 600, 330)
_createCtrl()
GUISetState()
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
Func _createCtrl()
If $iTabCount = 1 Then
For $i = 0 To UBound($arCtrl) -1
$arCtrl[$i] = GUICtrlCreateCheckbox('Check ' & $i+1, 15, $y, 80, 20)
$y += 30
Next
Else
Global $Tab = GUICtrlCreateTab(0, 0, 600, 330)
$y += 10
For $i = 0 To UBound($arTab) -1
$arTab[$i] = GUICtrlCreateTabItem('Tab ' & $i+1)
For $j = 0 To $iMaxCtrl-1
If $iCurrent = UBound($arCtrl) Then ExitLoop
$arCtrl[$iCurrent] = GUICtrlCreateCheckbox('Check ' & $iCurrent+1, 15, $y, 80, 20)
$iCurrent += 1
$y += 30
Next
$y = 25
Next
EndIf
EndFunc
BugFix : warum nicht einfach "verfilmen" ?
Sollte eine ironische Anspielung sein, auf den gesamtgesellschaftlichen Drang, alles zu "verdenglischen". ![]()
Du möchtest vermutlich folgendes:
[autoit]Send("´")
[/autoit]
Das dürfte nicht klappen, weil Akut nunmal kein Einzelzeichen ist, sondern der Kombination bedarf um wirksam zu werden.
Mit dem folgendem Link sollte es klappen:
Wie bereits gesagt:
(Codec ist installiert)
Also am Codec liegt es nicht.
@Tom99
Ist dein Video online? Da wird gar nix gestreamt. Nur ein Embedded-Player mit schwarzer Oberfläche.
(Codec ist installiert)
Ich habe schon öfter mit dem Gedanken gespielt, mein Array-Tut zu "vermovien" ( LOL, was für 'ne Wortschöpfung )
Allerdings nicht in der Form eines reinen Abfilmens von SciTE, sondern etwas umfangreicher von der Darstellung her. Ich habe früher (als ich noch mehr Zeit hatte
) schon einiges an Videobearbeitung gemacht. Mal sehen, dass ich das hier einbringen kann.
Ist aber, wie gesagt, hauptsächlich ein Zeitproblem. Aber es wird kommen. ![]()
aber wenn im String geschweifte Klammern sind ({oder}) verschwinden die, was Fehler im restlichen Script verursacht.
Ich verstehe nicht ganz, was du wirklich willst.
In deinem ersten Post sind im String geschweifte Klammern und in deiner Wunschausgabe sind sie nicht mehr vorhanden.
Also was solls denn nun bitteschön sein? ![]()
Läuft doch:
#include <GUIConstants.au3>
$gui = GUICreate('')
$l1 = GUICtrlCreateListView('col1|col2', 10, 10, 300, 200)
$kontext = GUICtrlCreateContextMenu($l1)
$kon_start = GUICtrlCreateMenuItem("Upload starten", $kontext)
$kon_anhalten = GUICtrlCreateMenuItem("Upload anhalten", $kontext)
$kon_fortsetzen = GUICtrlCreateMenuItem("Upload fortsetzen", $kontext)
GUICtrlCreateMenuItem("", $kontext)
$kon_del = GUICtrlCreateMenuItem("Datei entfernen", $kontext)
GUICtrlCreateMenuItem("", $kontext)
$kon_liste_speichern = GUICtrlCreateMenuItem("Liste speichern", $kontext)
$kon_liste_laden = GUICtrlCreateMenuItem("Liste laden", $kontext)
GUICtrlCreateMenuItem("", $kontext)
$kon_archiv = GUICtrlCreateMenuItem("Archiv erstellen", $kontext)
GUICtrlCreateMenuItem("", $kontext)
$kon_info = GUICtrlCreateMenuItem("Info", $kontext)
GUISetState()
Do
$msg = GUIGetMsg()
Switch $msg
Case $kon_start
MsgBox(0, '', 'start')
Case $kon_anhalten
MsgBox(0, '', 'anhalten')
Case $kon_fortsetzen
MsgBox(0, '', 'fortsetzen')
; usw.
EndSwitch
Until $msg = $GUI_EVENT_CLOSE
Naja, in diese Minimalbereiche kann ich mit meiner Methode nicht vorstoßen - die ist bei 0.12 ausgereizt.
Und solange mir kein anderer Algorithmus einfällt bleibt es also dabei. ![]()
Bin ja gespannt, wie man multipliziert ohne zu addieren. Letztlich liegt doch jeder Rechenoperation eine Addition zugrunde. :wacko:
Hi, so könnte man das machen. 2-dimensionales Array, in Spalte 0 wird die ID der Controls gespeichert, in Spalte 1 der Name der auszuführenden Funktion.
Ich habs mal an dein Skript angepaßt. Deine etwa 120 Zeilen lange Abfrage braucht jetzt keine 20 Zeilen mehr. ![]()
#include <GUIConstants.au3>
#NoTrayIcon
Global $arRadio[14][2]
$Form2 = GUICreate("Anmelden", 547, 546, 193, 125)
$Group1 = GUICtrlCreateGroup("Server wählen", 10, 10, 150, 221)
$arRadio[0][0] = GUICtrlCreateRadio("1. Mosha", 20, 30, 121, 21)
GUICtrlSetState(-1, $GUI_CHECKED)
ein Radio sollte voreingestellt sein ! SIEHE HILFE GUICtrlCreateRadio
$arRadio[1][0] = GUICtrlCreateRadio("2. Karthago", 20, 50, 121, 21)
$arRadio[2][0] = GUICtrlCreateRadio("3. Astreya", 20, 70, 121, 21)
$arRadio[3][0] = GUICtrlCreateRadio("4. Hyperion", 20, 90, 121, 21)
$arRadio[4][0] = GUICtrlCreateRadio("5. Antharos", 20, 110, 121, 21)
$arRadio[5][0] = GUICtrlCreateRadio("6. Cascardon", 20, 130, 121, 21)
$arRadio[6][0] = GUICtrlCreateRadio("7. Lesanya", 20, 150, 121, 21)
$arRadio[7][0] = GUICtrlCreateRadio("8. Torkas", 20, 170, 121, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("Channel wählen", 170, 10, 150, 221)
$arRadio[8][0] = GUICtrlCreateRadio("CH 1", 180, 30, 121, 21)
$arRadio[8][1] = 'CH_1' ; Funktion die ausgeführt werden soll
GUICtrlSetState(-1, $GUI_CHECKED)
ein Radio sollte voreingestellt sein ! SIEHE HILFE GUICtrlCreateRadio
$arRadio[9][0] = GUICtrlCreateRadio("CH 2", 180, 50, 121, 21)
$arRadio[9][1] = 'CH_2'
$arRadio[10][0] = GUICtrlCreateRadio("CH 3", 180, 70, 121, 21)
$arRadio[10][1] = 'CH_3'
$arRadio[11][0] = GUICtrlCreateRadio("CH 4", 180, 90, 121, 21)
$arRadio[11][1] = 'CH_4'
$arRadio[12][0] = GUICtrlCreateRadio("CH 5", 180, 110, 121, 21)
$arRadio[12][1] = 'CH_5'
$arRadio[13][0] = GUICtrlCreateRadio("CH 6", 180, 130, 121, 21)
$arRadio[13][1] = 'CH_6'
GUICtrlCreateGroup("", -99, -99, 1, 1);) nicht vergessen !
$Button1 = GUICtrlCreateButton("Jetzt Anmelden", 350, 20, 160, 31, 0)
$Button2 = GUICtrlCreateButton("Für Account registrieren", 350, 70, 160, 31, 0)
$Button3 = GUICtrlCreateButton("Padmaks Website besuchen", 350, 120, 160, 31, 0)
$Pic1 = GUICtrlCreatePic("C:\Users\Padmak\Documents\AutoIt\zoom.nebel.exe\padmak.jpg", 0, 340, 541, 201)
$Button4 = GUICtrlCreateButton("Beenden", 350, 170, 160, 31, 0)
$Label1 = GUICtrlCreateLabel("Benutzername:", 10, 240, 75, 17)
$Input1 = GUICtrlCreateInput("", 10, 260, 100, 21)
$Passwort = GUICtrlCreateLabel("Passwort", 10, 290, 47, 17)
GUICtrlCreateInput("", 10, 310, 100, 21)
$Label2 = GUICtrlCreateLabel("KEINE ANGST DIESE EINGABEN WERDEN", 120, 240, 414, 31)
GUICtrlSetFont(-1, 14, 800, 4, "Comic Sans MS")
GUICtrlSetColor(-1, 0xFF0000)
$Label3 = GUICtrlCreateLabel("NICHT GESPEICHERT!!!!!!!!!!", 267, 278, 261, 31)
GUICtrlSetFont(-1, 14, 800, 4, "Comic Sans MS")
GUICtrlSetColor(-1, 0xFF0000)
GUISetState(@SW_SHOW)
While 1
ControlClick ("Anmelden", "unsicht", "Button5")
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button4
Exit
Case $Button1
; call ("_anmelden") hier kannst du die Funktion mit Namen direkt aufrufen:
_anmelden()
EndSwitch
For $i = 0 To 7
If $msg = $arRadio[$i][0] Then
GUICtrlSetState($arRadio[12][0], $GUI_HIDE)
GUICtrlSetState($arRadio[13][0], $GUI_HIDE)
EndIf
Next
WEnd
Func _anmelden()
;server 1 und 2
For $i = 0 To 1
If BitAND(GUICtrlRead($arRadio[$i][0]), $GUI_CHECKED) = $GUI_CHECKED Then
For $j = 8 To 12
If BitAND(GUICtrlRead($arRadio[$j][0]), $GUI_CHECKED) = $GUI_CHECKED Then Call($arRadio[$j][1])
Next
EndIf
Next
;server 3 bis 8
For $i = 2 To 7
If BitAND(GUICtrlRead($arRadio[$i][0]), $GUI_CHECKED) = $GUI_CHECKED Then
For $j = 8 To 11
If BitAND(GUICtrlRead($arRadio[$j][0]), $GUI_CHECKED) = $GUI_CHECKED Then Call($arRadio[$j][1])
Next
EndIf
Next
EndFunc
Func CH_1()
; Code
EndFunc
Func CH_2()
; Code
EndFunc
Func CH_3()
; Code
EndFunc
Func CH_4()
; Code
EndFunc
Func CH_5()
; Code
EndFunc
Func CH_6()
; Code
EndFunc
@Xeno: Dein Pattern gibt das letzte bla... nicht zurück. ![]()
z.B. so:
[autoit]#include <array.au3>
$str = 'BlahBlahbla123bla{CODE"1337"}blablablaaa{CODE"7331"}bla...'
$match = StringRegExp(StringRegExpReplace(StringRegExpReplace($str, '{CODE', ''), '}', ''), '[\w\.]+', 3)
_ArrayDisplay($match)