Как решить проблемы с сетевым подключением в Clarion?

Речь идет не о "сетевом программировании", а о том, как решить проблему, которая возникает, когда клиент запускает приложение, расположенное на сервере, и сетевое соединение временно прерывается.

Мой фон находится в.Net. И я понимаю, что если я запускаю приложение, расположенное на другом компьютере, то.exe с удаленного компьютера загружается в память на клиентском компьютере... это означает, что в.Net я мог бы поймать исключение, когда сеть идет вниз и справиться с этим.

Я пока не очень разбираюсь в Clarion, но есть система Point Of Sale, которую я использую, которая всегда дает сбой при отключении сети, написанная на Clarion. Программист заверяет меня, что когда сеть отключается, я больше не подключен к их приложению, которое находится на сервере (я не согласен с этим, потому что, как упоминалось ранее, я считаю, что приложение уже находится в памяти на клиенте).

Можно ли решить эту проблему в приложении Clarion, и, что более важно, если да, то как вы можете решить эту проблему?

РЕДАКТИРОВАТЬ: Кроме того, я могу видеть, как может быть проблема, если к определенной DLL, которая еще не была загружена в память, к ней обращаются, но для целей этого вопроса предположим, что это не так. Я могу заставить эту проблему возникать практически в любое время, когда захочу, отключив сетевой кабель, так что я уверен, что это не проблема (или, по крайней мере, 99% времени).

2 ответа

Решение

Приложение может находиться в памяти на клиенте, но при сбое сети соединение с данными может быть потеряно. Если это не обрабатывается в коде, клиент может определенно зависнуть. NETTalk, несмотря на фантастическую надежность, может не соответствовать вашим требованиям в этой ситуации.

После любого Get, Set/Next, Add, Putи т. д., вы должны проверять ошибки:

Get(File, Key)
IF ErrorCode()
  !Show error message and ask to retry, etc.
  Message('Error '&ErrorCode()&' - '&Error())
End

Вы также можете проверить FileError() что даст вам более подробную информацию об ошибках, связанных с файлами.

Да, на Capesoft.com есть хороший набор шаблонов / расширение, которое называется NetTalk. Я написал много сетевых приложений с этим, и он отлично работает. Примеры показывают, как программировать веб-сервер, Mailclient и так далее. Я думаю, что многие основные сетевые функции будут соответствовать вашим потребностям.

Веселись, Мик

Другие вопросы по тегам