Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Меняется код в методах, куда копать?  [new]
walking_ua
Member

Откуда:
Сообщений: 62
Добрый день
уже не первый раз сталкиваюсь с проблемой что после ошибки в форме где произошла ошибка код в методах перепутать.
т.е. код из Инита находится в Дестрое, код из дестроя в ините, код из лоад может быть в ресайзе.
это при условии что в этих методах тоже есть код.
честно слово уже заманахался, подскажите как от этого избавиться?
тока не говорите не делать ошибок, а то я за себя не ручаюсь, накипело уже.
спасибо.
29 июн 13, 15:20    [14500470]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
alextashk
Member

Откуда:
Сообщений: 431
walking_ua,

В первый раз такое слышу.
Но следует знать, что файлы формы - это таблица.
Можно открыть их через USE и дать команду PACK
30 июн 13, 06:09    [14501535]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
walking_ua
Member

Откуда:
Сообщений: 62
ну удалить все можно всегда
а вот как сделать чтобы код не менялся.
да забыл добавить VFP 9 SP2
30 июн 13, 12:16    [14501688]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
ЛДПР
Guest
walking_ua,

На счет форм у фокса "было" ограничения на размер метода - 64 кб попробуй разбить большие методы на части
30 июн 13, 15:59    [14501954]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
walking_ua
Member

Откуда:
Сообщений: 62
не то, есть буквально две строки, аля в ините
thisform.rec()
thisform.grid_b()

где rec и grid_b методы.
и здесь он умудряется переставить мне все.
30 июн 13, 16:58    [14502007]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
Студенточка.
Guest
walking_ua,

Попал какой то спецсимвол в текст. Удаляй по кускам и ищи виноватую строку.
30 июн 13, 21:51    [14502460]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
ВладимирМ
Member

Откуда: г. Москва
Сообщений: 7864
walking_ua
Добрый день
уже не первый раз сталкиваюсь с проблемой что после ошибки в форме где произошла ошибка код в методах перепутать.
т.е. код из Инита находится в Дестрое, код из дестроя в ините, код из лоад может быть в ресайзе.
это при условии что в этих методах тоже есть код.
честно слово уже заманахался, подскажите как от этого избавиться?
тока не говорите не делать ошибок, а то я за себя не ручаюсь, накипело уже.
спасибо.

Делать все последовательно, а не надеясь на то, что FoxPro сам все "разрулит". В данном случае, после модификации необходимо явным образом нажать иконку или выбрать пункт меню "Сохранить", чтобы сохранить форму. И только потом пытаться ее запустить. Идеально было бы закрыть форму перед ее запуском. Не запускать на исполнение непосредственно из режима конструктора.

Смысл в том, что Вы выполняете модификации в оперативной памяти. А чтобы записать эти изменения в файл нужны дополнительные "телодвижения". Если Вы запускаете форму не сбросив изменения на диск явным образом, то и рискуете получить описанные проблемы. Понятно, это раздражает, но здесь ничего не поделаешь...

Кстати, после "краха" формы лучше взять ее копию из BackUp, а не пытаться "привести в чувство" "поломанный" файл. Мало ли какой мусор в нем остался после поломки. Разве что, использовать "сломанный" файл как источник для копирования изменений, прошедших после последнего BackUp.

PS: К подобной ситуации также может привести антивирус, если Вы не настроили ВСЕ файлы приложения FoxPro в исключения (в смысле, не проверять антивирусом). Просто антвирус может "захватить" только что измененный файл, а тут произошла ошибка. Что при этом произойдет с захваченным фрагментом заранее не известно.
1 июл 13, 21:35    [14507360]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
walking_ua
Member

Откуда:
Сообщений: 62
ВладимирМ
спасибо за совет, как всегда Ваши сообщения приятно читать :)
изменения в форме сохраняю по запросу когда форму закрываю, привычка такая, чет никак не могу перейти на клик по дискете.
бекап стараюсь делать, но пока что тока раз в день, соответственно если изменений на форме много, потом крах, то приходится все менять как было, а не восстанавливать из бекапа.
насчет антивируса конечно идея, попробую добавить файлы в исключения.
спасибо всем за участие, но если кто узнает истину прошу пишите сюда.
1 июл 13, 21:50    [14507416]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
Fffffffffffffffffff
Guest
Иногда помогает Project - Clean Up Project.
2 июл 13, 12:20    [14509582]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
walking_ua
Member

Откуда:
Сообщений: 62
а что он делает этот Clean Up Project?
2 июл 13, 15:13    [14510932]     Ответить | Цитировать Сообщить модератору
 Re: Меняется код в методах, куда копать?  [new]
Fffffffffffffffffff
Guest
Удаляет мусор и упаковывает файл проекта.
2 июл 13, 15:49    [14511195]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить