Всем доброго времени суток!
Я совсем недавно начал изучать S# API и столкнулся с проблемой недостаточного описания в документации.
Если разработчики S# API читают этот пост, то примите, пожалуйста, какие-нибудь меры для того, чтобы рядовой программист, не знакомый с вашим API, изучив вашу документацию и примеры, смог самостоятельно написать приложение без прохождения обучения и обращения на форум.
В данный момент я не разобрался с тем, каким образом работать с несколькими квиками.
Во время прочтения документации возникло много вопросов, на которые, на мой взгляд, должен быть ответ в документации и примерах.
Вот отрывок документации:
Code
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-шник? А если этот файл на другом диске, то как нужно это прописывать?
Разъясните мне, пожалуйста, эти вопросы.