Форум » Для флейма » Помогите протестировать первую xHarbour систему » Ответить

Помогите протестировать первую xHarbour систему

AndreyZh: Уважаемые профи! Наконец перевёл систему на xHarbour (терминальный режим). Если не сложно помогите найти ошибки в её работе (сам уже тестил). Если есть желание, то с удовольствием приму критику в любом виде и отвечу на все вопросы. Система содержит исходный код (+ база очень крупной оптовки за 4 месяца) и варианты Clipper (нужна настройка ОС) и xHarbour (Win32) программ. Для установки скачать в любой каталог и распаковать архив. Все виды паролей - 11. Для создания индексов clipper (s_repair.bat), harbour (srepharb.bat). Справка F1 в любом режиме, инструкции в каталоге document. Для принудительного запуска st.bat (clip)/sth.bat (harb). По системе печати, если интересно - отдельно. Состав комплекса: 1. Оперативная программа. ls.exe (clip)/hls.exe (harb) 2. Администратор и бухгалтерия. la.exe (clip)/hla.exe (harb) 3. Аналитический контур. ldust.exe (clip)/hld.exe (harb) Буду очень благодарен за найденные ошибки и критику в любой форме! Скачка с учётом исправлений всех замечаний на 04.04.2010 (5.92) http://get.freesoft.ru/?id=108083

Ответов - 182, стр: 1 2 3 4 5 6 7 8 9 10 All

SkyNET: При попытке запуска любого clipper варианта выдаёт ошибку всех баз (после индексации и перезапуска): Окно на полном экране занимает меньше половины экрана: Один раз полностью упала программа, вот отчёт: error.logerror.log

Andrey: SkyNET пишет: Окно на полном экране занимает меньше половины экрана: Наверно нужно было бы ограничить экран программы ! Оператором SETMODE(25,80) или другими координатами, которые используете...

Andrey: Для терминала GTWVT- можно подбирать различные шрифты под различное расширение экрана 800х600, 1024х768 и т.д. ! Он лучше GTWIN ! Делал себе настройку шрифтов в программу, но так и не доделал... Если интересно, то исходники здесь : http://slil.ru/28903762


Dima: AndreyZh Что бы не падало с Dos Error 4 , пробни такой трюк SetHandleCount(200)

PSP: 1. DOS Error 4. 2. Выполнение программы легко прерывается нажатием Alt-C (в своих прогах я эту возможность отключаю).

AndreyZh: Огромное спасибо всем за реакцию! Хотя часть замечаний не является ошибками. SkyNET При попытке запуска любого clipper варианта выдаёт ошибку всех баз (после индексации и перезапуска): Одним из "плюсов" Harbour, как обратил внимание - не нужно настраивать ОС. В случает Clipper есть небольшой геморойчик. В данном случае нужно прописать в файлы: 1. win/system32/autoexec.nt (set clipper=f:220) 2. win/system32/config.nt (files=220) Но есть и другие настройки для Clipper - подробнее можно посмотреть учебник http://www.zhsoft.nm.ru/hand_set/hand_set.htm (если у Вас FireFox, то лучше через главную страницу - не любит он NewMail.ru)/ Окно на полном экране занимает меньше половины экрана: А это уже Harbour... Вызываете свойства окна Windows/вкладка расположение/ставите высоту строки 25.... Far до версии 2.0 тоже имел данный глюк. Остальные вопросы изучу и обязательно отвечу!

Dima: AndreyZh пишет: 1. win/system32/autoexec.nt (set clipper=f:220) Не помню как в Clipper 5.1 , но в 5.2e этого делать не нужно , достаточно править config.nt

AndreyZh: Andrey Спасибо! Наверно нужно было бы ограничить экран программы ! Оператором SETMODE(25,80) или другими координатами, которые используете... В принципе ответил - win настройка терминального окна. Для терминала GTWVT- можно подбирать различные шрифты под различное расширение экрана 800х600, 1024х768 и т.д. ! Он лучше GTWIN ! Делал себе настройку шрифтов в программу, но так и не доделал... Обязательно буду разбираться с данными терминальными библиотеками, т.к. они позволяют сделать мышинный интерфейс. Что по размеру окон, то в дистрибутиве (не который привёл здесь) имеются шрифты, позволяющие раскрывать окна практически на полный экран при всех разрешениях экрана. В принципе в дистрибутиве есть "система печати" и его можно скачать (9 mb) http://www.zhsoft.nm.ru/demo/distrib.exe SkyNET Один раз полностью упала программа, вот отчёт: В принципе это была самая сложная проблема "брошенные рабочие области", приводил пример: sele 0 DbSetOrder(1) // Сделует вылет по 9001 ошибке. Но "Called from : PLOADROUND(791)" вылезал - видно не до конца.... Спасибо. Сейчас проверю!

AndreyZh: Что бы не падало с Dos Error 4 , пробни такой трюк SetHandleCount(200) В xHarbour нет такого гемора - это чисто шутки Clipper. Не помню как в Clipper 5.1 , но в 5.2e этого делать не нужно , достаточно править config.nt У меня есть програмки под 5.2, такая же штука. Кроме правки autoexec.nt можно проблему обойти настройкой батника, т.е. делать вызовы программы, например: ls //f:220 Но об этом всегда забывали админы.... Еще одна "любимая" dos ошибка 5 - не дают полного доступа к сетевому диску... PSP 2. Выполнение программы легко прерывается нажатием Alt-C (в своих прогах я эту возможность отключаю). Есть такая возможность, но преднамеренно оставляю эту возможность и даже говорю об этом пользователям, т.к. при этом не рушатся индексы. Иначе будут закрывать "крестиком", что порождает море проблем.

AndreyZh: Исправил "отчетную программу" http://get.freesoft.ru/?id=108067 Шрифты, позволяющие работать почти на полном экране - актуально для Vista/7, т.к. не имеющие полноэкранного режима http://get.freesoft.ru/?id=108068

PSP: AndreyZh пишет: Иначе будут закрывать "крестиком", что порождает море проблем. Крест можно отключить. Поищите по форуму.

AndreyZh: Andrey Делал себе настройку шрифтов в программу, но так и не доделал... Если интересно, то исходники здесь : Занятные возможности (некоторым надоело однообразие) - решается настройками Tame версии от 5.0... Но интересно - какое еще практическое применение Вашей программы/библиотеки? Мне кажется, что это может усложнить жизнь (мне) Попытался "погонять" тестовый пример, но мне не удалось поменять ни одной из настроек.

PSP: AndreyZh пишет: но преднамеренно оставляю эту возможность и даже говорю об этом пользователям, т.к. при этом не рушатся индексы Еще как рушатся... :) Только что прервал работу hls.exe в момент сосздания индекса. При следующем запуске:

AndreyZh: PSP Еще как рушатся... :) Только что прервал работу hls.exe в момент сосздания индекса. При следующем запуске: С этим вопросом хотелось бы сильно разобраться!!! Clipper... Лишь после 8 попытки мне удалось получить "визуально" испорченый файл! При этом вход в программу происходил без сообщений об ошибках, прога работала нормально... Ситуация порчи индекса (информации) проявилась при проверки логики la/проверки/логика, после операции ремонта всё восстановилось. xHarbour... Все попытки прервать работы (4 шт) сразу приводили к порче индексного файла и выдачей приведённого Вами сообщения. После ремонта srepharb всё восстанавливалось, в т.ч. не было ошибок! Гуру Harbour пожалуйста проясните данный вопрос - в чём проблема? В принципе программа должна обрабатывать ошибки открытия файлов не допуская системных сообщений???? ++++ В принципе породил данное разрушение, запустив ремонт при параллельно, работающей программе!!! - Это ЖП

AndreyZh: ++++ В принципе породил данное разрушение, запустив ремонт при параллельно, работающей программе!!! - Это ЖП "Мёртвому - припарка". Использовав обработчик ошибок даю соощение о разрушении файлов и рекомендацию произвести ремонт (переиндексацию). Вопрос - насколько надёжны индексы *.NTX в xHarbour?

PSP: AndreyZh пишет: удалось получить "визуально" испорченый файл! При этом вход в программу происходил без сообщений об ошибках, прога работала нормально... Имхо, это - не есть хорошо. Индекс испорчен, но никто об этом не знает... Я думаю, что правильнее так: выдачей приведённого Вами сообщения. По-крайней мере, пользователь будет сразу знать, что с базой что-то не то... И я все-таки думаю, что нельзя пользователям разрешать внезапное прервание работы программы.

AndreyZh: И я все-таки думаю, что нельзя пользователям разрешать внезапное прервание работы программы. Есть ли в xHarbour средство блокирования закрытия окна Windows (блок крестика)?

Dima: AndreyZh пишет: Есть ли в xHarbour средство блокирования закрытия окна Windows (блок крестика)? PSP пишет: Крест можно отключить. Поищите по форуму.

PSP: AndreyZh пишет: Есть ли в xHarbour средство блокирования закрытия окна Windows (блок крестика)? При использовании терминала gtwin можно пользоваться WinAPI: SetConsoleTitle( cTitle ) hWnd := FindWindow( cTitle ) DeleteCloseButton( hWnd ) #PRAGMA BEGINDUMP #include "hbapi.h" #include "windows.h" HB_FUNC( SETCONSOLETITLE ) { hb_retl( SetConsoleTitle( hb_parc( 1 ) ) ) ; } HB_FUNC( FINDWINDOW ) { hb_retnl( (LONG)FindWindow( NULL, hb_parc( 1 ) ) ) ; } HB_FUNC( DELETECLOSEBUTTON ) { DeleteMenu(GetSystemMenu( (HWND)hb_parnl( 1 ), FALSE), SC_CLOSE, MF_BYCOMMAND ) ; DrawMenuBar( (HWND)hb_parnl( 1 ) ) ; } #pragma ENDDUMP для терминала gtWVT есть функция GTInfo(). Она в том числе умеет и "крест гасить". ЗЫ: я пользуюсь Harbour-ом. Про xHarbour точно не подскажу, надеюсь, что на этом уровне все также.

Петр: PSP пишет: При использовании терминала gtwin можно пользоваться WinAPIЗЫ: я пользуюсь Harbour-ом В Harbour можно использовать стандартный вызов hb_gtInfo( HB_GTI_CLOSABLE, .f. ) и для gtWIN если его пересобрать с HB_GTWIN_USE_UNDOC_WINAPI set HB_USER_CFLAGS=%HB_USER_CFLAGS% -DHB_GTWIN_USE_UNDOC_WINAPI



полная версия страницы