forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   BlitzMax (http://forum.boolean.name/forumdisplay.php?f=104)
-   -   @#$X - "Плохой" blitzmax (http://forum.boolean.name/showthread.php?t=5922)

jimon 17.04.2008 21:28

@#$X - "Плохой" blitzmax
 
1) пишем приложение содержащуё ошибку в процессе выполнения
2) лишаем ето приложение каких либо графических елементов и окон
3) билдим в exe с настройками : без дебага, графическое приложение
4) запускаем и видим как ring3 в системе повис ...
при этом приложение наткнувшись на ошибку забирает себе все ресурсы и течет память

как лечить ?

код 1:
Код:

SuperStrict

Framework brl.basic

Type A
        Field test%
End Type

Global t1:A = New A
Global t2:A = Null 'error

While 1
        t1.test = 1
        t2.test = 2
Wend

End

код 2
Код:

SuperStrict

Framework brl.basic

Type A
        Field test%
End Type

Global t1:A = New A
Global t2:A = Null 'error

Try
        While 1
                t1.test = 1
                t2.test = 2
        Wend
Catch Error:Object
        End
EndTry

End

код 1 и код 2, запущенные без дебага, вешают ring3 в системе (уровень приложений в винде)

dimanche13 18.04.2008 00:02

Ответ: @#$X - "Плохой" blitzmax
 
Код:

SuperStrict

Type A
        Field test%
End Type

Global t1:A = New A
Global t2:A = Null 'error

While Not KeyHit(key_ESCAPE)
        t1.test = 1
        t2.test = 2
        Print GCMemAlloced()
Wend

End

С дебагом не компилится, а без дебага ничего не вешает.

moka 18.04.2008 12:24

Ответ: @#$X - "Плохой" blitzmax
 
dimanche13, разве инпут будет работать, он ведь привязан к окну?

jimon 18.04.2008 14:44

Ответ: @#$X - "Плохой" blitzmax
 
собсно вопрос : как перехватывать ошибки в таком случае
а еще : как создать консольное окно из бм и направить туда поток ошибок ?
(нужно только для win32)


Часовой пояс GMT +4, время: 21:20.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot