gifts2017

ConfStat

Опубликовал Андрей Кузнецов (a.kuznetsov) в раздел Программирование - Практика программирования

Иногда бывает полезно посмотреть строку состояния, когда конфигуратор не может ее отобразить))
Реализация: При помощи хука вешает к процессу dll-ку, которая ловит WM_SETTEXT для строки состояния.

Скачать файлы

Наименование Файл Версия Размер
ConfStat v1.0.0.5 360
.1172155234 15,70Kb
25.09.09
360
.1172155234 15,70Kb Бесплатно

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Аркадий Кучер (Abadonna) 21.02.07 14:56
А я вытащил в Форматтер-Переводчик ;)
2. Дмитрий (metaeditor) 21.02.07 15:29
поставте совместимость с Win 2000
3. Дмитрий (metaeditor) 21.02.07 15:39
а для лога перехватывать ?DoMessageLine@CBkEndUI@@UAEXPBDW4MessageMarker@@@Z
4. Валерий (VV) 21.02.07 14:51
>>Прикинь такую ситуацию - запустил я уходя с работы чего-нибудь в Конфигураторе, а утром мне вдруг захотелось посмотреть, что он там сообщал
Автор, сделай, нужная штука!
5. Андрей Кузнецов (a.kuznetsov) 21.02.07 14:54
За +1 спс, лог сделаю.
На счет окна сообщений думал, но пока не нашел способа вытащить от туда строки. Дело в том, что строки в окно добовляются не с помощью API, а какими-то внутренними средствами, поэтому это отследить не просто), по свободе времени подумаю
6. Валерий (VV) 21.02.07 12:52
Полезная штука, но непонятно - куда ее класть, или просто запустить и все?
7. AntonRost (antonrost) 21.02.07 13:03
Просто запустить, и в появившемся окне выбрать нужный конфигуратор (из запущенных).
8. Валерий (VV) 21.02.07 13:31
Угу, разобрался. Сделал в ГМ движение - поставил пробел и стер его. Сохранить - о чудо - в окошке все красиво. А потом - конфигуратор уже все сохранил, а в окошке - "Сохранение данных...". Так и не обновилось. Или отлавливает только события, а выход из них - нет?
9. Андрей Кузнецов (a.kuznetsov) 21.02.07 14:07
DLL-ка подменяет оконную процедуру для строки состояния, в которой ловит все сообщения WM_SETTEXT, как только в строке состояния появляется новый текст он тут же отражается и в окошке
10. Аркадий Кучер (Abadonna) 21.02.07 14:11
Люблю, когда hook, поэтому +1 ;)
Не совсем понял зачем ловить строку состояния, если она в 99.99% кажет
"Для получения подсказки нажмите F1".
И желательно результат не Edit выводить, а в Memo добавлением туда строчек, а то Stat как раз и не получается, всегда последнее светится.
А вот приделал бы еще и текст в окне сообщений Конфигуратора - было круто!
11. AntonRost (antonrost) 21.02.07 14:18
Наверное, никогда не делал реструктуризацию или тест/испр в больших базах? В этом случае, если окно конфигуратора потеряло фокус, строка состояния перестает обновляться.
12. Аркадий Кучер (Abadonna) 21.02.07 14:25
Исправления в базах не делал ввиду того, что не доводил базы до необходимости их исправления средствами 1С. На крайняк еще Enterprise Manager есть.
А без истории строки состояния ценность разработки снижается
13. Андрей Кузнецов (a.kuznetsov) 21.02.07 14:31
Строку состояния - потому что у конфигуратора семерки есть неприятная черта - если при выполнении им какой-то задачи окно теряет фокус, то оно перестает обновлятся и невидно чем он щас занят. А на счет мемо смысла нет, как раз только текущее состояние и нужно видить, и представь, глянув на изображение, сколько строчек бы было в мемо))
14. Валерий (VV) 21.02.07 14:35
Ни фига не снижается ценность. И не обязательно "доводить базу" до чего-то, достаточно в спр.Номенклатура, в котором 30 000 элементов добавить новый реквизит и нажать "Сохранить".
Но монитор окна сообщений - не помешала бы!
15. Аркадий Кучер (Abadonna) 21.02.07 14:36
>сколько строчек бы было в мемо))
А ты выводи последнюю всегда вверх, тогда текущее будет видно сразу, а при желании можно
и другие посмотреть. А можно еще писать в лог-файл, добавляя время.
Прикинь такую ситуацию - запустил я уходя с работы чего-нибудь в Конфигураторе, а утром мне вдруг захотелось посмотреть, что он там сообщал. Проблем-то приделать уже никаких, как мне кажется...
16. Аркадий Кучер (Abadonna) 21.02.07 14:47
>Ни фига не снижается ценность
Я ж не сказал, что обработка НЕ ценная, и +1 поставил.
Просто с логом еще ценнее бы была
17. Аркадий Кучер (Abadonna) 21.02.07 16:29
Похоже, что в окно сообщений посылается
WM_SETMESSAGESTRING
LParam - Pointer to string
18. Андрей Кузнецов (a.kuznetsov) 21.02.07 16:31
19. Андрей Кузнецов (a.kuznetsov) 21.02.07 16:34
На счет DoMessageLine, я пока знаю только один способ перехвата вызова функции DLL - это подмена этой функции в DLL. А этого не хотелось бы делать.
20. oding 22.02.07 08:39
ващето есть перехватылвалка окна сообщений, 1spy.dll ее зовут.
21. йцук 22.02.07 14:32
не понял, выдает только заголовок окна, а где строка состояния?? (при объединении и переиндексации)
22. AntonRost (antonrost) 22.02.07 14:45
Это список открытых конфигураторов. Надо выделить нужный.
23. Андрей Кузнецов (a.kuznetsov) 22.02.07 15:16
Обнаружен небольшой баг - если открыть конфигуратор после запуска программы, то через небольшой промежуток времени перестает обновляться информация о строке состояния. В ближайшее время баг будет исправлен, а пока рекомендуется запускать утилитку после запуска конфигуратора!
24. Андрей Кузнецов (a.kuznetsov) 22.02.07 17:41
Баг с обновлением информации о строке состояния исправлен v1.0.0.2
25. VasilyKushnir (vasilykushnir) 26.02.07 12:20
26. Андрей Кузнецов (a.kuznetsov) 06.06.07 14:19
v1.0.0.3 Добавлена возможность перехватывать строку статуса в режиме 1С:Предприятие, а также перехватывать стартовое (SPLASH_WINDOW) окно при запуске 1С.
27. Владислав Чинючин (vcv) 07.06.07 06:11
А можно что-то сделать, что бы эта программа работала и для патченной 1С, у которой убрано "1С:Предприятие" из заголовка окна?
28. vikM (vikm) 07.06.07 09:20
29. Андрей Кузнецов (a.kuznetsov) 07.06.07 10:39
v1.0.0.4 Добавлена возможность перехвата окон, в заголовке которых нет слов «Конфигуратор» и «1С:Предприятие». Временно заблокирована возможность перехвата текста из стартового окна 1С, но вывод заголовка этого окна в список окон остался.
30. Валерий (VV) 07.06.07 11:13
31. Андрей Кузнецов (a.kuznetsov) 07.06.07 12:15
Нет, не вижу смысла, да и у Абадонны есть с логом)
32. Владислав Чинючин (vcv) 08.06.07 05:56
>>> v1.0.0.4 Добавлена возможность перехвата окон, в заголовке которых нет слов «Конфигуратор» и «1С:Предприятие».
Спасибо. А можно еще пожелать возможность закрепления окна "поверх всех"? И окно можно было бы изменяемого размера сделать.
33. Андрей Кузнецов (a.kuznetsov) 08.06.07 07:52
Сделал поверх всех окон.
34. kitt al;dskjf;ldasjkf (kitt) 10.09.08 16:58
почему то не работает в режиме Предприятия((
ВинХР, платформа 26
35. Андрей Кузнецов (a.kuznetsov) 10.09.08 17:07
Только что проверил, на 26 работает.
Поконкретнее пожалуйста...
36. Алексей Плутенко (Noy) 20.11.08 10:05
Полезнейшая вешь. и как это я ее пропустил...
37. eremin (mybracho) 11.10.11 17:29
Крутейшая вещь. Пользуюсь полгода, мне полегчало

Но.... вот только что запустил загрузку бэкапов за три даты(Выгрузки по 150мегабайт). И при одновременной загрузке этих трех баз, молчит ConfStat
38. kaa79 29.12.11 13:24
Спасибо большое, очень полезная вещь при тестировании и исправлении больших баз на 7.7
39. pavel kuzmichev (p_kuzmichev) 18.09.13 15:10
Чего то не с первого раза, но заработала. Спасибо, очень пригодилась при выполнении ТиИ перед переходом.
40. Склонный Павел (Musics) 15.02.16 12:36
Скачивается версия 1.0.0.4 (
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа