PDA

Показать полную графическую версию : Странные глюки VB6


krapar
24-02-2006, 20:24
В процессе написания программы стали вылетать ошибки на кусках кода которые длительное время прекрасно работали, например безо всякой причины VB начал матюгался на Else что тот мол стоит вне блока If...End If. Побился немного и .... переделал все условия на Select Case вроде-бы помогло(просьба не смеятся, а то меня уже трясет). Далее погонял прогу в режиме отладки все ОК. Компилирую, ехе-шник прекрасно работает. Через день добавил еще пару мелочей (две кнопки) проверяю в режиме отладки - прога отказывается работать! VB ругается на строку:
бцобмер.Text = Format(значение(h, номер_строки), ".00") - говорит Type mismatch.
но она до этого работала! в вызываемую функцию я вобще не лазил.
У меня два варианта то ли система у меня глючит (XP Prof) то ли беда в том что я кириллицу использую в написании кода(слышал что могут возникнуть проблемы, но раньше их небыло). Что можете посоветовать?

CollisionNeoN
25-02-2006, 11:01
Скорее всего проблема в том что у тебя утечка памяти.
Откомпилируй свою программу и запусти.
Открой Менеджер задач, Процессы. Выбери в меню Вид - Настройка Колонок, и отметь колонку "GDI обьекты". Посмотри значение у своей программы, если оно постоянно увеличиватеся либо обьем памяти увеличиватеся, значит точно утечка памяти.
Судя по названию Текстового окна ты игрушку пишешь, и наверняка у тебя есть функции типа BitBlt, SelectObject и т.п. Так вот надо удалять все обьекты после использования, Апи функцией - DeleteObject.
А код что ты уже переделал можно вернуть к первоначальному.

Если будут вопросы стучи в аську 193232867 либо на ирц irc.icqinfo.ru #coding

Pliomera
26-02-2006, 10:30
то ли беда в том что я кириллицу использую в написании кода
Отож. Беда с этой кириллицей в VB. Еще какая. Попробуй ради прикола скопировать русский текст из редактора VB и вставить хотя-б в сообщение на этом форуме. Там с кодировочками маалость напутано :)

XPurple
19-04-2006, 12:11
If...End If
Тоже такое наблюдал, привел к виду:

if условие then
operator-со-следующей-строки
elseif условие then
operator-со-следующей-строки
else
operator-со-следующей-строки
end if

Усе работает




© OSzone.net 2001-2012