← Назад

Работа с несколькими квиками

Всем доброго времени суток! Я совсем недавно начал изучать S# API и столкнулся с проблемой недостаточного описания в документации. Если разработчики S# API читают этот пост, то примите, пожалуйста, какие-нибудь меры для того, чтобы рядовой программист, не знакомый с вашим API, изучив вашу документацию и примеры, смог самостоятельно написать приложение без прохождения обучения и обращения на форум. В данный момент я не разобрался с тем, каким образом работать с несколькими квиками. Во время прочтения документации возникло много вопросов, на которые, на мой взгляд, должен быть ответ в документации и примерах. Вот отрывок документации:



1) В папку с программой необходимо поместить два файла TRANS2QUIK.dll (пример работает с 2-мя Quik-ами). Например, один будет иметь оригинальное название, а второй будет переименован TRANS2QUIK_2.dll. Это обязательное требование работы с несколькими Quik-ами из одной программы: один Quik - одна dll. 

2) После этого, идет создание нескольких QuikTrader. Через свойство QuikTrader.DdeServer передается уникальное имя для DDE сервера, а через QuikTrader.DllName путь к TRANS2QUIK.dll:

var quikTrader1 = new QuikTrader { Path = path1, DdeServer = "quik1" };
var quikTrader2 = new QuikTrader { Path = path2, DdeServer = "quik2", DllName = @"TRANS2QUIK_2.dll" };

// если вторая dll находится в другой папке, то можно создать шлюз, указав путь к dll 
// var quikTrader2 = new QuikTrader { Path = path2, DdeServer = "quik2", DllName = @"Folder1\TRANS2QUIK_2.dll" };



Что за файл TRANS2QUIK.dll? В папке квика его нет, в папке References в S# API этого файла тоже нет. В примере, который демонстрирует работу с несколькими квиками (StockSharp_4.2.3.14\Samples\Quik\SampleFewQuiks) этого файла тоже нет.

Допустим, этот файл есть. Куда его нужно копировать? Варианты:

  • в корень проекта Visual Studio, где лежит файл типа Microsoft Visual Studio Solution;
  • в папку, где код робота и папки bin и obj;
  • в папку, где лежит исполняемый файл робота (bin\Debug);
  • в папку с квиком.

Нужно ли этот файл добавлять в свойствах проекта в разделе "References"?

Какое правило указания пути к этому файлу? В примере написано @"TRANS2QUIK_2.dll". Это значит, что этот файл лежит там же, где и exe-шник? Ещё в примере написано @"Folder1\TRANS2QUIK_2.dll". Это означает, что файл лежит в папке, а папка там же, где и exe-шник? А если этот файл на другом диске, то как нужно это прописывать?

Разъясните мне, пожалуйста, эти вопросы.

Комментарии (1)

Вход или Создать аккаунт, Войдите или зарегистрируйтесь, чтобы оставить комментарий

Mikhail Sukhov
Mikhail Sukhov

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

Развитие стокшарпа зависит напрямую от прибыли с курсов. Нет прибыли - нет развития - нет радости у пользователей.

В то же время никто не мешает пользователям самостоятельно написать или дополнить документацию, и помогать свои коллегам.