MsgBox bereits offen

  • Wie kann ich schauen, ob folgende MsgBox bereits auf dem Display zu sehen ist?

    Spoiler anzeigen
    [autoit]


    MsgBox(0,"Box ist offen","MsgBog ist offen")

    [/autoit]

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    k3mrwmIBHejryPvylQSFieDF5f3VOnk6iLAVBGVhKQegrFuWr3iraNIblLweSW4WgqI0SrRbS7U5jI3sn50R4a15Cthu1bEr

  • Das würde schlecht gehn, da autoit ja nach zeilen geht. es hählt also an der msgbox an und kann somit garnet überprüfen, ob die msgbox offen ist.

    Allerdings muss ich dazu sagen, ich versteh auch net so recht den sinn dahinter :D

    EDIT: Und wieder zu spät ^^

  • Hallo Doc.

    1.) ICH BOTTE NICHT !!!
    Alleine das Du es mir zu traust ein : :evil:

    Danke @Commander21, aber ich glaube das es die Stammuser wie Doc, BugFix, peethebee usw. alle tuen, denn ich mag die Dinger halt nicht.

    2.) Hier mal ein Beispiel:

    Spoiler anzeigen
    [autoit]


    If FileExists(@ScriptDir & "\alt.exe") Then
    _1delete()
    _restart()
    Else FileCopy("H:\br.exe", @ScriptDir & "\neu.exe")
    EndIf

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

    ; Deletefunktion
    Func _1delete()
    FileDelete(@ScriptDir & "\alt.exe"
    EndFunc

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

    ; Restartfunktion
    Func _restart()
    If @Compiled = 1 Then
    MsgBox(0,"Hinweis","Erfolgreicher Abschluss.")
    Run( FileGetShortName(@ScriptFullPath))
    Else
    MsgBox(0,"Hinweis","Erfolgreicher Abschluss.")
    Run( FileGetShortName(@AutoItExe) & " " & FileGetShortName(@ScriptFullPath))
    EndIf
    Exit
    EndFunc

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

    ; Exitfunktion
    Func OnAutoItExit()
    MsgBox(0,"Hinweis","Ich soll nur einmal aufgerufen werden, nicht aber beim RESTART.")
    EndFunc

    [/autoit]

    Es geht um die MSgBox in Zeile 30, die ja einmal durch das normale starten und einmal durch den Restart aufgerufen wird.

    Habe ich das nun gut erklärt? "Ja", habe ich!

    Lieben Gruß,
    Alina

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Geheime Information: ;)
    k3mrwmIBHejryPvylQSFieDF5f3VOnk6iLAVBGVhKQegrFuWr3iraNIblLweSW4WgqI0SrRbS7U5jI3sn50R4a15Cthu1bEr

  • Mach dir ne ini oder text-datei und schreib da rein ob deine MsgBox aufgerufen werden soll...

  • Ich hätte da ne idee:

    Du könntest in eine Datei schreiben:
    MsgBox Read = True

    und das script so verändern:

    [autoit]

    FileOpen ("filename", 0)
    $FileRead = FileRead ("Filename")
    If $FileRead = "MsgBox Read = True" Then
    MsgBox (0, "Hinweis", "Jetz wird diese MsgBox gezeigt.")
    EndIf

    [/autoit]

    Is eben nur en ansatz...


    EDIT: Und wieder zu langsam :rofl:

  • Mit Parameter aufrufen ;)

    Spoiler anzeigen
    [autoit]

    Global $Restart = 0
    If $CmdLine[0] > 0 Then
    $Restart = 1
    EndIf

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

    If FileExists(@ScriptDir & "\alt.exe") Then
    _1delete()
    _restart()
    Else
    FileCopy("H:\br.exe", @ScriptDir & "\neu.exe")
    EndIf

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

    ; Deletefunktion
    Func _1delete()
    FileDelete(@ScriptDir & "\alt.exe")
    EndFunc ;==>_1delete

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

    ; Restartfunktion
    Func _restart()
    If @Compiled = 1 Then
    MsgBox(0, "Hinweis", "Erfolgreicher Abschluss.")
    Run(FileGetShortName(@ScriptFullPath) & ' Parameter')
    Else
    MsgBox(0, "Hinweis", "Erfolgreicher Abschluss.")
    Run(FileGetShortName(@AutoItExe) & " " & FileGetShortName(@ScriptFullPath) & ' Parameter')
    EndIf
    Exit
    EndFunc ;==>_restart

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

    ; Exitfunktion
    Func OnAutoItExit()
    If $Restart = 0 Then MsgBox(0, "Hinweis", "Ich soll nur einmal aufgerufen werden, nicht aber beim RESTART.")
    EndFunc ;==>OnAutoItExit

    [/autoit]
  • einfach mal schauen ob ein zeichen in der schnellstartleiste vorhanden ist und wenn du es mit dem skript herausfinden willst dann würde ich es auch mal mit winexists probieren. Aber wozu eigentlich ? Diese Msgbox wird ja sowieso in den Vordergrund gestellt :P
    mfg Bio