powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Убрать значок из трея
13 сообщений из 113, страница 5 из 5
Убрать значок из трея
    #37294686
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtim,

это сложновато... предложенный выше способ не работает разве?..
я не знаю, какой функцией узнать айди каждой иконки а потом по айди узнать имя процесса(
+ это не поможет, т.к. нужно скрыть одно из двух одинаковых окон и процессы у них одинаковые
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294689
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поискал по другим сайтам - везде застряли на этой теме. на одном из языков, правда, решили проблему, но, как говорит автор кода, работает только под ХР
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294690
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

Короче, если у тебя будет желание что то сделать самому то сделаешь.
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294697
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtim,

тада последний вопрос в этом топике: как удалить 13 иконку? подставил
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Dim ret As Long
    ret = FindWindow("Shell_TrayWnd", "")
    ret = FindWindowEx(ret,  0 , "TrayNotifyWnd", vbNullString)
    ret = FindWindowEx(ret,  0 , "SysPager", vbNullString)
    ret = FindWindowEx(ret,  0 , "ToolbarWindow32", vbNullString)
    ret = SendMessage(ret, TB_BUTTONCOUNT,  0 ,  0 )
    Text1.Text = ret
    ret = SendMessage(ret, TB_DELETEBUTTON,  13 ,  0 )
ничего не происходит
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294703
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

У тя 13 иконок, от 0 до 12.
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294706
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtim,

если кикать 1 иконку или 12 всё ранво ничего не происходит и их остаётся 13. трей даже не шелохнулся)
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294710
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

эта константа TB_DELETEBUTTON определена у тебя?
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294714
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
    (ByVal hWnd As Long, _
     ByVal wMsg As Long, _
     ByVal wParam As Long, _
     ByRef lParam As Any) _
    As Long
    Private Const WM_USER = &H400
    Private Const TB_BUTTONCOUNT = (WM_USER +  24 )
    Private Const TB_DELETEBUTTON = (WM_USER +  22 )
Private Sub Form_Load()
Dim ret As Long
    ret = FindWindow("Shell_TrayWnd", "")
    ret = FindWindowEx(ret,  0 , "TrayNotifyWnd", vbNullString)
    ret = FindWindowEx(ret,  0 , "SysPager", vbNullString)
    ret = FindWindowEx(ret,  0 , "ToolbarWindow32", vbNullString)
    ret = SendMessage(ret, TB_BUTTONCOUNT,  0 ,  0 )
    Text1.Text = ret
    ret = SendMessage(ret, TB_DELETEBUTTON,  1 ,  0 )
End Sub

никак..
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294717
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

А иконка и не должна удалиться при таком раскладе.
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294721
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtim,

получилось, но теперь иконки убиваются хаотически независимо от номера(
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294724
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя... возможно, что последняя добавленная иконка получает номер 0. надо будет это проверить. либо нет никакой связи между номером и порядком запуска. я убил иконку, убив перед этим все остальные иконки до одной)
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37294774
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtim,

cпс за помощь.
в моём случае узнавать айди проги для имени процесса не обязательно(даже не нужно), можно просто убить нулевой ярлык(я проверил, если в трее 100 ярлыков, тот, который добавился в трей первым, имеет номер 99, последний добавленный - 0). правда, любое изменение на компе, и всё рухнет... авось ещё никогда не подводил) Значит, этот топик первый, в котором удалось удалить значок чужой проги из трея) p/s тим, номер яда?
...
Рейтинг: 0 / 0
Убрать значок из трея
    #37295514
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,

итого, топик длинный легче снова спросить - есть код, перечисляющий все иконки находящиеся в трее?? Выложите пжл
...
Рейтинг: 0 / 0
13 сообщений из 113, страница 5 из 5
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Убрать значок из трея
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]