Häßliches Icon in Infoleiste unten entfernen

  • Hi,
    ich hab ein nützliches Programm SD4Hide.exe mit einem häßlichen Icon ("Totenkopf"). Ein Austausch des Icon mit dem Resourcehacker geht, aber anschließend lässt sich die SD4Hide.exe nicht ausführen.

    Nun wollte ich das Fenster unsichtbar machen und dabei einige Klicks in der SD4Hide .exe ausführen. Alles perfekt. Fenster ist unsichtbar, aber erscheint noch immer mit Totenkopf in der Infoleiste links neben dem Systemtray (, da wo auch die anderen Fenster angezeigt werden, wenn sie existieren).

    Gibt es keine Möglichkeit dieses Icon entweder ganz verschwinden zu lassen oder auszutauschen? Das ganze ist für zwei Zwillinge, deren Mutter sich über das Icon aufregt...

    Im Anhang ist die SD4Hide.exe (bitte SD4Hide.zip in SD4Hide.exe wieder umbenennen) und hier mein bisheriges Skript

    [autoit]

    Run('c:\sd4hide.exe','', @SW_HIDE)
    While WinExists( 'SafeDisc4 Hider', 'Restore') = 0
    Sleep(1500)
    WEnd
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton3', 'left', 1)
    Sleep(1500)
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton2', 'left', 1)
    Sleep(1500)
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton3', 'left', 1)
    Sleep(1500)
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton2', 'left', 1)
    Sleep(1500)
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton3', 'left', 1)
    Sleep(1500)
    WinSetState( 'SafeDisc4 Hider', 'Restore', @SW_SHOW)
    Sleep(1500)
    WinSetState( 'SafeDisc4 Hider', 'Restore', @SW_HIDE)
    Sleep(1500)

    [/autoit]
  • Danke Xenobiologist, das .au3 Skript kann ich mit TrayIconHide im Systemtray verstecken. Ich meine aber nicht den Systemtray /mit der Systemzeit) sondern die Infoleiste zwischen START (ganz links) und dem Systemtray (ganz rechts). Selbst wenn SD4Hide.exe unsichtbar ist erscheint es unten mit Totenkopf wieder. Anscheinend aktiviert ControlClick das Fenster wieder, sodass es wie minimiert angezeigt wird. Gruss Jan.

    PS. Das AutoItskript dessen Icon ich ja frei wählen kann, kann sichtbar sein Nur dieser Totenkopf soll in welcher Form auch immer beim Ausführen von SD4Hide .exe nicht sichtbar sein.

    SD4Hide.exe ist kein kompiliertes AutoItskript, sondern ein Fremdskript, das nicht aus meiner Feder oder vom AutoItForum stammt

    Auch so erscheint es unten in der "Statuszeile vom Desktop"

    [autoit]

    Run('c:\sd4hide.exe','')
    While WinExists( 'SafeDisc4 Hider', 'Restore') = 0
    Sleep(1500)
    WEnd
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton3', 'left', 1)
    Sleep(1500)
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton2', 'left', 1)
    Sleep(1500)
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton3', 'left', 1)
    Sleep(1500)
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton2', 'left', 1)
    Sleep(1500)
    ControlClick ( 'SafeDisc4 Hider', 'Restore', 'TButton3', 'left', 1)
    Sleep(1500)

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

    WinSetState( 'SafeDisc4 Hider', 'Restore', @SW_HIDE)
    Sleep(1500)

    [/autoit]

    2 Mal editiert, zuletzt von janrenzlow (23. Mai 2008 um 15:53)

    • Offizieller Beitrag
    Spoiler anzeigen
    [autoit]

    #include <GuiToolbar.au3>

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

    Opt("WinTitleMatchMode", 4)

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

    Global $TEXT = 'AutoIt Help'

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

    ; Get handle to tray window
    $hTrayWindow = WinGetHandle("[CLASS:Shell_TrayWnd; INSTANCE:1]")
    ConsoleWrite("Debug: $hTrayWindow = " & $hTrayWindow & @LF)

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

    ; Get handle to Toolbar control (taskbar)
    $hTaskBar = ControlGetHandle($hTrayWindow, "", "[CLASS:ToolbarWindow32; INSTANCE:2]")
    ConsoleWrite("Debug: $hTaskBar = " & $hTaskBar & @LF)

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

    ; List the buttons with Index/CommandID/Text
    $iTaskCount = _GUICtrlToolbar_ButtonCount($hTaskBar)
    ConsoleWrite("Debug: $iTaskCount = " & $iTaskCount & @LF)
    For $n = 0 To $iTaskCount - 1
    $iButtonIndex = $n
    $iButtonCommandID = _GUICtrlToolbar_IndexToCommand($hTaskBar, $iButtonIndex)
    $sButtonText = _GUICtrlToolbar_GetButtonText($hTaskBar, $iButtonCommandID)
    If $sButtonText = $TEXT Then _GUICtrlToolbar_HideButton($hTaskBar, $iButtonCommandID, True)
    ConsoleWrite("Debug: Index: " & $iButtonIndex & " Command ID: " & $iButtonCommandID & " Text: " & $sButtonText & @LF)
    Next
    Sleep(3000)
    _GUICtrlToolbar_HideButton($hTaskBar, $iButtonCommandID, False)

    [/autoit]
  • Danke für Deine Mühe, Xenobiologist, Dein Skript listet sämtlich laufende Anwendungen in der Taskbar auf. In der Scite Konsole werden sie bei mir korrekt mit -> angegeben:

    >"D:\Programme\Programmieren\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /run /prod /ErrorStdOut /in "C:\Dokumente und Einstellungen\Johannes\Desktop\komisch.au3" /autoit3dir "D:\Programme\Programmieren\AutoIt3" /UserParams
    +>20:34:39 Starting AutoIt3Wrapper v.1.10.1.7 Environment(Language:0407 Keyboard:00000407 OS:WIN_XP/Service Pack 2 CPU:X86)
    >Running AU3Check (1.54.10.0) from:D:\Programme\Programmieren\AutoIt3
    +>20:34:39 AU3Check ended.rc:0
    >Running:(3.2.10.0):D:\Programme\Programmieren\AutoIt3\autoit3.exe "C:\Dokumente und Einstellungen\Johannes\Desktop\komisch.au3"
    Debug: $hTrayWindow = 0x00030044
    Debug: $hTaskBar = 0x000100E6
    Debug: $iTaskCount = 8
    Debug: Index: 0 Command ID: 9 Text: Firefox
    Debug: Index: 1 Command ID: 10 Text: Neue Antwort erstellen - [ offen ] Häßliches Icon in Infoleiste unten entfernen
    Debug: Index: 2 Command ID: 32 Text: SciTE - a Scintilla based Text Editor modified by Valik & Jos for AutoIt3.
    Debug: Index: 3 Command ID: 33 Text: C:\Dokumente und Einstellungen\Johannes\Desktop\komisch.au3 - SciTE [2 of 2]
    Debug: Index: 4 Command ID: 2 Text: Windows Explorer
    Debug: Index: 5 Command ID: 0 Text: sd4hide11-skl
    Debug: Index: 6 Command ID: 1 Text: sd4hide
    Debug: Index: 7 Command ID: 3 Text: SafeDisc4 Hider
    +>20:34:43 AutoIT3.exe ended.rc:0
    >Exit code: 0 Time: 4.925

    Laufende Anwendungen Firefox, Scite, Explorer mit Ordner sd4hide11-skl, SafeDisc4 Hider.exe

    Doch was nun tun? Debug: Index: 7 Command ID: 3 Text: SafeDisc4 Hider ist das Ding mit dem Totenkopf

    Hab mal eine Screenshot von der Taskleiste in flickr hochgeladen siehe http://www.flickr.com/photos/8064418@N03/2515866455/

  • tausch doch das icon in der Exe aus, wie du es machen wolltest :)
    1) Entpacken der Datei mit UPXShell ( http://upxshell.sourceforge.net/ )
    2) Icon mit Resource Hacker ersetzen
    3) Mit UPXShell wieder verpacken :)

    Hi 'progandy, das war ja mein erster Schritt. ich habe es mit mehreren Iconformaten ausprobiert. Es war aber immer dasselbe. Nach dem Kompilieren mit Resourehacker lässt sich SD4HIDER.EXE nicht mehr starten. Fehlermeldung:

    C:\Dokumente und Einstellungen\Jan\Desktop\sd4hide.exe ist keine zulässige Win32-Anwendung.

    Vor dem Resourcehacker läuft sie jedoch einwandfrei. SD4HIDER.EXE habe ich im ersten Beitrag als Anhang beigefügt. Einfach. .ZIP in .EXE umbenennen. Herzlichst Jan