На стороне клиента классы объектов не находятся в исполняемом файле.Чтобы быть уверенным, попробуйте эту грязную проверку.Создайте в коде клиента ссылку на используемые классы.например.
TForm6 = class(TForm)
SQLConnection1: TSQLConnection;
DSClientCallbackChannelManager1: TDSClientCallbackChannelManager;
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
procedure Button1Click(Sender: TObject);
procedure OnExecute(AValue: TObject);
private
c: TCat; //dummy refernce to the class
d: TDog; //dummy refernce to the class
co: TCAllbackObject; //dummy refernce to the class
public
{ Public declarations }
end;
Теперь это должно работать.
Более чистый способ - использовать пустой метод класса регистра для каждого класса.Как следующее:
TCallBackObject = class
Sender: string;
ObjectClass: string;
Obj: TObject;
Status: integer;
ID: integer;
class procedure Register;
end;
...
class procedure TCallBackObject.Register;
begin
//
end;
initialization
TCallBackObject.Register;
end.