Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Получение значения переменных на всех уровнях стека.
|
|||
|---|---|---|---|
|
#18+
Кто-нибудь пользовался запросом %Debugger.Stack:StackVarAtLevel? У меня никак не получается заставить его выполниться. Также не понял что именно надо отдавать ему в качестве первого параметра. Идея такая: при возникновении ошибки в приложении фиксировать в специальном хранилище значения всех переменных на всех уровнях стека. Собственно с извлечением переменных и имеется проблема... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2008, 14:10 |
|
||
|
Получение значения переменных на всех уровнях стека.
|
|||
|---|---|---|---|
|
#18+
Когда-то писАл нечто подобное, но сохранились лишь обрывки... Давно уже пользуюсь вызовом Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2008, 17:15 |
|
||
|
Получение значения переменных на всех уровнях стека.
|
|||
|---|---|---|---|
|
#18+
CJIECAPb... Также не понял что именно надо отдавать ему в качестве первого параметра. Идея такая: при возникновении ошибки в приложении фиксировать в специальном хранилище значения всех переменных на всех уровнях стека. Собственно с извлечением переменных и имеется проблема... Как я понял, в %Debugger.Stack:StackVarAtLevel передается DebId: Код: plaintext 1. 2. 3. 4. 5. 6. Можно еще так: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2008, 18:57 |
|
||
|
Получение значения переменных на всех уровнях стека.
|
|||
|---|---|---|---|
|
#18+
После анализа исходников ^%STACK написал небольшую программку: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. Собственно всё получилось - после выполнения, в переменной, имя которой передан туда как параметр, содержится вся информация о всех уровнях стека, включая дампы переменных и объектов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2008, 09:53 |
|
||
|
Получение значения переменных на всех уровнях стека.
|
|||
|---|---|---|---|
|
#18+
Zer gut. Однако, не зря исходная утилита все складывает в глобал: если оперативка (partition space for the process) заполнена под завязку, едва ли вы сможете сделать дамп в локальную переменную... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2008, 11:50 |
|
||
|
Получение значения переменных на всех уровнях стека.
|
|||
|---|---|---|---|
|
#18+
В данном случае, начиная с версии 5.2, наверное, лучше подойдет использование Process-Private Globals ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2008, 12:44 |
|
||
|
|

start [/forum/topic.php?fid=39&fpage=67&tid=1558757]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
30ms |
get tp. blocked users: |
2ms |
| others: | 241ms |
| total: | 364ms |

| 0 / 0 |
