Показать сообщение отдельно
Старый 22.12.2004, 12:38   #1  
corvax is offline
corvax
Участник
 
2 / 10 (1) +
Регистрация: 21.12.2004
Адрес: Москва
передача бинарных файлов с клиента на AOS и обратно
Привет!
есть вариант реализации -
для передачи с AOS на клиента пишем класс, выполняемый на сервере (RunOn:Server). Метод класса, выполняющий сохранение файла с AOS на клиента:
PHP код:
void Server2Client()
{
    
container con;
    
BinData MyFile;
    
MyFile=new BinData();
    
MyFile.LoadFile("d:\\file.eps");
    
con=MyFile.getData();
    
atest::SaveFile2Client(con,"d:\\fromserver.eps");

и статический метод класса, выполняющийся на клиенте:
PHP код:
static client public void SaveFile2Client(container FileData,str FilePath)
{
    
BinData TempData;
    
TempData=new bindata();
    
TempData.setdata(FileData);
    
TempData.saveFile(FilePath);

Обратная передача реализована похожим образом, только статический метод осуществляет загрузку файла с клиента, а метод класса, выполняющийся на сервере - его сохранение.

Проблема в следующем: при выполнении передачи с клиента на сервер без проблем прокачиваются даже очень большие файлы (150 Mb).
При передаче же с сервера на клиент AOS "закрывает соединение с компьютером" уже на 100 Mb
У меня Axapta 3.0 SP1

Можно ли обойти эту ошибку?
Существует ли альтернативный способ для передачи бинарных файлов между сервером и клиентом?