Delphi 10.4 не понимает class TClientSocket

Давно не программировал. Решил вспомнить, чтоб не отупеть. Установил Delphi 10.4, до этого была установлена Delphi XE Architect (в ней, раньше, на Win7 всё работало). Но при миграции она перестала открываться без ошибок и я решил обновить версию. Установил 10,4 и она тоже не работает со старыми проектами - клиент-серверными приложениями, выдаёт ошибку "class TClientSocket not found", разве эту систему в разработке клиент-серверного ПО упразднили? Сейчас иные технологии?
Вижу два пути решения:

  1. Не знаю как (сервера отключили) установить Delphi XE
  2. Каким-то образом заменить в проектах class TClientSocket, на более современный, если он устарел.

Подскажите, что можно и лучше сделать, чтобы вернуться к разработке\доработке старых проектов?


Ответы (2 шт):

Автор решения: MBo

Они есть, только не установлены по умолчанию - видимо, подразумевается пользование установленной библиотеки Indy

Components - Install packages

ищем ПапкаСтудии\bin\dclsocketsXXX.bpl (у меня в D12 XXX=290, номер версии)

После установки смотрим на вкладке «Internet».

→ Ссылка
Автор решения: Boulat Salimov

Indy тут ни при чем.

Этот компонент только убрали из палитры компонентов.

Создавать и пользоваться Win-сокетами, и клиент и сервер, можно создавая и уничтожая их самостоятельно в FormCreate и FormDestroy. Ну и обработчики событий у них самостоятельно придется навешать.

uses
  System.Win.ScktComp;

var
 socket: TClientSocket;

procedure TConnectionToServer.Connect(const address: string; port: Integer);
begin
  if not Assigned(socket) then begin
    socket := TClientSocket.Create(nil);
  end;

  if not socket.socket.Connected then begin
    socket.address := address;
    socket.port := port;
    socket.OnConnect := listener.onServerConnect;
    socket.OnRead := listener.onServerRead;
    socket.OnError := listener.onSocketError;

    socket.Active := True;
  end;
end;

ну, или установить пакеты, как советовал предыдущий участник.

→ Ссылка