Ver Mensaje Individual
  #2  
Antiguo 26-08-2012
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.210
Reputación: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Esos componentes lo he usado sin problemas. Si en la documentación aparecen como obsoletos es porque usas la versión Socket 1.1 que está superada. Yo he usado esos componentes en comunicación con WinSock 2.2 en otros ejecutables que sólo usan la API (sin componentes) y funcionan bien.

Ahora que mencionas el tema se me ocurre, pues no lo he probado, actualizar el código fuente de una forma muy sencilla que en principio consistiría en cambiar una instrucción de los constructores:
Código Delphi [-]
WSAStartup($0101, WSAData);
por
Código Delphi [-]
WSAStartup(MakeWord(2, 2), WSAData);
En concreto sería cambiarlo en el procedimiento Startup de ScktComp.pas:
Código Delphi [-]
procedure Startup;
var
  ErrorCode: Integer;
begin
  ErrorCode := WSAStartup(MakeWord(2, 2), WSAData); //WSAStartup($0101, WSAData);
  if ErrorCode <> 0 then
    raise ESocketError.CreateResFmt(@sWindowsSocketError,
      [SysErrorMessage(ErrorCode), ErrorCode, 'WSAStartup']);
end;

Habría que revisar muchas mas cosas, pero para empezar...

Así que, si te animas, realiza el cambio y recompila los componentes; prueba y me cuentas...


Saludos.

Última edición por escafandra fecha: 26-08-2012 a las 18:40:43.
Responder Con Cita