Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Скрыть значок в системном трее

Автор: NikTychina
Дата сообщения: 19.05.2008 15:15
Подскажите, пожалуйста, как можно убрать из системного трея определённый значок?
"Скрывать неиспользуемые значки", пжл, не предлагайте, ибо это не решение.
Автор: urmigar
Дата сообщения: 19.05.2008 17:27
NikTychina
Юзай альт. проги типа PSTrayFactory
Автор: 4kusnik
Дата сообщения: 19.05.2008 18:50
А с помощью реестра можно?
Автор: NikTychina
Дата сообщения: 19.05.2008 19:49
Вот, мне тоже интересно, можно ли средствами винды?
Автор: DanilPo
Дата сообщения: 19.05.2008 20:12
Все довольно просто. ПКМ по меню "Пуск" -> Свойства -> вкладка "Панель задач" -> кн. "Настроить". В столбце "Имя" выбрать нужный значок, в столбце "Поведение" напротив его выбрать в раскрывающемся списке "Всегда скрывать". А больше средствами ОС Windows никак. Только сторонние программы
Автор: NikTychina
Дата сообщения: 20.05.2008 17:07
> "Скрывать неиспользуемые значки", пжл, не предлагайте, ибо это не решение.

так не надо.

>А больше средствами ОС Windows никак. Только сторонние программы

мб кто-нить еще предложит способ...
Автор: urmigar
Дата сообщения: 23.05.2008 17:26

Цитата:
мб кто-нить еще предложит способ...


Дак как ещё-то способ? Если средствами Винды не нужно, стороние не нравятся... Больше нет вариантов.
Автор: flopkiller
Дата сообщения: 23.05.2008 17:49
Пуск->выполнить->msconfig вкладка автозагрузка убираешь галки с прог которые не нужны-> радуешься жизни
Автор: urmigar
Дата сообщения: 23.05.2008 19:59
NikTychina

М-да... Я был не прав, уважаемый flopkiller подсказал ещё одну идею)
Автор: NikTychina
Дата сообщения: 24.05.2008 22:05
М-да. Мне нужно сохранить работоспособность программ

>Если средствами Винды не нужно, стороние не нравятся...

Мне нравятся сторонние, если они опен-сорс, или провернные. А не варез к-то....
И то средство винды, которое здесь было предложено, НЕ УСТРАИВАЕТ. А не не нравится..
Автор: xeroxman
Дата сообщения: 24.05.2008 22:49
NikTychina
А что хоть за значек, просто многие программы в собственных настройках имеют вариант "Не отображать значек в системной области".
Автор: NikTychina
Дата сообщения: 25.05.2008 22:04
Да BitLord. Хоть я его уже и снёс, в µTorrent такая же проблема.. =)
В настройках не было.
Автор: Nikkolo
Дата сообщения: 31.05.2008 17:58
XP дуркует - ставишь спрятать, а они появляются.
Как бы руками (в реестре может быть?) - чтобы 100%?
Автор: NikTychina
Дата сообщения: 31.05.2008 18:21
Вот-вот. Все значки убрать можно, а по отдельности.... ?
Автор: graydevil
Дата сообщения: 10.06.2008 14:09
Послать сообшение процессу WINDOWS_HIDE че то типа тем же nncron
Автор: Z4masko
Дата сообщения: 13.11.2008 20:06
graydevil
Можно пожалуйста поподробнее?
У меня напримре есть программа которая запускается сама автоматом при старте системы с помощью Сервиса и сворачивается в трей.
Как мне с помощью nncron заставить её исчезнуть из трея?
Автор: gorinval
Дата сообщения: 13.11.2008 20:18
Почистить список иконок - раздел HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\TrayNotify и удалить параметры IconStreans и PastIconsStream
После этого следует:
1) Открыть Деспечер задач сочетанием клавиш "Ctrl"+"Alt"+"Delit"
2) Перейдите на вкладку процессы, выделите процесс Explorer.exe и нажмите кнопку Завершить процесс
3) В окне Диспечера задач в меню Фаил выбирите Новая задача(Выполнить...), ввести с клавиотуры explorer и нажать Enter
Автор: kolek2007
Дата сообщения: 05.03.2009 09:29
Программа, которая это может, называется "Easy Window and System Tray Icons Hider v1.20.0". Здесь она есть http://www.kopona.net/soft/7664-easy-window-and-system-tray-icons-hider.html
Автор: bioann
Дата сообщения: 04.03.2010 00:22
uTorrent:
Настройки >> Общие >> Boss-Key >> Нажимаем любое сочетание клавиш >> Сохраняем (клик на "применить") и закрываем настрйоки >> Нажимаем это сочетание клавиш и uTorrent только в процессах
Автор: ierirhon
Дата сообщения: 22.07.2010 13:52
Есть хорошая утилита командной строки, которую величают cmdow. Сам не пробовал, но может ей можно приспособить значки в трее на свой умысел. Теоретически возможно, если знать адрес значка в трее.
Автор: atimur81
Дата сообщения: 18.11.2011 16:59
у меня цель такая: не хочу чтобы в трее отображались значки программ Radmin и Hamachi. причем никогда! как это сделать? кто знает?
Автор: doktorpilulkin
Дата сообщения: 19.11.2011 01:13
какие то трей менеджеры попадались, но из за ненадобности никогда не пользовался. спрятать иконку не сложно. только никакие nnncron-ы не помогут. иконка это не окно, это кнопка на панели задач. написать программку не очень сложно, примеры есть в инете. нужно получить доступ к процессу експлорера, получить хендл експлорера, потомпанели задач, потом трея, потом получить список всех иконок в трее, найти нужную и послать ей NIM_DELETE. без перезагрузки експлорера программы врядли проверяют что с их иконкой, если выводят в трее сообщения что угодно может быть. попросить можно в теме Си например. я бы мог да лень. будет настроение сяду может быть

проще вообще трей убрать или панель задач

Добавлено:
http://forum.ru-board.com/topic.cgi?forum=33&bm=1&topic=3174&start=3800#lt

вот тема СИ если кто то как раз с треем возится может сделать. можно на другом форуме счастья попытать, или с другим языком - дельфи каким нибудь

Добавлено:
http://rouse.drkb.ru/winapi.php#fwsystrayinfo
вот работающий пример на паскале только его компилить надо. я до "найти иконку" дошел, а вот как ее удалить не знаю пока, грохнул себе весь трей

Добавлено:
ура сделал!!!!!!!!!!!!!
http://zalil.ru/32088071
командным параметром передаешь заголовок главного окна программы иконку которого надо удалить из трея.
ICON.EXE µTorrent 2.0.4
на муторенте проверял

после перезагрузки експлорера в трее появляется сразу две иконки. я иконку скрыл а не удалил. надо все таки разбираться как ее удалить

http://zalil.ru/32088073
вот эта удаляет а не скрывает иконку. после перезагрузки експлорера одна только иконка появляется

чтоб вообще не появлялась это наверно надо хукнуть експлорер, а может просто зарегистрировать сообщение о выводе иконки как общее. но все ранво скрывающая программа должна все время быть запущена

http://zalil.ru/32088092
вот ета еще лучше удаляет, трей обновляется сам

Добавлено:
вообщем удалить чужую иконку из трея вообще проще пареной репы ниче не надо искать ни доступ получать. просто посылаешь любой иконке сообщение удалиться она и удаляется


Цитата:

;===============================================================
;===============================================================
;===============================================================

    .386
    .model flat,stdcall
    option casemap:none

;===============================================================

    include \masm32\include\windows.inc

    include \masm32\include\user32.inc
    include \masm32\include\kernel32.inc
    include \masm32\include\shell32.inc

    includelib \masm32\lib\user32.lib
    includelib \masm32\lib\kernel32.lib
    includelib \masm32\lib\shell32.lib

;===============================================================

.data

MyFile            db "µTorrent 2.0.4",0

.data?
note            NOTIFYICONDATA <>

.code
start:
    invoke FindWindow,0,ADDR MyFile
    mov note.hwnd, eax
    mov note.cbSize,sizeof NOTIFYICONDATA
    invoke Shell_NotifyIcon,NIM_DELETE,addr note

;===============================================================

    invoke    ExitProcess,0

end start

;===============================================================
;===============================================================
;===============================================================
Автор: doktorpilulkin
Дата сообщения: 20.11.2011 12:27
попробовал сделать для удаления иконки по имени процесса из интересу, может пригодится кому то готовый код. тут некоторая проблема что окон верхнего уровня несколько, но и иконок в принципе может быть не одна, проверку на иконки уже лень делать да они и смысла не имеет - и так работает.
http://www.masm32.com/ - компилятор

Цитата:

;===============================================================
;===============================================================
;===============================================================

    .386
    .model flat,stdcall
    option casemap:none

;===============================================================

    include \masm32\include\windows.inc

    include \masm32\include\user32.inc
    include \masm32\include\kernel32.inc
    include \masm32\include\shell32.inc

    includelib \masm32\lib\user32.lib
    includelib \masm32\lib\kernel32.lib
    includelib \masm32\lib\shell32.lib

;===============================================================

EnumWind        PROTO WORD,:DWORD

.data
MyFile            db "utorrent.exe",0

.data?
note            NOTIFYICONDATA <>
hSnapshot        HANDLE ?
ProcEntry        PROCESSENTRY32 <>
LParam            dd ?
ProcId            dd ?
;buffer            db 512 dup (?)

.code
start:

    invoke CreateToolhelp32Snapshot, TH32CS_SNAPPROCESS, 0
    .IF eax != INVALID_HANDLE_VALUE
    mov hSnapshot,eax
    mov ProcEntry.dwSize,SIZEOF ProcEntry
    invoke Process32First, hSnapshot,addr ProcEntry
    .IF eax
@@:
    invoke lstrcmpi, addr MyFile, addr ProcEntry.szExeFile
    test eax,eax
    jz @F
    invoke Process32Next, hSnapshot,addr ProcEntry
    test eax,eax
    jnz @B
    invoke CloseHandle, hSnapshot
    .ENDIF
    .ENDIF
    invoke    ExitProcess,0
@@:
    invoke EnumWindows, addr EnumWind, addr LParam

;===============================================================

    invoke    ExitProcess,0

    EnumWind proc hwndWind:DWORD,lParam:DWORD
    invoke GetWindowThreadProcessId,hwndWind,addr ProcId
    mov eax, ProcId
    .if ProcEntry.th32ProcessID==eax
    mov eax, hwndWind
    mov note.hwnd, eax
    mov note.cbSize,sizeof NOTIFYICONDATA
    invoke Shell_NotifyIcon,NIM_DELETE,addr note
    ;invoke GetWindowText, hwndWind, addr buffer, 512
    ;invoke MessageBox,0,addr buffer,0,0
    ;invoke MessageBox,0,addr ProcEntry.szExeFile,0,0
    .endif
    mov eax, 1
    ret

    EnumWind endp

end start

;===============================================================
;===============================================================
;===============================================================


Добавлено:
вот как было проще сделать - перебрать все иконки в трее, и каждую проверить на имя процесса ее создавшего - если имя совпадает удалить. потом как нибудь сделаю

Добавлено:
http://zalil.ru/32096494
вот так и сделал, командным параметром передается имя процесса, определяется его ID, потом создается список иконок трея и у каждого проверяется ID владельца иконки - если совпадает то иконка удаляется.
Автор: kaspol
Дата сообщения: 26.04.2012 04:29

Цитата:
ура сделал!!!!!!!!!!!!!
http://zalil.ru/32088071
командным параметром передаешь заголовок главного окна программы иконку которого надо удалить из трея.
ICON.EXE µTorrent 2.0.4
на муторенте проверял

после перезагрузки експлорера в трее появляется сразу две иконки. я иконку скрыл а не удалил. надо все таки разбираться как ее удалить

http://zalil.ru/32088073
вот эта удаляет а не скрывает иконку. после перезагрузки експлорера одна только иконка появляется

чтоб вообще не появлялась это наверно надо хукнуть експлорер, а может просто зарегистрировать сообщение о выводе иконки как общее. но все ранво скрывающая программа должна все время быть запущена

http://zalil.ru/32088092
вот ета еще лучше удаляет, трей обновляется сам


А можете перезалить эти программки куда-нибудь в другое место? А то очень нужны, но там их уже нет...
Автор: rem0_k
Дата сообщения: 21.02.2013 12:28
перезалейте плыз
Автор: diman123123
Дата сообщения: 22.08.2015 20:42
попробуйте прогу Application as Service

тока ее и саму прятать надо.
Автор: bomzzz
Дата сообщения: 23.08.2015 12:49
а у меня второй ник забанили. надо было в теме ассемблера попросить, или чтоб теме Си подсказали как скомпилить. хорошо код сохранился.
куда бы я сейчас не залил рано или поздно файл удалится. вот сайта масма
http://www.masm32.com/
вот тема ассемблера
http://forum.ru-board.com/topic.cgi?forum=33&bm=1&topic=7682&start=2420#lt
установить масм просто - как обычную программу. компилится таким батником

Цитата:
@echo off
color 0a
cd %~dp1
C:\masm32\bin\ml.exe /c /coff "%~1"
C:\masm32\bin\link.exe /subsystem:windows "%~n1.obj"
del "%~n1.obj"
pause

файл с кодом программы перетягиваешь на батник мышкой.

сейчас сам разберусь что тут понаделал скомпилю

Добавлено:
наверно получилось то что надо. работает. но я полтора года уже ничего на масме не писал, не факт что все корректно. почему то у себя не сохранил текст программы. имя процесса передается программе командным параметром. проверял на уторенте иконка из трея исчезает


Цитата:
трей обновляется сам

вот это в упор не могу вспомнить что означает. еще на форуме есть где то тема с программой скрывающей и показывающей окно программы. чтоб качать торренты на работе

[more];===============================================================
;===============================================================
;===============================================================

    .386
    .model flat,stdcall
    option casemap:none

;===============================================================

    include \masm32\include\windows.inc

    include \masm32\include\user32.inc
    include \masm32\include\kernel32.inc
    include \masm32\include\shell32.inc

    includelib \masm32\lib\user32.lib
    includelib \masm32\lib\kernel32.lib
    includelib \masm32\lib\shell32.lib

;===============================================================

EnumWind        PROTO :DWORD,:DWORD

.data
;MyFile            db "utorrent.exe",0

.data?
note            NOTIFYICONDATA <>
hSnapshot        HANDLE ?
ProcEntry        PROCESSENTRY32 <>
LParam            dd ?
ProcId            dd ?
;buffer            db 512 dup (?)

.code
start:

    invoke GetCommandLine
    mov bl, ' '
    mov ecx, 1
    cmp byte ptr[eax],'"'
    jne @F
    inc eax
    mov bl, '"'
    mov ecx, 2
@@:
    cmp byte ptr[eax],bl
    je @F
    cmp byte ptr[eax],0
    jz found1
    inc eax
    jmp short @B
found1:
    inc eax
@@:
    add eax, ecx
    cmp byte ptr [eax], ' '
    jne No_Shell
    inc eax
No_Shell:
    cmp byte ptr[eax],0
    jz NoParam
    mov ebx, eax
    ;invoke MessageBox,0,ebx,NULL, MB_OK + MB_ICONASTERISK
    ;invoke    ExitProcess,0
    invoke CreateToolhelp32Snapshot, TH32CS_SNAPPROCESS, 0
    .IF eax != INVALID_HANDLE_VALUE
    mov hSnapshot,eax
    mov ProcEntry.dwSize,SIZEOF ProcEntry
    invoke Process32First, hSnapshot,addr ProcEntry
    .IF eax
@@:
    invoke lstrcmpi, ebx, addr ProcEntry.szExeFile
    test eax,eax
    jz @F
    invoke Process32Next, hSnapshot,addr ProcEntry
    test eax,eax
    jnz @B
    invoke CloseHandle, hSnapshot
    .ENDIF
    .ENDIF
NoParam:
    invoke    ExitProcess,0
@@:
    invoke EnumWindows, addr EnumWind, addr LParam

;===============================================================

    invoke    ExitProcess,0

    EnumWind proc hwndWind:DWORD,lParam:DWORD
    invoke GetWindowThreadProcessId,hwndWind,addr ProcId
    mov eax, ProcId
    .if ProcEntry.th32ProcessID==eax
    mov eax, hwndWind
    mov note.hwnd, eax
    mov note.cbSize,sizeof NOTIFYICONDATA
    invoke Shell_NotifyIcon,NIM_DELETE,addr note
    ;invoke GetWindowText, hwndWind, addr buffer, 512
    ;invoke MessageBox,0,addr buffer,0,0
    ;invoke MessageBox,0,addr ProcEntry.szExeFile,0,0
    .endif
    mov eax, 1
    ret

    EnumWind endp

end start

;===============================================================
;===============================================================
;===============================================================[/more]

https://cloud.mail.ru/public/DDEw/DfAkzxcsD

Добавлено:
еще фигня такая, не забывайте такой коленкор - я уторрент свернул в трей и убрал иконку. а как его то вытащить назад? пришлось процесс прибивать в диспетчере, а потом для опытов использовать программку для делания окна видимым




вот это мой персональный макроассемблер с расширенными библиотеками создан большой группой авторов, так что можно полноценные драйвера писать, и как пример консоль нативного режима с драйвером для windows xp. там все батники для компиляции любых программ в любых режимах, в том числе драйверов есть внутри.
masm.zip 16,0 МБ (16 868 872 байт)

Страницы: 1

Предыдущая тема: Перезагрузка компьютера


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.