Не срабатывает .Connected
Atom
29.01.2015
semitr


Скачал S# версии 4.2, и .Net имеет версию 4.5
Написал следующий код:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using StockSharp.Quik;
using StockSharp.BusinessEntities;
using StockSharp.Messages;
using StockSharp.Algo;
using StockSharp.Logging;
using Ecng.Xaml;
using Ecng.Serialization;
using Ecng.ComponentModel;
using Ecng.Common;

namespace firstStep
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

static AutoResetEvent waitHandle;
private void btBegin_Click(object sender, EventArgs e)
{
var trader = new QuikTrader(QuikTerminal.GetDefaultPath());
waitHandle = new AutoResetEvent(false);
trader.Connected += () =>
{
tbMessage.Text="Подключение было произведено успешно.";
//Console.WriteLine("Подключение было произведено успешно.");

// извещаем об успешном соединении
waitHandle.Set();
};

tbMessage.Text = "Производим подключение...";
//Console.WriteLine("Производим подключение...");

trader.Connect();

// дожидаемся события об успешном соединении
waitHandle.WaitOne();
}
}
}

Сообщение "Производим подключение..." - срабатывает, а "Подключение было произведено успешно." - нет. Из дебагера видно, что программа даже не заходит в часть кода в фигурных скобках.
Windows имеет версию 8 (64 - разряда), но в окне Debug->firstStep Properties->Build не удаётся установить полного сходства с картинкой из раздела справки "Создание первого робота", т. к. выпадающий список "Platform" не имеет свойства x86. Может в этом дело?
Кстати Verifier хотя и не находит ошибок (хотя раньше, когда они были, находил), но и зелёный текст не выдаёт.
Помогите мне, пожалуйста, с моей первой программой на S#!

Теги:


Спасибо:


Александр3012

Фотография
Дата: 29.01.2015
Ответить


Смотрю сейчас видео первого семинара по S#, пытаюсь делать всё что там показано, но такая-же проблема.QuikTerminal.GetDefaultPath() - находит путь к включенному квику, программа проходит _trader.Connect(); но событие соединения не происходит. Настроено все как в семинаре, только версия библиотеки свежая. Подскажите в чем проблема. Студия 2010 русская, нетфреймворк4.
Спасибо:

Mikhail Sukhov

Фотография
Дата: 29.01.2015
Ответить


Обратитесь в чат техподдержки. Что касается первого сообщения то это пример как не надо писать код. Удивительно что оно вообще работает.
Спасибо:

semitr

Фотография
Дата: 02.02.2015
Ответить


Михаил, если Вы насчёт WaitHandle, его вообще можно закомментировать примерно так:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using StockSharp.Quik;
using StockSharp.BusinessEntities;
using StockSharp.Messages;
using StockSharp.Algo;
using StockSharp.Logging;
using Ecng.Xaml;
using Ecng.Serialization;
using Ecng.ComponentModel;
using Ecng.Common;

namespace firstStep
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

//static EventWaitHandle waitHandle = new AutoResetEvent(false);
private void btBegin_Click(object sender, EventArgs e)
{
var trader = new QuikTrader(QuikTerminal.GetDefaultPath());
trader.Connected += () =>
{
tbMessage.Text="Подключение было произведено успешно.";
//waitHandle.Set();
};

tbMessage.Text = "Производим подключение...";
trader.Connect();
//waitHandle.WaitOne();
}
}
}

Всё равно строка "Подключение было произведено успешно." не появляется.
Кстати verifier, при подключении без галочки "на старое подключение" выдаёт сообщение, где ошибка: "Подключение не установлено, т. к. конечный компьютер отверг запрос на подключение 127.0.0.1:5001" (я понимаю что это локальное подключение, но это мне не помогло) и ещё 5 ошибок.
А на чате посылают обратно в форум.
Спасибо:

semitr

Фотография
Дата: 02.02.2015
Ответить


Видимо причина в том, что нет лицензии. И в связи с этим ещё вопрос: "Как получить лицензию у брокера "Инвестиционная палата"?" С этим, как я понимаю, тоже нужно обращаться на форум.
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy