Добрый день. Вот решил добавить колонку в таблицу инструментов %
изменения от закрытия, добавил DDE сразу в ошибку вылетает "Заданное
приведение является недопустимым", чем можете помочь?!
Колонка "% изменения от закрытия", добавил в конец. DDE сразу в ошибку
вылетает "Заданное
приведение является недопустимым". У меня все классно работает без
этой колонки.
Колонка "% изменения от закрытия", добавил в конец. DDE сразу в ошибку
вылетает "Заданное
приведение является недопустимым". У меня все классно работает без
этой колонки.
Конечно подписывался, вот код события ProcessWellKnownDdeData
If NamePar.Contains("stock") Then
For Each obj In Arg2
Quote = obj.Key
If (Quote.ExtensionInfo Is Nothing) Then
Quote.ExtensionInfo = New Dictionary(Of Object,
Object)()
If (obj.Value.Count = 5) Then
Quote.ExtensionInfo("MainCount") =
IIf(CType(obj.Value(3), Integer) = 0, CType(obj.Value(4), Integer),
CType(obj.Value(3), Integer))
End If
End If
Next
ElseIf NamePar.Contains("security") Then
For Each obj In Arg2
Sec = obj.Key
If (Sec.ExtensionInfo Is Nothing) Then
Sec.ExtensionInfo = New Dictionary(Of Object,
Object)()
Sec.ExtensionInfo("LastPrice") =
CType(obj.Value(9), Double)
Else
Sec.ExtensionInfo("LastPrice") =
CType(obj.Value(9), Double)
End If
Next
Если я добавляю еще одну колонку, то срабатывает событие DdeError
Что то явно не так с настройками таблицы. У меня как раз две колонки.
И так. Добавьте все колонки так, как есть в примере. Затем, проверьте.
Все должно работать. Иначе, какую-то пропустили. Затем, добавьте свою
в конец таблицы.
Это первое. Второе - Вы уверены, что бросается исключение не на Ваших
строчках:
コメント (15)
ログイン または アカウントを作成, コメントを残すにはログインまたは新規登録してください
Я понял, что для инструментов ничего сверх неполучится вывести!!! Жаль!!!
Почему не получиться? Вы добавили так, как написано в документации, в конец?
Да
Видимо проблема в других колонках. Если Вы убирете добавленную, будет все работать? Напишите, что за колонка.
И да, напишите сюда текст ошибки.
Я в первом посте написал:
Колонка "% изменения от закрытия", добавил в конец. DDE сразу в ошибку вылетает "Заданное приведение является недопустимым". У меня все классно работает без этой колонки.
Я в первом посте написал:
Колонка "% изменения от закрытия", добавил в конец. DDE сразу в ошибку вылетает "Заданное приведение является недопустимым". У меня все классно работает без этой колонки.
А какой текст ошибки?
Еще такой вопрос. У вас две колонки даты последней сделки?
http://stockmarketdotnet.blogspot.com/2009/11/quik-ecngtrading.html
Срабатывает событие ошибки DDE - Заданное приведение является недопустимым
Ок. Но там должен быть текст ошибки... Ок, Вы просто пример запускаете? Какой именно? Или своя программа?
Своя! Весь функционал уже задействовал кроме .algo, все работает отлично без глюков! Текст ошибки только тот что написал и все.
У Вас две колонки даты?
Вы подписывались на событие QuikTrader.ProcessDde....? Если да, то могли бы текст обработчиков привести?
Одна колонка времени последней сделки.
Конечно подписывался, вот код события ProcessWellKnownDdeData
Object)() If (obj.Value.Count = 5) Then Quote.ExtensionInfo("MainCount") = IIf(CType(obj.Value(3), Integer) = 0, CType(obj.Value(4), Integer), CType(obj.Value(3), Integer)) End If End If Next ElseIf NamePar.Contains("security") Then For Each obj In Arg2 Sec = obj.Key If (Sec.ExtensionInfo Is Nothing) Then Sec.ExtensionInfo = New Dictionary(Of Object, Object)() Sec.ExtensionInfo("LastPrice") = CType(obj.Value(9), Double) Else Sec.ExtensionInfo("LastPrice") = CType(obj.Value(9), Double) End If Next
Если я добавляю еще одну колонку, то срабатывает событие DdeError
Что то явно не так с настройками таблицы. У меня как раз две колонки.
И так. Добавьте все колонки так, как есть в примере. Затем, проверьте. Все должно работать. Иначе, какую-то пропустили. Затем, добавьте свою в конец таблицы.
Это первое. Второе - Вы уверены, что бросается исключение не на Ваших строчках:
CType(obj.Value(4), Integer) CType(obj.Value(9), Double)
Можете обернуть это в try-catch.