On-line: гостей 1. Всего: 1 [подробнее..]
АвторСообщение
постоянный участник




Пост N: 6303
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.06.19 18:33. Заголовок: Вылет программы по DOS Error 38 ?


Всем привет.
На новом компе постоянно падает прога !
Помогите пожалуйста разобраться ?
Система:
Operating system...: Windows 10 10.0 
MiniGUI version....: Harbour MiniGUI Extended Edition 19.04 (32-bit)
Harbour version....: Harbour 3.2.0dev (r1904111533)
Harbour built on...: Apr 11 2019 19:43:19
C/C++ compiler.....: Borland C++ 5.5.1 (32-bit)
Multi Threading....: YES
VM Optimization....: YES

Лог ошибок в ErrorLog.htm
 
Date: 05.06.19 Time: 17:31:57
Application: C:\ABONENT\Abonent2win.exe [Версия 4.79.0603]
Time from start: 0 days 7 hours 29 mins 39 secs
Error DBFCDX/1010 Ошибка чтения: \\SERVER\ABONENT\COMMON\NETOPER.DBF (DOS Error 38)
--------------------------------- Stack Trace ---------------------------------
Called from DBSKIP(0)
Called from OPERATUSERS2(292) in module: Source\main_wdbf.prg
Called from (b)MAIN(270) in module: Source\main.prg
Called from _DOCONTROLEVENTPROCEDURE(1865) in module: h_windows.prg
Called from EVENTS(1583) in module: h_events.prg
Called from MYEVENTSHANDLER(1233) in module: Source\main.prg
Called from DOMESSAGELOOP(0)
Called from _ACTIVATEWINDOW(1499) in module: h_windows.prg
Called from MAIN(287) in module: Source\main.prg

Date: 05.06.2019 Time: 18:08:46
Application: C:\ABONENT\Abonent2win.exe [Версия 4.79.0603]
Time from start: 0 days 0 hours 36 mins 28 secs
Error DBFCDX/1010 Ошибка чтения: \\SERVER\ABONENT\COMMON\NETOPER.DBF (DOS Error 38)
--------------------------------- Stack Trace ---------------------------------
Called from DBSKIP(0)
Called from OPERATUSERS2(292) in module: Source\main_wdbf.prg
Called from (b)MAIN(270) in module: Source\main.prg
Called from _DOCONTROLEVENTPROCEDURE(1865) in module: h_windows.prg
Called from EVENTS(1583) in module: h_events.prg
Called from MYEVENTSHANDLER(1233) in module: Source\main.prg
Called from DOMESSAGELOOP(0)
Called from _ACTIVATEWINDOW(1499) in module: h_windows.prg
Called from MAIN(287) in module: Source\main.prg

Date: 05.06.2019 Time: 18:08:59
Application: C:\ABONENT\Abonent2win.exe [Версия 4.79.0603]
Time from start: 0 days 0 hours 36 mins 41 secs
Error DBFCDX/1010 Ошибка чтения: \\SERVER\ABONENT\COMMON\NETOPER.DBF (DOS Error 38)
--------------------------------- Stack Trace ---------------------------------
Called from DBSKIP(0)
Called from DBFLOG2EXIT(185) in module: Source\main_wdbf.prg
Called from MYEXITERROR(882) in module: Source\main.prg
Called from SHOWERROR(200) in module: Source\ErrorSys.prg
Called from DEFERROR(139) in module: Source\ErrorSys.prg
Called from (b)ERRORSYS(65) in module: Source\ErrorSys.prg
Called from DBSKIP(0)
Called from OPERATUSERS2(292) in module: Source\main_wdbf.prg
Called from (b)MAIN(270) in module: Source\main.prg
Called from _DOCONTROLEVENTPROCEDURE(1865) in module: h_windows.prg
Called from EVENTS(1583) in module: h_events.prg
Called from MYEVENTSHANDLER(1233) in module: Source\main.prg
Called from DOMESSAGELOOP(0)
Called from _ACTIVATEWINDOW(1499) in module: h_windows.prg
Called from MAIN(287) in module: Source\main.prg


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 16 [только новые]


администратор




Пост N: 7051
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 20.06.19 20:49. Заголовок: спроси гугл :sm54: ..


спроси гугл
[url=https://groups.google.com/forum/#!topic/comp.lang.xharbour/zU7EmbJ2Vks]может это поможет[/url]

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1291
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 20.06.19 21:06. Заголовок: еще вот тут есть: ht..


еще вот тут есть: https://www.wiki-errors.com/err.php?wiki=38
Если вкратце, то это, скорее всего, связано с повреждением некоторых системных файлов и надо восстановить систему.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 6305
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.06.19 21:54. Заголовок: Dima пишет: спроси ..


Dima пишет:

 цитата:
спроси гугл


Да искал, попадались другие ссылки.
Спасибо БОЛЬШОЕ всем !

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 6306
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.06.19 22:20. Заголовок: alkresin пишет: еще..


alkresin пишет:

 цитата:
еще вот тут есть: https://www.wiki-errors.com/err.php?wiki=38


Что то не то там пишут....
Предлагают какую то левую утилиту за $29.95 USD
У юзера на том компе Win-10 (последня версия), а утилиту предлагают для Win7 !
Убьёт всю систему у моего юзера...

38 ошибка это - NetBIOS command limit exceeded
Нашёл про это тут - http://stanislavs.org/helppc/dos_error_codes.html

Если смотреть хелпер по xHarbour, то там DosError()
38 ошибка - Unable to complete the operation

Какую ошибку выбрать ?

Нашёл похожую ошибку - https://translate.google.ru/translate?sl=auto&tl=ru&u=http%3A%2F%2Fforums.fivetechsupport.com%2Fviewtopic.php%3Ff%3D6%26t%3D32829
Но ссылка на https://support.microsoft.com/en-us/kb/74463 - не работает.
Почитать и понять негде.

У меня много юзеров используют программу, но данная ошибка возникает только у ОДНОГО юзера.

Вот код программы:
 
SELECT NETOPER
GOTO TOP
DO WHILE !EOF()
....
SKIP // строка 292
ENDDO

или
 
SELECT NETOPER
GOTO TOP
DO WHILE !EOF()
IF NETOPER->KOPERAT == nOper
IF RLock()
.......
DBUnlock()
ENDIF
ENDIF
SKIP // строка 185
ENDDO

Ошибка возникает если долго НЕ РАБОТАТЬ на компе...
Т.е. наверное включается спящий режим, а восстановиться потом не получается, комп оживает уже без программы.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1531
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 21.06.19 06:59. Заголовок: Andrey пишет: 38 ош..


Andrey пишет:

 цитата:
38 ошибка это - NetBIOS command limit exceeded


Это - 16-ричной системе. В 10-тичной - 56
https://www.computerhope.com/xdoseror.htm

Andrey пишет:

 цитата:
Ошибка возникает если долго НЕ РАБОТАТЬ на компе...


Попробуй вместо \\SERVER написать \\ip-адрес.

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3844
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 21.06.19 08:06. Заголовок: Это часом не ERROR_H..


Это часом не ERROR_HANDLE_EOF ?
Получаем:
genCode = 23 (EG_READ)
osCode = 38 (ERROR_HANDLE_EOF)

ошибка возникает при чтении dbf или cdx


 цитата:
Асинхронная операция чтения может встретиться с концом файла в течение инициализации вызова ReadFile, или в ходе последующей асинхронной операции.

Если EOF обнаруживается функцией ReadFile во время асинхронной операции чтения, ReadFile возвращает значение ЛОЖЬ (FALSE), а GetLastError возвращает ошибку ERROR_HANDLE_EOF.

Если EOF обнаруживается в ходе последующей асинхронной операции, происходит вызов функции GetOverlappedResult, чтобы получить в результате этой операции возвращенное значение ЛОЖЬ (FALSE), а GetLastError возвратит ошибку ERROR_HANDLE_EOF.



harbour как раз использует асинхронную ReadFile

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3845
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 21.06.19 08:39. Заголовок: Кот как раз обсужден..


Вот как раз обсуждение нашей ситуации:
https://forum.sources.ru/index.php?showtopic=409663

там есть такие пугающие фразы


 цитата:
то есть эти люди с майкрософта поменяли поведение базовой функции. так мало того что поменяли так они сделали это ещё с ошибкой, GetOverlappedResult иногда возвращает ERROR_HANDLE_EOF хотя файл читается с начала и до конца ещё далеко.



и как бороться с творением уникальных и замечательных людей из ms советов нет.

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1292
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 21.06.19 09:47. Заголовок: Andrey пишет: Что т..


Andrey пишет:

 цитата:
Что то не то там пишут....
Предлагают какую то левую утилиту за $29.95 USD


Дело не в том, какую утилиту они продают, а в том, что проблема связана с системными файлами Windows и устраняется восстановлением этих файлов - а способы восстановления есть разные. Я давно ничем подобным не занимался, но смутно помню, что можно было запустить переустановку ОС с опцией "восстановление" - при этом все установленные программы и данные сохранялись. Как крайний случай можно полностью переставить Windows.

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3846
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 21.06.19 10:08. Заголовок: Это не та ошибка ER..


Это не та ошибка

ERROR_TOO_MANY_CMDS, код 0x38, или 56

У Андрея код 38, то есть ERROR_HANDLE_EOF

Может стоит накатить все обновления на win10, в надежде на то, что уникальные уже все тихо пофиксили ?
Хотя система вроде сама обновляется, не спрашивая разрешения.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 6307
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 21.06.19 13:32. Заголовок: Pasha пишет: Вот ка..


Pasha пишет:

 цитата:
Вот как раз обсуждение нашей ситуации:


Да почитал...
не всё оказалась так просто. GetOverlappedResul иногда возвращает явно 38 код ошибки хотя конца файла ещё не достиг. Пока не понял почему так происходит.
Обрабатывать код ошибка в __IOCompletionRoutine тоже как-то не понятно. в Win7 для последнего блока она не вызывается. Вопщем пока склоняюсь к тому чтобы проверять код ошибки в двух местах при вызове и ReadFileEx и внутри __IOCompletionRoutine и отказаться от GetOverlappedResult.
хотя в MSDN написано
If ReadFileEx attempts to read past the end-of-file (EOF), the call to GetOverlappedResult for that operation returns FALSE and GetLastError returns ERROR_HANDLE_EOF.

И как это в Harbour'е нужно делать ?
Нужно писать разработчикам Харбора... Сомневаюсь что они под 10-ку будут делать эти изменения...

А насчёт переустановки Винды - это тоже решение, но не факт что сработает.
Кстати прога начала валиться совсем недавно, раньше работало без ошибок. Что-то поменяли и обновили в Винде...

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3847
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 21.06.19 14:27. Заголовок: Конечно это жесть же..


Конечно это жесть жестяная.
Иногда самая что-ни на есть стандартная функция ReadFile возвращает ошибку на конец файла, когда конца файла нет и в принципе быть не может.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 6308
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 21.06.19 15:42. Заголовок: Вообще то может я не..


Вообще то может я неправильно делаю сам ?

На главной форме включён таймер. Каждые 2 минуты запускает функцию чтение базы кто в программе.
При работе компа всё отлично, но если комп уходит в спящий режим (может диск отключается),
то прога может тогда вылетает ?

Тогда возникает вопрос, как определить (функция) находиться ли комп в спящем режиме ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1532
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 21.06.19 15:53. Заголовок: Обычно в спящем режи..


Обычно в спящем режиме сетевой интерфейс отключается.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 7052
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 21.06.19 15:57. Заголовок: Andrey пишет: Тогда..


Andrey пишет:

 цитата:
Тогда возникает вопрос, как определить (функция) находиться ли комп в спящем режиме ?


https://ru.stackoverflow.com/questions/6885/%D0%9A%D0%B0%D0%BA-%D0%BE%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B8%D1%82%D1%8C-%D1%81%D0%BF%D1%8F%D1%89%D0%B8%D0%B9-%D1%80%D0%B5%D0%B6%D0%B8%D0%BC

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2592
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 21.06.19 16:41. Заголовок: Andrey У меня над с..


Andrey
У меня над сервером LetoDb 1.0 работает менеджер AutoIt3, который следит за наличием оного в памяти и ловли сообщений от tray menu Скрытый текст

выделенных сообщений хватало для работы и засыпания\просыпания pc

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 6310
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 21.06.19 17:30. Заголовок: Да я думаю что навер..


Да я думаю что наверное нужно не ловить спящий режим, а отлавливать доступность базы по сетевому пути.
Вроде это правильнее будет.
А то получается за всё время работы программы не у одного юзера не было такой ситуации,
когда сервер уходил в спящий режим.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 16
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет