1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. bernd670

Beiträge von bernd670

  • Mal wieder neue Trojaner-Post

    • bernd670
    • 26. Mai 2007 um 02:02

    Hallo!

    Ich würde auch nicht zahlen, schon gar nicht wenn es die 12jährige Tochter war, erst mal abwarten!


    Einfach mal bei Google als Suchbegriff "+p2p.home +schmidtlein" eingeben, ergibt ca. 10000 Ergebnisse.

    BugFix ich frage mich wie Du es geschaft haben sollst dich mit dieser IP-Adresse anzumelden: Anmelde-IP: 217.444.203.03.

    Edit:

    Für betroffene hab ich ein Muster für einen Rücktrittsbrief gefunden mit einigen nützlichen Hinweisen http://forum.boocompany.com/viewtopic.php?p=3126#3126.

  • mehrere Dateien auslesen

    • bernd670
    • 24. Mai 2007 um 14:26

    Sind den die HTML-Dateien alle in einem Verzeichnis oder sind sie auf Unterverzeichnisse verteilt?

  • mehrere Dateien auslesen

    • bernd670
    • 24. Mai 2007 um 06:09

    Du hast die Lösung schon fast dastehen!

    [autoit]

    #include <GuiConstants.au3>
    #include <GuiCombo.au3>
    #include <String.au3>
    #include <File.au3>

    [/autoit][autoit][/autoit][autoit]

    Dim $Input

    [/autoit][autoit][/autoit][autoit]

    GuiCreate("ComboBox mit Titel füllen", 392, 254)

    [/autoit][autoit][/autoit][autoit]

    $Combo = GuiCtrlCreateCombo("", 70, 100, 270, 120)
    $Btn_Exit = GuiCtrlCreateButton("Exit", 150, 180, 90, 30)

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    $filePath = "S:\VORLAGE.htm"
    _FileReadToArray($filePath, $Input)
    For $i = 1 To $Input[0]
    $titel = _StringBetween($Input[$i], '<title>', '</title>')
    If Not @error And $titel[0] <> '' Then
    _GUICtrlComboAddString($Combo,$titel[0])
    EndIf
    Next

    [/autoit][autoit][/autoit][autoit]

    GuiSetState()

    [/autoit][autoit][/autoit][autoit]

    While 1
    $msg = GuiGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE Or $msg = $Btn_Exit
    ExitLoop
    EndSelect
    WEnd
    Exit

    [/autoit][autoit][/autoit][autoit][/autoit]
  • FileMove(...) Problem

    • bernd670
    • 23. Mai 2007 um 23:10

    Hallo!

    In dem Moment wo die Datei verschoben werden soll greift das Programm ja selbst noch darauf zu. Einfach vor dem FileMove noch ein FileClose und danach ein ExitLoop machen dann sollte es gehen.

    [autoit]

    ;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    ; Alle HL7 Dateien finden
    ;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    $search = FileFindFirstFile("*.hl7")

    ; suche erfolgreich
    If $search = -1 Then
    MsgBox(0, "Fehler", "keine passenden Dateien gefunden")
    Exit
    EndIf

    ;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    ;Xml öffnen und Anfang schreiben
    ;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    ConsoleWrite('<?xml version="1.0" encoding="ISO-8859-1" ?> ' & @CRLF)
    ConsoleWrite('<patientenliste> ' & @CRLF)

    ;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    ;nächste Datei nehmen
    ;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    While 1
    $datei = FileFindNextFile($search)
    If @error Then ExitLoop

    ;überprüfung auf sem Datei
    $sem = StringSplit($datei, ".")
    if FileExists($sem[1] & ".sem") Then ;wenn da dann weiter

    $file = FileOpen($datei , 0)
    if $file = -1 Then
    MsgBox(0, "Fehler", "Kann " & $datei & " nicht öffnen!")
    ;Fehler Datei enfernen
    FileMove($datei, "\ging_net\" ,8)
    ;XML schliesen
    ConsoleWrite('</patientenliste> ' & @CRLF)
    Exit
    EndIf

    ;beginne mit lesen der Zeilen
    While 1
    $line1 = FileReadLine($file)
    if @error = -1 then ExitLoop
    ;splitten wenn MSH am Anfang
    $result = StringInStr($line1,"MSH",1,1)

    if $result = 1 then
    ; Zeile in Bestandteile zerlegen delimiters ist |
    $lineArray = StringSplit($line1,"|")
    ;checke Inhalt
    if $lineArray[9] = "ADT^A01" then
    ;fertige Datei verschieben
    FileClose($file)
    FileMove($datei, "\ging\" ,8)
    ExitLoop
    EndIf
    XML() ;gehe zu XML()
    EndIf
    WEnd
    FileClose($file)
    EndIf
    WEnd

    [/autoit]
  • Programm verschlüsseln

    • bernd670
    • 23. Mai 2007 um 20:42

    Hätte nie gedacht das ein soooo sinnfreies Script so viele Downloads hat! :hammer:

  • FileCopy und RegWrite als Admin ausführen

    • bernd670
    • 23. Mai 2007 um 20:35

    Hallo!

    Wenn man die Hilfe zu RunAsSet mal aufmerksam durchliest stellt man fest das sich RunAsSet nur auf die Befehle Run und RunWait auswirkt. Es ist also nicht möglich ein FileCopy mit RunAsSet unter einem anderen Benutzer auszuführen!

    Ich löse das Problem immer folgendermassen (funktioniert nur mit der Kompilierten Version):

    [autoit]


    $admin = "..."
    $domain_admin = "..."
    $pwd_admin = "..."

    [/autoit][autoit][/autoit][autoit]

    ; Wenn das Programm nicht als Admin läuft nochma
    ; mit Adminrechten starten
    If Not IsAdmin() Then
    RunAsSet($admin, $domain_admin, $pwd_admin)
    Run(@ScriptFullPath, @ScriptDir, @SW_HIDE)
    RunAsSet()
    Exit
    EndIf

    [/autoit][autoit][/autoit][autoit]

    Run ("\\Server\...\Update.EXE", "\\Server\...\")
    FileCopy ("\\Server\Arbeit\_test\Support.dat", "C:\Programme\Programmname\")
    regwrite ("HKEY_LOCAL_MACHINE\SOFTWARE\Softwarename\3.5\TK\", "Server", "REG_SZ", "10.2.129.69")

    [/autoit]
  • Dll´s auslesen

    • bernd670
    • 23. Mai 2007 um 16:09

    Hallo!

    Wenn es sich um DLL's handelt die bei Microsoft enthalten sind findet man im API-Viewer oder bei MSDN die Informationen die man benötigt.

    Wenn es selbsterstellte DLL's sind kann man nur hoffen das der Entwickler eine Dokumentation dazu geschrieben hat.

  • Text in Array einlesen

    • bernd670
    • 23. Mai 2007 um 07:06

    Hallo!

    Du hast ein paar Fehler im Code!

    1. Dim $days[10][8] erzeugt ein Array mit 10x8 Feldern, die Nummerierung beginnt immer bei 0, also für die 2. Dimension 0 - 7. In der Schleife weißt Du aber Werte von 0 - 8 zu.

    2. Until @error = -1 ist zwas Syntaktisch richtig, allerdings enthält zu diesem Zeitpunkt @error den Fehlerstatus von StringSplit und nicht mehr den von FileReadLine!

    3 Am Ende greifst Du mit MsgBox(0, "titel", $days[258][5]) einfach auf ein Element zu von dem Du gar nicht wissen kannst ob es existiert!

    Ich habs mal etwas umgeschrieben:

    [autoit]

    #include <Array.au3>
    #include <File.au3>
    #include <String.au3>

    [/autoit][autoit][/autoit][autoit]

    Dim $days[1][7], $zwischen

    [/autoit][autoit][/autoit][autoit]

    $file = FileOpen("c:\EURNOK 5min.csv", 0)
    If @error = -1 Then
    MsgBox(0,"Fehler", "Fehler beim öffnen!")
    Exit
    EndIf

    [/autoit][autoit][/autoit][autoit]

    $CountLines = _FileCountLines("c:\EURNOK 5min.csv")

    [/autoit][autoit][/autoit][autoit]

    ReDim $days[$CountLines][7]

    [/autoit][autoit][/autoit][autoit]

    For $x = 0 To $CountLines -1
    $line = FileReadLine($file)
    If @error <> 0 Then
    MsgBox(0,"Fehler", "Fehler beim lesen!")
    ExitLoop
    EndIf

    [/autoit][autoit][/autoit][autoit]

    ConsoleWrite($line & @CRLF) ; gelesene Zeile zur Kontrolle ausgeben

    $zwischen = StringSplit($line, ";") ; $zwischen[0] enthält die Anzahl der Elemente (sollte immer 7 sein)

    for $i = 1 To $zwischen[0]
    $days[$x][$i-1] = $zwischen[$i]
    Next
    Next

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    MsgBox(0, "titel", $days[$CountLines - 1][5])

    [/autoit]
  • Andere Programmiersprachen

    • bernd670
    • 22. Mai 2007 um 17:44

    Hallo!

    Vllt. hilft ja der Link OOP besser zu verstehen -> http://www.oszhdl.be.schule.de/gymnasium/faec…k/oop/index.htm

  • Information aus dokument extrahieren

    • bernd670
    • 22. Mai 2007 um 00:04

    Hi @Pee!

    In der Hilfe steht "String can contain strings of up to 2 billion characters". Das würde heißen das es bei Unicode 4GB sind. Wobei ich auch eher davon ausgehe das es dann "nur" noch 1 Billion Zeichen sind!

  • If Not mit IniRead

    • bernd670
    • 21. Mai 2007 um 23:28

    Hallo!

    Nochmal zu dem Thema warum man Klammern setzten muss, in der Hilfe (AutoIt -> Language Reference -> Operators) steht:

    Zitat

    When more than one operator is used in an expression the order in which things happen is controlled by operator precedence. The precedence used in AutoIt is given below. Where two operators have the same precedence the expression is evaluated left to right.

    From highest precedence to lowest:

    NOT
    ^
    * /
    + -
    &
    < > <= >= = <> ==
    AND OR

    Alles anzeigen

    Sprich das ist die Prioritätenliste nach denen Operatoren abgearbeitet werden. Da "NOT" weiter oben steht als "=" wird [NOT $user] früher ausgewertet als [$user = "ich"]. Mit den Klammer kann man diese Priorität ändern, alles was in Klammer steht wird zuerst ausgewertet. Das kennst Du ja bestimmt auch aus der Mathematik, da ist 3 + 4 * 12 ja auch was anderes als (3 + 4) * 12.

  • Information aus dokument extrahieren

    • bernd670
    • 21. Mai 2007 um 23:01

    Hallo!

    Ich weiß ja nicht wie Du rechnest aber 2.147.483.647 Zeichen entsprechen 2.147.483.647 Byte das sind nach Adam Riese gerundet 2 Gigabyte und nicht 256 Megabyte. Genau sind es 1,999999999068677425384521484375 Gigabyte oder 2 Gigabyte - 1 Byte


    PS: MAX_LINESIZE sind 4095 Zeichen = 4095 Byte das sind gerundet 4 Kilobyte, genau sind es 3,9990234375 Kilobyte oder 4 Kilobyte - 1 Byte!

  • BlueScreen bei Autoit3

    • bernd670
    • 21. Mai 2007 um 06:28

    Ich tippe auf ein Speicher- oder Treiberproblem!

    Wenn Du mehrere Speicherriegel on Board hast, nimm mal einen nach dem anderen raus und probier mal ob das Problem dann weg ist! Du kannst auch mal den memtest von Knoppix starten und schauen ob ein Fehler gefunden wird. Evtl. hilft es auch alle Treiber zu aktuallisieren bzw. neu zu installieren!

  • bild drehen

    • bernd670
    • 21. Mai 2007 um 00:08

    Kannst ja versuche das von ActiveVB umzusetzen!

  • Sudoku

    • bernd670
    • 20. Mai 2007 um 23:05

    Hallo!

    Ich habe jetzt mal die beiden Programmteile zusammengefügt!

    Spoiler anzeigen
    [autoit]

    ; ----------------------------------------------------------------------------
    ;
    ; AutoIt Version: 3.2.4.0
    ; Author: bernd670
    ; Idea: Alina
    ;
    ; Script Function:
    ; Sudoku & Leveleditor
    ;
    ; ----------------------------------------------------------------------------
    #Region Compiler directives section
    #Compiler_Prompt=y
    #Compiler_Res_Language=1031
    #Compiler_Icon =.\Images\Sudoku.ico
    #Compiler_Res_LegalCopyright=bernd670 and Friends
    #Compiler_Res_Description=AutoIt v3 Skript - Sudoku
    #Compiler_Res_Comment=Sudoku Spiel
    #Compiler_OutFile_Type=exe
    #Compiler_Compression=4 ;Compression parameter 0-4 0=Low 2=normal 4=High
    #Compiler_Allow_Decompile=n
    #Compiler_Res_Field=Entwickler|bernd670
    #Compiler_Res_Field=Release Datum|%date% %time%
    #Compiler_Res_Field=Programmgruppe|Spiele
    #Compiler_Res_Field=Original Dateiname|Sudoku.exe
    #Compiler_Res_Field=Version|1.0
    #Compiler_Run_Obfuscator=n
    #EndRegion

    [/autoit] [autoit][/autoit] [autoit]

    #region Includes
    #include <GUIConstants.au3>
    #Include <GuiStatusBar.au3>
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region AutoItSetOptions
    Opt("GUIOnEventMode", 1)
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region Konstantendefinitionen
    Const $ciTop = 40
    Const $ciLeft = 20
    Const $cstrIniFile = @ScriptDir & "\Sudoku.ini"
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region Variablendefinitionen
    #region Variablen für alle Modi
    Dim $arField[9][9] ; Speichert die ControlID's der Inputfelder
    Dim $arLevels ; Array für die Spielstufen
    Dim $arGames ; Array für die Spiele in den Spielstufen

    [/autoit] [autoit][/autoit] [autoit]

    Global $bGameMode = True ; True = Spielmodus, False = Editormodus

    [/autoit] [autoit][/autoit] [autoit]

    Local $arPartsWidth[2] = [ 55, -1 ]
    Local $arPartsText[2] = [ "Let's go!", "" ]
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region Variablen für den Spielmodus ($bGameMode = True)
    Dim $arResult[3][9] ; Zur Berechnung der Ergebnisse [0][x] = Zeile, [1][x] = Spalte, [2][x] = Block

    [/autoit] [autoit][/autoit] [autoit]

    Global $bUnraveled = False ; Rätsel gelöst
    Global $bStarted = False ; Rätsel begonnen
    Global $iStartTime ; Startzeit
    Global $iRunTime ; Spieldauer
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region Variablen für den Editormodus ($bGameMode = False)
    Global $bLevelsChanged ; Ist True wenn sich an den Levels was geändert hat
    Global $bSheetSaveOK ; Ist True wenn das Blatt mit mehr als 21 Ziffern gefüllt ist
    Global $bSheetChanged ; Ist True wenn das Blatt verändert wurde
    Global $iGameIndex ; Speichert die aktuelle Spielnummer
    Global $strTempGame ; Zwischenspeicher für das aktuelle Spiel
    Global $strPreLevel ; Text der den Key in der INI-Section Levels vorangestellt ist
    #endregion
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region GUI-Erstellung
    $FrmMain = GUICreate("Sudoku", 633, 454, -1, -1)
    GUISetOnEvent($GUI_EVENT_CLOSE, "FormMainClose")
    GUISetOnEvent($GUI_EVENT_MINIMIZE, "FormMainMinimize")
    GUISetOnEvent($GUI_EVENT_MAXIMIZE, "FormMainMaximize")
    GUISetOnEvent($GUI_EVENT_RESTORE, "FormMainRestore")

    [/autoit] [autoit][/autoit] [autoit]

    $ModeMenu = GUICtrlCreateMenu("&Modus")
    $ModeMenuItemGame = GUICtrlCreateMenuItem("&Spiel", $ModeMenu);,0,1)
    GUICtrlSetOnEvent(-1, "ModeChange")
    GUICtrlSetState(-1,$GUI_CHECKED)
    $ModeMenuItemEdit = GUICtrlCreateMenuItem("&Editor", $ModeMenu);,1,1)
    GUICtrlSetOnEvent(-1, "ModeChange")

    [/autoit] [autoit][/autoit] [autoit]

    $PicLeft = GUICtrlCreatePic(@ScriptDir & "\Images\Black.jpg", $ciLeft, $ciTop + 5, 5, 334, BitOR($SS_NOTIFY, $WS_GROUP))
    $PicInnerLeft = GUICtrlCreatePic(@ScriptDir & "\Images\Black.jpg", $ciLeft + 113, $ciTop + 5, 5, 334, BitOR($SS_NOTIFY, $WS_GROUP))
    $PicInnerRight = GUICtrlCreatePic(@ScriptDir & "\Images\Black.jpg", $ciLeft + 226, $ciTop + 5, 5, 334, BitOR($SS_NOTIFY, $WS_GROUP))
    $PicRight = GUICtrlCreatePic(@ScriptDir & "\Images\Black.jpg", $ciLeft + 339, $ciTop + 5, 5, 334, BitOR($SS_NOTIFY, $WS_GROUP))
    $PicTop = GUICtrlCreatePic(@ScriptDir & "\Images\Black.jpg", $ciLeft, $ciTop, 344, 5, BitOR($SS_NOTIFY, $WS_GROUP))
    $PicInnerTop = GUICtrlCreatePic(@ScriptDir & "\Images\Black.jpg", $ciLeft + 5, $ciTop + 113, 334, 5, BitOR($SS_NOTIFY, $WS_GROUP))
    $PicInnerBottom = GUICtrlCreatePic(@ScriptDir & "\Images\Black.jpg", $ciLeft + 5, $ciTop + 226, 334, 5, BitOR($SS_NOTIFY, $WS_GROUP))
    $PicBottom = GUICtrlCreatePic(@ScriptDir & "\Images\Black.jpg", $ciLeft, $ciTop + 339, 344, 5, BitOR($SS_NOTIFY, $WS_GROUP))

    [/autoit] [autoit][/autoit] [autoit]

    For $iRow = 0 To 8
    $iTop = $ciTop + 8 + $iRow * 35 + Int($iRow / 3) * 8
    For $iColumn = 0 To 8
    $iLeft = $ciLeft + 8 + $iColumn * 35 + Int($iColumn / 3) * 8
    $arField[$iRow][$iColumn] = GUICtrlCreateInput("", $iLeft, $iTop, 32, 32, BitOR($ES_CENTER, $ES_NUMBER))
    GUICtrlSetOnEvent(-1, "FieldChange")
    GUICtrlSetLimit(-1, 1)
    GUICtrlSetFont(-1, 16, 400, 0, "Arial")
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    #region Controls für alle Modi (immer sichtbar)
    $LblLevels = GUICtrlCreateLabel("Level:", $ciLeft + 360, $ciTop + 5, 50, $WS_GROUP)
    GUICtrlSetFont(-1, 12, 600, 0, "Arial")
    $CBLevels = GUICtrlCreateCombo("", $ciLeft + 420, $ciTop + 5, 120, 100, BitOR($CBS_DROPDOWNLIST, $CBS_AUTOHSCROLL, $WS_VSCROLL))
    GUICtrlSetOnEvent(-1, "LevelChange")

    [/autoit] [autoit][/autoit] [autoit]

    $LblGames = GUICtrlCreateLabel("Spiel:", $ciLeft + 360, $ciTop + 30, 50)
    GUICtrlSetFont(-1, 12, 600, 0, "Arial")
    $CBGames = GUICtrlCreateCombo("", $ciLeft + 420, $ciTop + 30, 120, 100, BitOR($CBS_DROPDOWNLIST, $CBS_AUTOHSCROLL, $WS_VSCROLL))
    GUICtrlSetOnEvent(-1, "GameChange")
    #endregion

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    #region Controls für den Spielmodus (sichtbar wenn $bGameMode = True)
    $ButRestart = GUICtrlCreateButton("Spiel &neustarten", $ciLeft + 360, $ciTop + 310, 190)
    GUICtrlSetFont(-1, 12, 600, 0, "Arial")
    GUICtrlSetOnEvent(-1, "ButRestartClick")
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region Controls für den Editormodus (sichtbar wenn $bGameMode = False)
    $ButChangeLevel = GUICtrlCreateButton("Levelbez. ä&ndern", $ciLeft + 360, $ciTop + 140, 190)
    GUICtrlSetFont(-1, 12, 600, 0, "Arial")
    GUICtrlSetOnEvent(-1, "ButChangeLevelClick")
    GUICtrlSetState(-1, $GUI_HIDE)

    [/autoit] [autoit][/autoit] [autoit]

    $ButNewLevel = GUICtrlCreateButton("Neuer &Level", $ciLeft + 360, $ciTop + 170, 190)
    GUICtrlSetFont(-1, 12, 600, 0, "Arial")
    GUICtrlSetOnEvent(-1, "ButNewLevelClick")
    GUICtrlSetState(-1, $GUI_HIDE)

    [/autoit] [autoit][/autoit] [autoit]

    $ButNewSheet = GUICtrlCreateButton("Neues &Blatt", $ciLeft + 360, $ciTop + 210, 190)
    GUICtrlSetFont(-1, 12, 600, 0, "Arial")
    GUICtrlSetOnEvent(-1, "ButNewSheetClick")
    GUICtrlSetState(-1, $GUI_HIDE)

    [/autoit] [autoit][/autoit] [autoit]

    $ButDelSheet = GUICtrlCreateButton("Blatt lösch&en", $ciLeft + 360, $ciTop + 240, 190)
    GUICtrlSetFont(-1, 12, 600, 0, "Arial")
    GUICtrlSetOnEvent(-1, "ButDelSheetClick")
    GUICtrlSetState(-1, $GUI_HIDE)

    [/autoit] [autoit][/autoit] [autoit]

    $ButSave = GUICtrlCreateButton("Blatt &speichern", $ciLeft + 360, $ciTop + 280, 190)
    GUICtrlSetFont(-1, 12, 600, 0, "Arial")
    GUICtrlSetOnEvent(-1, "ButSaveClick")
    GUICtrlSetState(-1, $GUI_DISABLE)
    GUICtrlSetState(-1, $GUI_HIDE)

    [/autoit] [autoit][/autoit] [autoit]

    $ButUndo = GUICtrlCreateButton("Änderungen &verwerfen", $ciLeft + 360, $ciTop + 310, 190)
    GUICtrlSetFont(-1, 12, 600, 0, "Arial")
    GUICtrlSetOnEvent(-1, "ButUndoClick")
    GUICtrlSetState(-1, $GUI_DISABLE)
    GUICtrlSetState(-1, $GUI_HIDE)
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    $StatusBar = _GUICtrlStatusBarCreate ($FrmMain, $arPartsWidth, $arPartsText)
    #endregion
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    #region Initialisierung
    $arLevels = IniReadSection($cstrIniFile, "Levels")
    If @error Then ; Fehler beim lesen der INI-Datei
    $strPreLevel = "Level"
    Dim $arLevels[2][2]
    Dim $arGames[2][2]

    [/autoit] [autoit][/autoit] [autoit]

    $arLevels[0][0] = 1
    $arLevels[1][0] = $strPreLevel & "1"
    $arLevels[1][1] = "Level 1"
    GUICtrlSetData($CBLevels, "Level 1", "Level 1")

    [/autoit] [autoit][/autoit] [autoit]

    $arGames[0][0] = 1
    $arGames[1][0] = "001"
    $arGames[1][1] = StringFormat("%081s", "0")
    GUICtrlSetData($CBGames, "001", "001")

    [/autoit] [autoit][/autoit] [autoit]

    IniWriteSection($cstrIniFile, "Levels", $arLevels)
    IniWriteSection($cstrIniFile, $arLevels[1][0], $arGames)

    $bGameMode = SetStates(False) ; in Editormodus schalten
    GameChange()
    $bLevelsChanged = True
    $bSheetChanged = False
    $bSheetSaveOK = False
    Else
    $strPreLevel = StringRegExp($arLevels[1][0],"(.*)\d+",1)
    $strPreLevel = $strPreLevel[0]
    If $arLevels[0][0] > 1 Then
    $strLevels = ""
    For $iIndex = 1 To $arLevels[0][0]
    $strLevels &= $arLevels[$iIndex][1] & "|"
    Next
    $strLevels = StringTrimRight($strLevels, 1)
    GUICtrlSetData($CBLevels, $strLevels, StringLeft($strLevels, StringInStr($strLevels, "|") - 1))
    Else
    GUICtrlSetData($CBLevels, $arLevels[1][1], $arLevels[1][1])
    EndIf
    LevelChange()
    EndIf
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region Hauptschleife
    While 1
    if $bGameMode = True Then ; im Spielmodus
    If $bUnraveled = True Then
    If MsgBox(262148, "", "Sudoku wurde gelöst!" & @CRLF & "Glückwunsch!" & @CRLF & @CRLF & "Weiterspielen ?") = 7 Then ExitLoop
    $bUnraveled = False
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If $bStarted = True Then
    GUICtrlSetState($ModeMenu,$GUI_DISABLE) ; Während des Spieles Modus-Menü deaktivieren
    If $iStartTime = 0 Then $iStartTime = TimerInit()
    If $iRunTime <> Int(TimerDiff($iStartTime) / 1000) Then
    $iRunTime = Int(TimerDiff($iStartTime) / 1000)
    _GUICtrlStatusBarSetText($StatusBar,StringFormat("%02i:%02i:%02i",Int($iRunTime/3600),Int(Mod($iRunTime,3600)/60),Mod($iRunTime,60)),0)
    EndIf

    If BitAND(GUICtrlGetState($ButRestart), $GUI_DISABLE) = $GUI_DISABLE Then GUICtrlSetState($ButRestart, $GUI_ENABLE)
    Else
    GUICtrlSetState($ModeMenu,$GUI_ENABLE)
    _GUICtrlStatusBarSetText($StatusBar,"Let's go!",0)
    If BitAND(GUICtrlGetState($ButRestart), $GUI_ENABLE) = $GUI_ENABLE Then GUICtrlSetState($ButRestart, $GUI_DISABLE)
    EndIf
    Else ; im Editormodus
    If Not $bSheetChanged Then
    If BitAND(GUICtrlGetState($ButNewLevel), $GUI_DISABLE) = $GUI_DISABLE Then GUICtrlSetState($ButNewLevel, $GUI_ENABLE)
    If BitAND(GUICtrlGetState($ButUndo), $GUI_ENABLE) = $GUI_ENABLE Then GUICtrlSetState($ButUndo, $GUI_DISABLE)
    Else
    If BitAND(GUICtrlGetState($ButNewLevel), $GUI_ENABLE) = $GUI_ENABLE Then GUICtrlSetState($ButNewLevel, $GUI_DISABLE)
    If BitAND(GUICtrlGetState($ButUndo), $GUI_DISABLE) = $GUI_DISABLE Then GUICtrlSetState($ButUndo, $GUI_ENABLE)
    EndIf

    If StringChrCount($strTempGame,"0") = 81 Then
    If BitAND(GUICtrlGetState($ButNewSheet), $GUI_ENABLE) = $GUI_ENABLE Then GUICtrlSetState($ButNewSheet, $GUI_DISABLE)
    If BitAND(GUICtrlGetState($CBLevels), $GUI_ENABLE) = $GUI_ENABLE Then GUICtrlSetState($CBLevels, $GUI_DISABLE)
    If BitAND(GUICtrlGetState($CBGames), $GUI_ENABLE) = $GUI_ENABLE Then GUICtrlSetState($CBGames, $GUI_DISABLE)
    Else
    If BitAND(GUICtrlGetState($CBLevels), $GUI_DISABLE) = $GUI_DISABLE Then GUICtrlSetState($CBLevels, $GUI_ENABLE)
    If BitAND(GUICtrlGetState($CBGames), $GUI_DISABLE) = $GUI_DISABLE Then GUICtrlSetState($CBGames, $GUI_ENABLE)
    If BitAND(GUICtrlGetState($ButNewSheet), $GUI_DISABLE) = $GUI_DISABLE Then GUICtrlSetState($ButNewSheet, $GUI_ENABLE)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    If $bSheetChanged And $bSheetSaveOK Then
    If BitAND(GUICtrlGetState($ButSave), $GUI_DISABLE) = $GUI_DISABLE Then GUICtrlSetState($ButSave, $GUI_ENABLE)
    Else
    If BitAND(GUICtrlGetState($ButSave), $GUI_ENABLE) = $GUI_ENABLE Then GUICtrlSetState($ButSave, $GUI_DISABLE)
    EndIf
    EndIf

    $CGF = ControlGetFocus($FrmMain)
    If StringLeft($CGF,4) = "Edit" Then
    If _IsPressed("25") Then ; Cursor Links
    If Int(StringMid($CGF,5)) = 1 Then
    GUICtrlSetState($arField[8][8],$GUI_FOCUS)
    Else
    ControlSend($FrmMain, "", "", "+{TAB}")
    EndIf
    EndIf
    If _IsPressed("26") Then ; Cursor hoch
    Switch Int(StringMid($CGF,5))
    Case 1
    GUICtrlSetState($arField[8][8],$GUI_FOCUS)
    Case 2 To 9
    GUICtrlSetState($arField[8][Int(StringMid($CGF,5))-2],$GUI_FOCUS)
    Case Else
    GUICtrlSetState($arField[Int((StringMid($CGF,5)-10)/9)][Int(Mod(StringMid($CGF,5)-10,9))],$GUI_FOCUS)
    EndSwitch
    EndIf
    If _IsPressed("27") Then ; Cursor rechts
    If Int(StringMid($CGF,5)) = 81 Then
    GUICtrlSetState($arField[0][0],$GUI_FOCUS)
    Else
    ControlSend($FrmMain, "", "", "{TAB}")
    EndIf
    EndIf
    If _IsPressed("28") Then ; Cursor runter
    If Int(StringMid($CGF,5)) >= 73 Then
    GUICtrlSetState($arField[0][Int(Mod(StringMid($CGF,5)+9,9))],$GUI_FOCUS)
    Else
    GUICtrlSetState($arField[Int((StringMid($CGF,5)+8)/9)][Int(Mod(StringMid($CGF,5)+8,9))],$GUI_FOCUS)
    EndIf
    EndIf
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Sleep(80)
    WEnd
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region Funktionen
    Func FormMainClose()
    if $bGameMode = False Then ; im Editormodus
    If $bSheetChanged Then
    $iAnswer = MsgBox(262436, "Beenden", "Wenn Sie jetzt beenden gehen" & @CRLF &"alle Änderungen verloren!" & @CRLF & @CRLF & "Soll wirklich beendet werden?")
    If $iAnswer = 7 Then Return
    EndIf
    EndIf
    Exit
    EndFunc ;==>FormMainClose

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func FormMainMaximize()
    EndFunc ;==>FormMainMaximize

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func FormMainMinimize()
    EndFunc ;==>FormMainMinimize

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func FormMainRestore()
    EndFunc ;==>FormMainRestore

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    #region Funktionen für alle Modi
    ; ModeChange -> wechsel zwischen Spiel und Editor
    Func ModeChange()
    Switch @GUI_CtrlId
    Case $ModeMenuItemGame ; In Spielmodus schalten
    If $bGameMode = False Then
    If $bLevelsChanged Or $bSheetChanged Then
    $iAnswer = MsgBox(262436, "Moduswechsel", "Wenn Sie jetzt in den Spielmodus schalten" & @CRLF &"gehen alle Änderungen verloren!" & @CRLF & @CRLF & "Wollen Sie wirklich umschalten?")
    If $iAnswer = 7 Then Return
    EndIf
    SetStates(True) ; Initialisierung für Spielmodus
    LevelChange()
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $ModeMenuItemEdit ; In Editormodus schalten
    If $bGameMode = True Then
    SetStates(False) ; Initialisierung für Editmodus
    LevelChange()
    EndIf
    EndSwitch
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Initialisierung je nach Modus
    Func SetStates($bMode)
    If $bMode Then ; Spielmodus
    ConsoleWrite("Set Gamemode" & @CRLF)
    WinSetTitle($FrmMain,"","Sudoku")
    GUICtrlSetState($ModeMenuItemGame,$GUI_CHECKED)
    GUICtrlSetState($ModeMenuItemEdit,$GUI_UNCHECKED)
    GUICtrlSetState($ButRestart, $GUI_SHOW)
    GUICtrlSetState($ButChangeLevel, $GUI_HIDE)
    GUICtrlSetState($ButNewLevel, $GUI_HIDE)
    GUICtrlSetState($ButNewSheet, $GUI_HIDE)
    GUICtrlSetState($ButSave, $GUI_HIDE)
    GUICtrlSetState($ButUndo, $GUI_HIDE)
    $bGameMode = True
    $bUnraveled = False
    $bStarted = False
    Else ; Editormodus
    ConsoleWrite("Set Editmode" & @CRLF)
    WinSetTitle($FrmMain,"","Sudoku - Level Editor")
    GUICtrlSetState($ModeMenuItemGame,$GUI_UNCHECKED)
    GUICtrlSetState($ModeMenuItemEdit,$GUI_CHECKED)
    GUICtrlSetState($ButRestart, $GUI_HIDE)
    GUICtrlSetState($ButChangeLevel, $GUI_SHOW)
    GUICtrlSetState($ButNewLevel, $GUI_SHOW)
    GUICtrlSetState($ButNewSheet, $GUI_SHOW)
    GUICtrlSetState($ButSave, $GUI_SHOW)
    GUICtrlSetState($ButUndo, $GUI_SHOW)
    $bGameMode = False
    $bLevelsChanged = False
    $bSheetChanged = False
    $bSheetSaveOK = False
    EndIf

    Return $bMode
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; FieldChange -> eines der Inputfelder wurde geändert
    Func FieldChange()
    if $bGameMode = True Then ; im Spielmodus
    For $iRow = 0 To 8
    $arResult[0][$iRow] = 0
    For $iColumn = 0 To 8
    If $iRow = 0 Then
    $arResult[1][$iColumn] = 0
    $arResult[2][$iColumn] = 0
    EndIf
    $iValue = Int(GUICtrlRead($arField[$iRow][$iColumn]))
    $arResult[0][$iRow] += $iValue ; Zeilenergebnis
    $arResult[1][$iColumn] += $iValue ; Spaltenergebnis
    $arResult[2][Int($iRow / 3) * 3 + Int($iColumn / 3) ] += $iValue ; Blockergebnis
    Next
    Next
    $bUnraveled = True
    For $iIndex = 0 To 8
    If $arResult[0][$iIndex] <> 45 Or $arResult[1][$iIndex] <> 45 Or $arResult[2][$iIndex] <> 45 Then
    $bUnraveled = False
    ExitLoop
    EndIf
    Next
    $bStarted = True
    Else ; im Editormodus
    $iCounter = 0
    $arGames[$iGameIndex][1] = ""
    For $iRow = 0 To 8
    For $iColumn = 0 To 8
    $iValue = Int(GUICtrlRead($arField[$iRow][$iColumn]))
    If $iValue > 0 Then
    $iCounter += 1
    $arGames[$iGameIndex][1] &= String($iValue)
    Else
    $arGames[$iGameIndex][1] &= "0"
    EndIf
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    $bSheetSaveOK = False
    If $iCounter > 13 Then $bSheetSaveOK = True

    [/autoit] [autoit][/autoit] [autoit]

    $bSheetChanged = True
    _GUICtrlStatusBarSetText($StatusBar,$iCounter & " Ziffern")
    EndIf
    EndFunc ;==>FieldChange

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; LevelChange -> Schwierigkeitsstufe wurde geändert
    Func LevelChange()
    $strLevel = GUICtrlRead($CBLevels)
    For $iIndex = 1 To $arLevels[0][0]
    If $arLevels[$iIndex][1] == $strLevel Then ExitLoop
    Next
    $arGames = IniReadSection($cstrIniFile, $arLevels[$iIndex][0])
    If @error Then
    MsgBox(4096, "", "Fehler beim lesen der Ini-Datei!")
    Exit
    EndIf
    Switch $arGames[0][0]
    Case 0
    MsgBox(4096, "", "Für diesen Level existieren keine Spiele")
    Return
    Case 1
    GUICtrlSetData($CBGames, "|" & $arGames[1][0], $arGames[1][0])
    If StringChrCount($arGames[1][1],"0") = 81 Then SetStates(False)
    Case Else
    $strGames = ""
    For $iIndex = 1 To $arGames[0][0]
    $strGames &= $arGames[$iIndex][0] & "|"
    Next
    $strGames = StringTrimRight($strGames, 1)
    GUICtrlSetData($CBGames, "|" & $strGames, StringLeft($strGames, StringInStr($strGames, "|") - 1))
    EndSwitch
    GameChange()
    EndFunc ;==>LevelChange

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; GameChange -> Neues Spiel wurde gewählt
    Func GameChange()
    $strGame = GUICtrlRead($CBGames)
    For $iIndex = 1 To $arGames[0][0]
    If $arGames[$iIndex][0] == $strGame Then ExitLoop
    Next

    [/autoit] [autoit][/autoit] [autoit]

    For $iRow = 8 To 0 Step - 1
    For $iColumn = 8 To 0 Step - 1
    $iValue = StringMid($arGames[$iIndex][1], $iRow * 9 + $iColumn + 1, 1)
    If $iValue <> 0 Then
    GUICtrlSetData($arField[$iRow][$iColumn], $iValue)
    if $bGameMode = True Then ; im Spielmodus
    GUICtrlSetStyle($arField[$iRow][$iColumn], BitOR($ES_CENTER, $ES_NUMBER, $ES_READONLY))
    Else ; im Editormodus
    GUICtrlSetStyle($arField[$iRow][$iColumn], BitOR($ES_CENTER, $ES_NUMBER))
    EndIf
    Else
    GUICtrlSetData($arField[$iRow][$iColumn], "")
    GUICtrlSetStyle($arField[$iRow][$iColumn], BitOR($ES_CENTER, $ES_NUMBER))
    EndIf
    Next
    Next

    if $bGameMode = True Then ; im Spielmodus
    $bStarted = False
    $iStartTime = 0
    Else ; im Editormodus
    $strTempGame = $arGames[$iIndex][1]
    $iGameIndex = $iIndex
    _GUICtrlStatusBarSetText($StatusBar,81 - StringChrCount($strTempGame,"0") & " Ziffern")
    EndIf
    EndFunc ;==>GameChange
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region Funktionen für den Spielmodus ($bGameMode = True)
    Func ButRestartClick()
    GameChange()
    EndFunc ;==>ButRestartClick
    #endregion

    [/autoit] [autoit][/autoit] [autoit]

    #region Funktionen für den Editormodus ($bGameMode = False)
    ; Button "Levelbez. ändern" wurde betätigt
    Func ButChangeLevelClick()
    $StrOldName = GUICtrlRead($CBLevels)
    For $iIndex = 1 To $arLevels[0][0]
    If $arLevels[$iIndex][1] == $StrOldName Then ExitLoop
    Next

    [/autoit] [autoit][/autoit] [autoit]

    $strNewName = InputBox("Levelbezeichnung ändern", "Bitte neue Levelbezeichnung eingeben!" & @CRLF & @CRLF & _
    "Die derzeitige Bezeichnung ist: " & $StrOldName)
    If $strNewName <> $StrOldName And StringLen($strNewName) Then
    $arLevels[$iIndex][1] = $strNewName
    $bLevelsChanged = True

    [/autoit] [autoit][/autoit] [autoit]

    $strLevels = ""
    For $iIndex = 1 To $arLevels[0][0]
    $strLevels &= $arLevels[$iIndex][1] & "|"
    Next
    $strLevels = StringTrimRight($strLevels, 1)

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($CBLevels, $strLevels, $strNewName)
    EndIf
    EndFunc ;==>ButChangeLevelClick

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Button "Neuer Level" wurde betätigt
    Func ButNewLevelClick()
    $strNewName = InputBox("Level hinzufügen", "Bitte Bezeichnung für den neuen Level eingeben!")

    [/autoit] [autoit][/autoit] [autoit]

    If StringLen($strNewName) Then
    ReDim $arLevels[$arLevels[0][0] + 2][2]
    $arLevels[0][0] += 1

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $strLevels = ""
    For $iIndex = 1 To $arLevels[0][0] - 1
    $strLevels &= $arLevels[$iIndex][1] & "|"
    If Int(StringMid($arLevels[$iIndex][0], 6)) >= Int($arLevels[$arLevels[0][0]][0]) Then
    $arLevels[$arLevels[0][0]][0] = Int(StringMid($arLevels[$iIndex][0], 6)) + 1
    EndIf
    Next
    $arLevels[$arLevels[0][0]][0] = $strPreLevel & $arLevels[$arLevels[0][0]][0]
    $arLevels[$arLevels[0][0]][1] = $strNewName
    $strLevels &= $strNewName

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($CBLevels, $strLevels, $strNewName)

    [/autoit] [autoit][/autoit] [autoit]

    ReDim $arGames[2][2]

    [/autoit] [autoit][/autoit] [autoit]

    $arGames[0][0] = 1
    $arGames[1][0] = "001"
    $arGames[1][1] = StringFormat("%081s", "0")
    GUICtrlSetData($CBGames, "001", "001")
    GameChange()
    $bLevelsChanged = True
    $bSheetChanged = True
    $bSheetSaveOK = False
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    EndFunc ;==>ButNewLevelClick

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Button "Neues Blatt" wurde betätigt
    Func ButNewSheetClick()
    ReDim $arGames[$arGames[0][0] + 2][2]
    $arGames[0][0] += 1
    $arGames[$arGames[0][0]][1] = StringFormat("%081s", "0")

    [/autoit] [autoit][/autoit] [autoit]

    Switch $arGames[0][0]
    Case 0
    MsgBox(4096, "", "Für diesen Level existieren keine Spiele!")
    Return

    [/autoit] [autoit][/autoit] [autoit]

    Case 1
    GUICtrlSetData($CBGames, "|" & $arGames[1][0], $arGames[1][0])

    [/autoit] [autoit][/autoit] [autoit]

    Case Else
    $strGames = ""
    For $iIndex = 1 To $arGames[0][0] - 1
    $strGames &= $arGames[$iIndex][0] & "|"
    If Int($arGames[$iIndex][0]) >= Int($arGames[$arGames[0][0]][0]) Then
    $arGames[$arGames[0][0]][0] = StringFormat("%03i", Int($arGames[$iIndex][0]) + 1)
    EndIf
    Next
    $strGames &= $arGames[$arGames[0][0]][0]

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($CBGames, "|" & $strGames, $arGames[$arGames[0][0]][0])
    EndSwitch

    [/autoit] [autoit][/autoit] [autoit]

    GameChange()
    $bSheetSaveOK = False
    EndFunc ;==>ButNewSheetClick

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Button "Blatt löschen" wurde betätigt
    Func ButDelSheetClick()
    If MsgBox(262436, "Blatt löschen", "Soll das Blatt wirklich gelöscht werden?") = 6 Then
    $iCounter = 1
    $strGames = ""
    For $iIndex = 1 To $arGames[0][0]
    If $iIndex = $iGameIndex Then ContinueLoop
    $arGames[$iCounter][0] = StringFormat("%03i",$iCounter)
    $arGames[$iCounter][1] = $arGames[$iIndex][1]
    $strGames &= $arGames[$iCounter][0] & "|"
    $iCounter += 1
    Next

    [/autoit] [autoit][/autoit] [autoit]

    $strGames = StringTrimRight($strGames, 1)
    GUICtrlSetData($CBGames, "|" & $strGames, StringLeft($strGames, StringInStr($strGames, "|") - 1))

    [/autoit] [autoit][/autoit] [autoit]

    $arGames[0][0] -= 1
    ReDim $arGames[$arGames[0][0]+1][2]
    ButSaveClick()
    EndIf
    EndFunc

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Button "Blatt speichern" wurde betätigt
    Func ButSaveClick()
    If $bLevelsChanged Then
    IniWriteSection($cstrIniFile, "Levels", $arLevels)

    [/autoit] [autoit][/autoit] [autoit]

    If @error Then
    MsgBox(4096, "", "Fehler beim lesen der Ini-Datei!")
    Exit
    EndIf
    $bLevelsChanged = False
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $strLevel = GUICtrlRead($CBLevels)

    [/autoit] [autoit][/autoit] [autoit]

    For $iIndex = 1 To $arLevels[0][0]
    If $arLevels[$iIndex][1] == $strLevel Then ExitLoop
    Next

    [/autoit] [autoit][/autoit] [autoit]

    IniWriteSection($cstrIniFile, $arLevels[$iIndex][0], $arGames)

    [/autoit] [autoit][/autoit] [autoit]

    If @error Then
    MsgBox(4096, "", "Fehler beim lesen der Ini-Datei!")
    Exit
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GameChange()
    $bSheetChanged = False
    $bSheetSaveOK = False
    EndFunc ;==>ButSaveClick

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Button "Änderungen verwerfen" wurde betätigt
    Func ButUndoClick()
    $arGames[$iGameIndex][1] = $strTempGame
    GameChange()
    $bSheetChanged = False
    $bSheetSaveOK = False
    EndFunc ;==>ButUndoClick

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Anzahl eines Zeichens im String zählen
    Func StringChrCount($String, $char)
    StringReplace($String,$char,$char)
    Return @extended
    EndFunc
    #endregion
    #endregion

    [/autoit]

    Edit: Dateianhang entfernt -> veraltet

  • Animiertes GIF in GUI

    • bernd670
    • 19. Mai 2007 um 22:23

    Das geht wahrscheinlich nur über den Umweg über einen eingebetteten IE!

    [autoit]

    #include <GUIConstants.au3>
    #include <ie.au3>

    [/autoit][autoit][/autoit][autoit]

    $oIE = _IECreateEmbedded()

    [/autoit][autoit][/autoit][autoit]

    GUICreate ("My GUI Animation",300,300)
    $ani1 = GUICtrlCreateObj ($oIE,30, 30, 250,250)

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    GUISetState( )
    _IENavigate($oIE,@ScriptDir & "\antenne.gif")

    [/autoit][autoit][/autoit][autoit]

    ; Run the GUI until the dialog is closed
    While 1
    $msg = GUIGetMsg()

    [/autoit][autoit][/autoit][autoit]

    Select
    case $msg = $GUI_EVENT_CLOSE
    ExitLoop

    EndSelect
    Wend

    [/autoit]
  • Suche Skript (Doppelklick auf bestimmte Farbe)

    • bernd670
    • 19. Mai 2007 um 11:54

    Du solltest einfach mal hier im Forum nach PixelSearch suchen, wir hatten da schon mal das gleiche Problem.

  • USB Laufwerk finden und Daten kopieren

    • bernd670
    • 19. Mai 2007 um 11:40

    Ich habe das Script noch mal geändert, probier mal ob die Meldung jetzt ausgegeben wird!

    Edit:
    Wegen dem anderen Problem solltest Du den Code mal posten!

  • Returnwert an DosBox senden

    • bernd670
    • 19. Mai 2007 um 11:34

    Ich glaube Du hast das falsch verstanden, @Tam0r will das sein, mit AutoIt geschiebenes, Programm etwas in der DosBox ausgibt. So wie der Befehl printf oder cout in C/C++.

  • Fragen zu PixelSearch und PixelGetColor

    • bernd670
    • 19. Mai 2007 um 08:52

    Bilder suchen geht schon s. hier!

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™