Anwendung Minimiert mit Windows in der Trayleiste starten!?

  • Hallo zusammen, wieder mal eine Frage an die Spezialisten. :D
    Und zwar möchte ich gerne wissen, das wenn Windows startet meine Anwendung in der Trayleiste erscheint, ohne dass das Fenster sich öffnet. Wenn ich aber mein Programm selber starte möchte ich schon das es mit dem Fenster erscheint.
    Gibt es da ein Befehl mit dem ich es schreiben kann. Ich hoffe das ihr mir helfen könnt.
    Danke schon mal im vorraus.

    Einmal editiert, zuletzt von m3hm3t (24. November 2008 um 16:27)

  • Ja ok die Überprüfung per "If" müsste folgen aber wie genau wird sowas geschrieben?
    Hier ist mal mein Source Code vielleicht könnt ihr es ergänzen!?

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <Constants.au3>

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

    ;Ini
    $ini = @ScriptDir & "\autostart.ini"
    $autostart = IniRead($ini, "Konfiguration", "Autostart", 4)

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

    Opt("TrayMenuMode", 1)

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

    ;GUI
    GUICreate("Autostart", 300, 80, -1, -1)

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

    $button_suche = GUICtrlCreateButton("OK", 100, 40, 100, 25)

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

    ;Tray
    $tray_autostart = TrayCreateItem("Mit Windows starten")
    $tray_Info = TrayCreateItem("Info")
    TrayCreateItem("")
    $tray_exit = TrayCreateItem("Beenden")
    TraySetClick(8)

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

    ;Ini Überprüfung
    If $autostart <> 4 Then
    TrayItemSetState($tray_autostart, 1)
    Else
    TrayItemSetState($tray_autostart, 4)
    EndIf

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg() ;GUI
    $msg_tray = TrayGetMsg() ;Tray

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

    ;GUI
    Switch $msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $GUI_EVENT_MINIMIZE
    GUISetState(@SW_HIDE)
    EndSwitch

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

    ;Tray
    Switch $msg_tray
    Case $TRAY_EVENT_PRIMARYDOUBLE
    GUISetState(@SW_SHOW)
    Case $tray_autostart
    If $autostart = 4 Then
    TrayItemSetState($tray_autostart, 1)
    IniWrite($ini, "Konfiguration", "Autostart", 1)
    FileCopy(@ScriptDir & "\googlex.exe", @StartupDir, 1)
    $autostart = 1
    Else
    TrayItemSetState($tray_autostart, 4)
    IniWrite($ini, "Konfiguration", "Autostart", 4)
    FileDelete(@StartupDir & "\googlex.exe")
    $autostart = 4
    EndIf
    Case $tray_Info
    MsgBox(64, "Info", "By Mehmex")
    Case $tray_exit
    Exit
    EndSwitch
    WEnd

    [/autoit]
  • Stimmt jetzt verstehe ich es, du meinst aber glaube ich eher so:

    Spoiler anzeigen
    [autoit]

    If @StartupDir = @ScriptDir Then
    GUISetState(@SW_HIDE)
    Else
    GUISetState(@SW_SHOW)
    EndIf

    [/autoit]

    Ich werde es gleich mal ausprobieren, danke.

  • Es funktioniert 8o :thumbup: , DANKE. Genau das habe ich gewollt.
    Hier ist nochmal der Source Code:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <Constants.au3>

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

    ;Ini
    $ini = @ScriptDir & "\autostart.ini"
    $autostart = IniRead($ini, "Konfiguration", "Autostart", 4)

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

    Opt("TrayMenuMode", 1)

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

    ;GUI
    GUICreate("Autostart", 300, 80, -1, -1)

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

    $button_suche = GUICtrlCreateButton("OK", 100, 40, 100, 25)

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

    ;Tray
    $tray_autostart = TrayCreateItem("Mit Windows starten")
    $tray_Info = TrayCreateItem("Info")
    TrayCreateItem("")
    $tray_exit = TrayCreateItem("Beenden")
    TraySetClick(8)

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

    ;Ini Überprüfung
    If $autostart <> 4 Then
    TrayItemSetState($tray_autostart, 1)
    Else
    TrayItemSetState($tray_autostart, 4)
    EndIf

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

    If @StartupDir = @ScriptDir Then
    GUISetState(@SW_HIDE)
    Else
    GUISetState(@SW_SHOW)
    EndIf

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

    While 1
    $msg = GUIGetMsg() ;GUI
    $msg_tray = TrayGetMsg() ;Tray

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

    ;GUI
    Switch $msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $GUI_EVENT_MINIMIZE
    GUISetState(@SW_HIDE)
    EndSwitch

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

    ;Tray
    Switch $msg_tray
    Case $TRAY_EVENT_PRIMARYDOUBLE
    GUISetState(@SW_SHOW)
    Case $tray_autostart
    If $autostart = 4 Then
    TrayItemSetState($tray_autostart, 1)
    IniWrite($ini, "Konfiguration", "Autostart", 1)
    FileCopy(@ScriptDir & "\googlex.exe", @StartupDir, 1)
    $autostart = 1
    Else
    TrayItemSetState($tray_autostart, 4)
    IniWrite($ini, "Konfiguration", "Autostart", 4)
    FileDelete(@StartupDir & "\googlex.exe")
    $autostart = 4
    EndIf
    Case $tray_Info
    MsgBox(64, "Info", "By Mehmex")
    Case $tray_exit
    Exit
    EndSwitch
    WEnd

    [/autoit]