Первый урок, с использованием S#.API 5.0 (VS 2019, NET 4.8)

Первый урок, с использованием S#.API 5.0 (VS 2019, NET 4.8)
Atom
19.04.2020
Алексей


Пытаюсь воспроизвести первый урок, с использованием S#.API 5.0 (VS 2019, NET 4.8), при попытке выбора подключениявыдаёт ошибку:


System.Reflection.TargetInvocationException
HResult=0x80131604
Сообщение = Адресат вызова создал исключение.
Источник = mscorlib
Трассировка стека:
в System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
в System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
в System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)
в System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
в System.Activator.CreateInstance(Type type, Object[] args)
в Ecng.Common.TypeHelper.CreateInstance[T](Type type, Object[] args)
в StockSharp.Messages.Extensions.CreateAdapter(Type adapterType, IdGenerator idGenerator)
в StockSharp.Configuration.InMemoryMessageAdapterProvider.<>c__DisplayClass0_0.<.ctor>b__0(Type t)
в System.Linq.Enumerable.WhereSelectListIterator`2.MoveNext()
в System.Linq.Buffer`1..ctor(IEnumerable`1 source)
в System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
в StockSharp.Configuration.InMemoryMessageAdapterProvider..ctor(IEnumerable`1 currentAdapters)
в StockSharp.Xaml.Extensions.#=zlN4YnUabrB4$(BasketMessageAdapter #=zdF$n2jM=)
в StockSharp.Xaml.Extensions.Configure(BasketMessageAdapter adapter, Window owner, Boolean& autoConnect, SettingsStorage& windowSettings)
в StockSharp.Xaml.Extensions.Configure(Connector connector, Window owner)
в ABStrategy_042020.MainWindow.Setting_Click(Object sender, RoutedEventArgs e) в D:\S#\МоиПроекты\ABStrategy_042020\MainWindow.xaml.cs:строка 45
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
в System.Windows.Controls.Primitives.ButtonBase.OnClick()
в System.Windows.Controls.Button.OnClick()
в System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
в System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
в System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
в System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
в System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
в System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
в System.Windows.Input.InputManager.ProcessStagingArea()
в System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
в System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
в System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
в System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
в MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
в System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
в MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
в MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
в System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
в System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
в System.Windows.Application.RunDispatcher(Object ignore)
в System.Windows.Application.RunInternal(Window window)
в System.Windows.Application.Run(Window window)
в System.Windows.Application.Run()
в ABStrategy_042020.App.Main()

Внутреннее исключение 1:
FileNotFoundException: Не удалось загрузить файл или сборку "Interop.CQG, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null" либо одну из их зависимостей. Не удается найти указанный файл.

image3276.png 35 KB (304)



Спасибо:


1 2  >
Support

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


Добрый день

Уроки по миграции 5.0 пока в процессе. На данный момент они недоступны.
Спасибо:

Алексей

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


Т.е. алгоритм по подключению предложенный в уроках не подходит для 5.0?
Тогда вопрос, как мне подключиться к Квик 8, используя 5.0? Вариант с 4.4 для меня не подходит.
Спасибо:

Support

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


В версии 4.4.17 поддерживается QUIK 8.
Спасибо:

Алексей

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


Support
В версии 4.4.17 поддерживается QUIK 8.


Повторяю вопрос: как мне подключиться к Квик 8, используя 5.0? ДРУГИЕ ВЕРСИИ S# МНЕ НЕ ПОДХОДЯТ!!!
Спасибо:

Support

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


1) В вашем случае отсутствует файл Interop.CQG. По какой-то причине он не находится в директории exe программы. Вы можете скачать данный пакет еще раз и удостовериться, что файл там присутствует https://www.nuget.org/pa...ges/StockSharp.Cqg.Com/
2) Вы можете удалить использование StockSharp.Configuration.Adapters и подключать только те коннекторы, которые используете. Тогда StockSharp.Cqg.Com не будет присутствовать на диске.
3) Мы обновили примеры до версии 5.0. Вы можете скачать их и протестировать.
Спасибо:

Алексей

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


Support
1) В вашем случае отсутствует файл Interop.CQG. По какой-то причине он не находится в директории exe программы. Вы можете скачать данный пакет еще раз и удостовериться, что файл там присутствует https://www.nuget.org/packages/StockSharp.Cqg.Com/


Помогло удаление пакета StockSharp.Cqg.Com перезагрузка VS и заново установка пакета StockSharp.Cqg.Com. Файл появился, ошибка исчезла.


Support
3) Мы обновили примеры до версии 5.0. Вы можете скачать их и протестировать.


Откуда брать скрипт lua? В примерах его нет, при загрузке пакетов с NuGet он не загружается.
Спасибо:

Алексей

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


Оказывается скрипт Lua появляется в проекте (01_Connect_and_get_security) если дополнительно закачать пакет StockSharp.QuikLua. Потерял на этом много времени :(
Теперь новая проблема, при запуске скрипта в Quik 8.3.2.4:

" ...iklua\5.0.5\contentFiles\any\any\StockSharp.Quik.lua:79: module 'StockSharp' not found:
no field package.preload['StockSharp']
no file 'D:\S#\Обучение\Lessons_5.0\packages\stocksharp.quiklua\5.0.5\contentFiles\any\any\StockSharp.QuikLua.dll'"

Расположение скрипта в прикрепленном файле.
image7172.png 9 KB (307)
Спасибо:

Support

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


Вы не установили все файлы, от которых зависит QUIK плагин.

Рекомендуем воспользоваться нашей утилитой Installer инструкция по ссылке https://stocksharp.ru/ne...5/rukovodstvo-po-nuget/ (в конце).
Спасибо:

Алексей

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


Четвертый день безрезультатно пытаюсь воспроизвести первый урок с S# 5.0 и Quik 8. Это начинает уже раздражать, вроде все рекомендации тех. поддержки выполняю, а результат 0. Хотелось бы от поддержки более оперативных и подробных ответов, ведь многие здесь не большие знаток программирования и S#.
Итак, вводные: Windows 10 Pro, WS 2019, .NET 4.8 FW, архивы после скачивания разблокировал, программы запускаются от имени администратора.
1. Открыл Lessons_5.0 в VS, дождался закачки пакетов с Nuget, запускаю 01_Connect_and_get_security все ОК. Скрипта lua в Lessons_5.0 НЕТ, пакета StockSharp.QuikLua тоже НЕТ. Закрываю VS.
2. По рекомендации Support воспользовался NugetInstaller. Сразу при запуске сразу выдаёт ошибку: «… Не удалось найти часть пути …» (см. прикрепленные файлы). Вставляю свой токен, указываю папку Quik, запускаю, происходит копирование и выскакивают два предупреждения (см. файл). Изменяю в NugetInstaller тип установки (Patch app…) и меня Выходную папку на папку с уроком Lessons_5.0, запускаю, ошибок нет. Скрипта lua в Lessons_5.0 НЕТ, пакета StockSharp.QuikLua тоже НЕТ.
3. Открыл Lessons_5.0 в VS, через Nuget установил в 01_Connect_and_get_security пакет StockSharp.QuikLua. Появились два предупреждения: «несоответствие между архитектурой процессора проекта "MSIL", сборка которого выполняется, и архитектурой процессора ссылки "D:\S#\Lessons_5.0\packages\stocksharp.quiklua\5.0.5\lib\netcoreapp3.1\StockSharp.QuikLua.dll", "AMD64"…» (см. файл). Скрипт lua в Lessons_5.0 есть.
4. Запускаю скрипт lua в Quik, ошибка: «...iklua\5.0.5\contentFiles\any\any\StockSharp.Quik.lua:79: module 'StockSharp' not found: no field package.preload['StockSharp'] no file 'D:\S#\Lessons_5.0\packages\stocksharp.quiklua\5.0.5\contentFiles\any\any\StockSharp.QuikLua.dll»
5. При попытке запустить 01_Connect_and_get_security вылезает куча ошибок. (см. файл)

Что я делаю не так?

Спасибо:

Support

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


Скачайте обновленный NugetInstaller, пожалуйста. Так же исправлен NuGet пакет и вы можете удалить пакет StockSharp.QuikLua и добавить новый. После этого ошибка с компиляцией исчезнет.
Спасибо:
1 2  >

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

loading
clippy