Модератор: BV
Ну, ведь программа не знает какое именно окно убивает юзверь. Так же она не знает, повлечет ли это смерть системы или нет. Я ж не зря, перед убиением окна, MessageBox вывожу с просьбой подтвердить выбор. Да и вообще, программа эта не для широкого круга пользователей, а для узкого (админы да прогеры). Поэтому тем, кто не знает, что можно убивать, а что нельзя лучше её не юзать (во их же благо ).Я про то, что программа не должна убивать все несохраненные данные на компе только потому, что 99% пользователей и еще один не читают хелп
Даю...DirectXManiac писал(а):Twister
Давай!
Выбрал я окно блокнота для убиения (вернее думаю, что выбрал). Нажимаю кнопку "прибить". Тут же вываливается окно "Вы действительно желаете убить процесс, связанный с окном #ххххх" Сколько человек из ста станут сверять указанное окно с только что выбранным окошком блокнота? Естественно желаю, я же только что на это нажал. А про то, что хоть и есть хелп и прога не для таких ламеров, как я - все равно имхо прога не должна убивать винды только потому, что человек хелп не прочитал.Kovu писал(а):vvs_adm
Дык он вроде перед убиением процесса спрашивает убить ли процесс окна "имя окна(класс)"
У меня их ни где нет, потестить не могу.vvs_adm писал(а):P.S.: кстати под 2003 виндами почему-то не работает
Ну ёмое... Зачем столько гимороя? Есть же кнопочка "показать в дереве"...vvs_adm писал(а):По умолчанию при выделении найденного окна в поиске выделять его в дереве. Поставить в настройках возможность вернуться к твоему варианту.
Можно добавить, как говорится, для "особо одаренных"...keks-n писал(а):Надо в msgbox'е ещё и имя процесса писать. Типа "Вы действительно желаете убить процесс *******.exe, связанный с окном #ххххх, и имеющий ID ***"
Тогда увидев, что убивается не NotePad, можно отменить действие.
Ладно, делай как хочешь Я свое мнение высказал - никакая программа не должна убивать винды без сохранения данных (а их может быть и много) из-за "ой, не туда нажал ". А будет твоя это делать или нет - это тебе решать Кстати в XP почему-то пару раз сама вылетела, находясь в "фоновом" режиме.Twister писал(а):Ну ёмое... Зачем столько гимороя? Есть же кнопочка "показать в дереве"...
Я сам так делаю: нашел пачку нужных окон, жму кнопочку "отобразить в дереве", убиваю...
Twister писал(а):Вы все спорите...
vvs_adm, я не вижу другого решения, кроме уже существующего МessageBox-а. Может что подскажешь?
А что, вариант...Kovu писал(а):Если выбрано окна десктопа БОЛЬШИМИ красными буквами написать на десктопе "Нажмите Да чтобы убить винду"
Если ты о WnDViewer, то у меня все нормально. А вот примеры из SDK действительно вылетают с этой ошибкой, причем запущен WnDViewer или нет - разницы никакой.DirectXManiac писал(а):Проблема в том что программа вылетает просто и всё! Пишет Automatization Error...
Visual Studio Debugger писал(а):Unhandled exception at 0x0040456c in WndViewer.exe: 0xC0000005: Access violation reading location 0x45303028.
Disassembly part:
00404554 jne 00404562
00404556 shr ecx,10h
00404559 shr ebx,10h
0040455C cmp cl,bl
0040455E jne 00404562
00404560 cmp ch,bh
00404562 pop edi
00404563 pop esi
00404564 pop ebx
00404565 ret
00404566 mov eax,eax
00404568 test eax,eax
0040456A je 00404576
!-> 0040456C mov edx,dword ptr [eax-8]
0040456F inc edx
00404570 jle 00404576
00404572 lock inc dword ptr [eax-8]
00404576 ret
00404577 nop
00404578 test eax,eax
Кривой сабклассинг дело ребят из Борланда - я юзал только стандартные приемы для "разукрашивания" ListView.При перерисовке ListView мигает. Видимо, из-за слегка кривого сабклассинга.
Да. Это есть. Информация в дереве обновляется динамически, что требует определенных ресурсов. Думаю сделать кнопочку "обновить дерево окон" и добавить опцию "динамическое обновление - да/нет"...После перехода на вкладку "Окна" система начинает ощутимо подтормаживать. Простейший MS Paint открывается за 4 секунды...
И это есть. Опять же, для "вгоняния" иконок юзаю стандартные Дельфовые приемы. Давно уже хотел с этим разобраться, но ни как руки не дойдут...Значки в литвью рисуются неверно, а именно: там, где должен быть альфаблендинг, обнаруживается черный фон.
А это мой косяк - криво нарисовал.У иконки, отображаемой в системной трее, неровные края и белая кайма.
Уже где мог навтыкал обработчиков. У меня вроде не вылетала. Но, видать, придется еще подебажить. Просто "плавающие" глюки очень сложно отлавливать...прога вдруг неожиданно вылетела с классической ошибкой
Спасибо, мне тоже...класс мне нравится
Да я уже давно хотел привинтить такую фичу, но, как уже говорил, руки не доходят. Скорее всего в 1.07 версии прикручу, причем не только для своего окна, а для всех окон верхнего уровня в системе.возможность установить главное окно по верх всех окон.
И да, и нет. Смотря под каким аккаунтом запускается программа. Если есть возможность загрузить драйвер, то он загружается и сам информирует программу о создании и завершении процессов. А если загрузить драйвер нет возможности, то тогда таймер. Я думал сначала перехватывать АПИ создания/завершения процессов в юзермоде, но потом передумал.также, я так понимаю вы используете таймер для обновления списка процессов, хотелосьбы установить личные настройки таймера вроде скорости обновления списка (быстро медленно стандарт)
А разве не удобно? Я, например, часто ей пользуюсь. Хотя бы для приблизительного анализа того, на чем написана какая-либо программа. Да мало ли... Тебе ни когда не было интересно сколько, например, окошек создает проводник (ну и какие создает, конечно...)?Зачем нужна функция "найти все окна процесса", ну нашел я их, точнее программа нашла, а дальше что???
Ну нет. Не соглашусь. Что можно сделать, чтоб не было задержки? Ничего. Можно лишь отображать SplashScreen с ходом загрузки, но, во-первых, это как-то не по дZенски, а во-вторых придется перелопачивать довольно приличный объем кода.Я такое отношу к багам, запускаю программу строится дерево процессов, но не отображается сама форма (кнопки, иконки). Видимость такая будто при загрузке формы происходит запуск левого процесса, и форма, до полного отображения ожидает окончания запуска этого процесса.
Задержка происходит в течении от 10 до 30 сек в зависимости от загруженности системы. То есть если система не выполняет ничего кроме основных своих задач, то задержка 10 сек.
AppName: wndviewer.exe AppVer: 1.0.6.0 ModName: wndviewer.exe
ModVer: 1.0.6.0 Offset: 00001e87
vvs_adm писал(а):Twister, да я не спорю, сам виноват, хелп не прочитал и т.д.
VBTerminator писал(а):Программа очень понравилась, но есть несколько замечаний:...
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7