Tray Icon erscheint nicht

  • Woran kann es liegen dass ich das generierte Tray Icon nicht sehen kann?

    ich hab diesen Code aus der Hilfe Datei in mein Code eingefügt

    [autoit]

    #Include <Constants.au3>
    #NoTrayIcon
    Opt("TrayMenuMode",1)

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

    $settingsitem = TrayCreateMenu("Settings")
    $displayitem = TrayCreateItem("Display", $settingsitem)
    $printeritem = TrayCreateItem("Printer", $settingsitem)
    TrayCreateItem("")
    $aboutitem = TrayCreateItem("About")
    TrayCreateItem("")
    $exititem = TrayCreateItem("Exit")

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

    TraySetState()

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

    While 1
    $msg1 = TrayGetMsg()
    Select
    Case $msg1 = 0
    ContinueLoop
    Case $msg1 = $aboutitem
    Msgbox(64,"About:","AutoIt3-Tray-sample")
    Case $msg1 = $exititem
    ExitLoop
    EndSelect
    WEnd

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

    Exit

    [/autoit]

    in dem anderen Code wuden folgende

    [autoit]

    #include

    [/autoit]

    Verwendet:

    [autoit]

    #include<GUIConstantsEX.au3>
    #include<ButtonConstants.au3>
    #include<GUIConstantsEX.au3>
    #include <Misc.au3>

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

    Opt('MustDeclareVars', 1)

    [/autoit]
  • Hallo,

    das aus der Hilfe kopierte Beispielscript läuft einwandfrei (XP SP3), d.h. das Trayicon ist sichtbar.
    Poste doch bitte den Codeauschnitt aus deinem Script.
    ciao
    .Andy

  • ja, das weiß ich!

    [autoit]

    #include<GUIConstantsEX.au3>
    #include<ButtonConstants.au3>
    #include<GUIConstantsEX.au3>
    #include <Misc.au3>

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

    Opt('MustDeclareVars', 1)

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

    Global $var = 26
    Global $btn[$var], $icn[$var], $ovv[$var], $ping

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

    ; Only accept one Instance
    if _Singleton("test",1) = 0 Then

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

    Exit
    EndIf

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

    Office()

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

    Func Office()
    Local $msg

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

    GUICreate("Office Explorer" , 530, 500)
    ;GUICreate("name" , width, height)

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

    ; Microsoft Office

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

    $btn[0] = GUICtrlCreateButton("Microsoft Word", 10, 10, 200, 30)
    $icn[0] = GUICtrlCreateIcon("icons\word.ico", "", 230, 15, 16, 16)

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

    $btn[1] = GUICtrlCreateButton("Microsoft Exel", 10, 40, 200, 30)
    $icn[1] = GUICtrlCreateIcon("icons\exel.ico", "", 230, 45, 16, 16)

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

    $btn[2] = GUICtrlCreateButton("Microsoft PowerPoint", 10, 70, 200, 30)
    $icn[2] = GUICtrlCreateIcon("icons\ppt.ico", "", 230, 75, 16, 16)

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

    $btn[3] = GUICtrlCreateButton("Microsoft Outlook", 10, 100, 200, 30)
    $icn[3] = GUICtrlCreateIcon("icons\outl.ico", "", 230, 105, 16, 16)

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

    $btn[4] = GUICtrlCreateButton("Microsoft InfoPath ", 10, 130, 200, 30)
    $icn[4] = GUICtrlCreateIcon("icons\info.ico", "", 230, 135, 16, 16)

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

    $btn[5] = GUICtrlCreateButton("Microsoft Groove ", 10, 160, 200, 30)
    $icn[5] = GUICtrlCreateIcon("icons\groove.ico", "", 230, 165, 16, 16)

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

    $btn[6] = GUICtrlCreateButton("Microsoft OneNote", 10, 190, 200, 30)
    $icn[6] = GUICtrlCreateIcon("icons\onen.ico", "", 230, 195, 16, 16)

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

    $btn[7] = GUICtrlCreateButton("Microsoft Publisher", 10, 220, 200, 30)
    $icn[7] = GUICtrlCreateIcon("icons\publ.ico", "", 230, 225, 16, 16)

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

    $btn[8] = GUICtrlCreateButton("Microsoft Projekt", 10, 250, 200, 30)
    $icn[8] = GUICtrlCreateIcon("icons\pro.ico", "", 230, 255, 16, 16)

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

    $btn[9] = GUICtrlCreateButton("Microsoft Acces", 10, 280, 200, 30)
    $icn[9] = GUICtrlCreateIcon("icons\acc.ico", "", 230, 285, 16, 16)

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

    $btn[10] = GUICtrlCreateButton("Microsoft Visio", 10, 310, 200, 30)
    $icn[10] = GUICtrlCreateIcon("icons\visio.ico", "", 230, 315, 16, 16)

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop

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

    ; Office
    Case $msg = $btn[0]
    Run("C:\Programme\Microsoft Office\Office12\WINWORD.exe")
    Case $msg = $btn[1]
    Run("C:\Programme\Microsoft Office\Office12\EXCEL.exe")
    Case $msg = $btn[2]
    Run("C:\Programme\Microsoft Office\Office12\POWERPNT.exe")
    Case $msg = $btn[3]
    Run("C:\Programme\Microsoft Office\Office12\OUTLOOK.exe")
    Case $msg = $btn[4]
    Run("C:\Programme\Microsoft Office\Office12\INFOPATH.exe")
    Case $msg = $btn[5]
    Run("C:\Programme\Microsoft Office\Office12\GROOVE.exe")
    Case $msg = $btn[6]
    Run("C:\Programme\Microsoft Office\Office12\ONENOTE.exe")
    Case $msg = $btn[7]
    Run("C:\Programme\Microsoft Office\Office12\MSPUB.exe")
    Case $msg = $btn[8]
    Run("C:\Programme\Microsoft Office\Office12\WINPROJ.exe")
    Case $msg = $btn[9]
    Run("C:\Programme\Microsoft Office\Office12\MSACCESS.exe")
    Case $msg = $btn[10]
    Run("C:\Programme\Microsoft Office\Office12\VISIO.exe")

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

    Case $msg = $btn[25]
    Exit
    EndSelect
    WEnd

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

    EndFunc

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

    #Include <Constants.au3>
    #NoTrayIcon
    Opt("TrayMenuMode",1)

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

    $settingsitem = TrayCreateMenu("Settings")
    $displayitem = TrayCreateItem("Display", $settingsitem)
    $printeritem = TrayCreateItem("Printer", $settingsitem)
    TrayCreateItem("")
    $aboutitem = TrayCreateItem("About")
    TrayCreateItem("")
    $exititem = TrayCreateItem("Exit")

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

    TraySetState()

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

    While 1
    $msg1 = TrayGetMsg()
    Select
    Case $msg1 = 0
    ContinueLoop
    Case $msg1 = $aboutitem
    Msgbox(64,"About:","AutoIt3-Tray-sample")
    Case $msg1 = $exititem
    ExitLoop
    EndSelect
    WEnd

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

    Exit

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit]
  • ja was denn?

    Zitat

    Woran kann es liegen dass ich das generierte Tray Icon nicht sehen kann?

    daran:

    [autoit]

    #NoTrayIcon

    [/autoit]

    oder wollt ihr mich jetzt hier verar**** ?^^

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D

  • [autoit]

    #Include <Constants.au3>
    #NoTrayIcon
    Opt("TrayMenuMode",1)

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

    TraySetIcon("Shell32.dll")
    $settingsitem = TrayCreateMenu("Settings")
    $displayitem = TrayCreateItem("Display", $settingsitem)
    $printeritem = TrayCreateItem("Printer", $settingsitem)
    TrayCreateItem("")
    $aboutitem = TrayCreateItem("About")
    TrayCreateItem("")
    $exititem = TrayCreateItem("Exit")

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

    TraySetState()

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

    While 1
    $msg1 = TrayGetMsg()
    Select
    Case $msg1 = 0
    ContinueLoop
    Case $msg1 = $aboutitem
    Msgbox(64,"About:","AutoIt3-Tray-sample")
    Case $msg1 = $exititem
    ExitLoop
    EndSelect
    WEnd

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

    Exit

    [/autoit]


    Dieser Code

    [autoit]

    TraySetIcon("Shell32.dll")

    [/autoit]

    soll mir aber ein neues Erzeugen....tut es aber nicht :whistling:


  • Bei mir funktioniert dein Script. Es wird ein TrayIcon angezeigt. WinXp Pro SP3

  • ich hab auch Win XP SP3

    was für ein Tray Icon wird denn angezeigt? Das Default AutoIt Button oder ein anderes?

  • EDIT:

    ich hab den Code für das Icon in die While Schleife gepackt, d.h. Das Icon und das TrayIconMenü funktionieren

    allerdings lässt sich die Gui nicht mehr schließen, und auch die ganzen Buttons nicht mehr Bedienen :(

    weiß jemand was da los ist?

    Einmal editiert, zuletzt von MichaelKl (10. Februar 2009 um 13:49)

  • Ohne Skript, schwer zu sagen ...

    So funktioniert es

    Spoiler anzeigen
    [autoit]


    #NoTrayIcon
    #Include <Constants.au3>
    #include <GUIConstantsEX.au3>
    #include <ButtonConstants.au3>
    #include <GUIConstantsEX.au3>
    #include <Misc.au3>

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

    Opt ('MustDeclareVars', 1)
    Opt ("TrayMenuMode", 1)

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

    Global $var = 26
    Global $IDC_TRAYITEM [5] ,$btn[$var], $icn[$var], $ovv[$var], $ping
    Global $sOffice12_Dir = 'C:\Programme\Microsoft Office\Office12'
    Global $asOfficeTools [2][11] = _
    [ ['WINWORD.exe','EXCEL.exe', 'POWERPNT.exe', 'OUTLOOK.exe', 'INFOPATH.exe', 'GROOVE.exe', _
    'ONENOTE.exe', 'MSPUB.exe', 'WINPROJ.exe', 'MSACCESS.exe', 'VISIO.exe'], _
    ['Microsoft Word', 'Microsoft Exel', 'Microsoft PowerPoint', 'Microsoft Outlook', 'Microsoft InfoPath', 'Microsoft Groove', _
    'Microsoft OneNote', 'Microsoft Publisher', 'Microsoft Projekt', 'Microsoft Acces', 'Microsoft Visio'] _
    ]
    ;

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

    ; Only accept one Instance
    if (Not _Singleton ("test", 0)) Then _
    Exit

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

    Office ( )

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

    Func Office ( )

    Local $nMsgGUI, $nMsgTRAY

    If (Not InitGUI ( ) Or Not InitTray ( )) Then _
    Return

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

    While 1

    GUIMsgProc (GUIGetMsg ( ))
    TrayMsgProc (TrayGetMsg ( ))
    WEnd

    Return 0

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

    EndFunc

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

    Func GUIMsgProc ($nMsg)

    ;~ If ($nMsg > 0) Then _
    ;~ ConsoleWrite('GUIMsg = '&$nMsg & @CRLF)
    Switch $nMsg

    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $btn[0] To $btn[10] ; Office
    Run ($sOffice12_Dir &'\'& $asOfficeTools[0][$nMsg - 3])

    Case $btn[25];= 0 !!!!!
    ;Exit

    Case Else
    Return
    EndSwitch

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

    EndFunc

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

    Func TrayMsgProc ($nMsg)

    ;~ ConsoleWrite('TrayMsg = '&$nMsg & @CRLF)
    Switch $nMsg

    Case $IDC_TRAYITEM[3]
    Msgbox (266304, "Über:", "Office Explorer"&@tab)

    Case $IDC_TRAYITEM[4]
    Exit

    Case Else
    Return 1
    EndSwitch

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

    EndFunc

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

    Func InitGUI ( )

    Local $hwnd

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

    $hwnd = GUICreate ("Office Explorer" , 530, 500)

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

    ; Microsoft Office
    For $i = 0 To 10
    $btn[$i] = GUICtrlCreateButton ($asOfficeTools [1][$i], 10, 10 + $i * 30, 200, 30)
    ;~ ConsoleWrite($btn[$i] & @CRLF)
    Next

    For $i = 0 To 10
    $icn[$i] = GUICtrlCreateIcon ($sOffice12_Dir&"\"&$asOfficeTools [0][$i], -1, 230, 15 + $i * 30, 16, 16)
    Next

    GUISetState (@SW_SHOW, $hwnd)

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

    if (not @error) then _
    return 1

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

    EndFunc

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

    Func InitTray ( )

    $IDC_TRAYITEM[0] = TrayCreateMenu ("Einstellungen")
    $IDC_TRAYITEM[1] = TrayCreateItem ("Anzeige", $IDC_TRAYITEM[0])
    $IDC_TRAYITEM[2] = TrayCreateItem ("Drucker", $IDC_TRAYITEM[0])
    TrayCreateItem ("")
    $IDC_TRAYITEM[3] = TrayCreateItem ("Über ...")
    TrayCreateItem ("")
    $IDC_TRAYITEM[4] = TrayCreateItem ("Beenden")

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

    TraySetState ( )

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

    if (not @error) then _
    return 1

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

    EndFunc

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

    ; Skript beenden ...
    Exit

    [/autoit]


    Gruß
    Greenhorn


  • theoretisch müsste es doch auch gehn ein neues Skript zu schreiben das nur ein Tray Icon erstellt, welches dann das andere Skript per Knopf druck auftrufen kann oder?

  • Natürlich.
    Das Problem an deiner neuen Schleife ist (wahrscheinlich) dass du vergessen hast GUIGETMSG() in diese Schleife einzubauen^^