Даздраствует новая нестабильная версия!!
Atom Ответить
26.09.2011


Сегодня подключил новые библиотеки версии 4.0.
Результат исключение при вызове метода Start()
NotSupportedException {"Данный формат пути не поддерживается."}

в System.Security.Util.StringExpressionSet.CanonicalizePath(String path, Boolean needFullPath)
в System.Security.Util.StringExpressionSet.CreateListFromExpressions(String[] str, Boolean needFullPath)
в System.Security.Permissions.FileIOPermission.AddPathList(FileIOPermissionAccess access, AccessControlActions control, String[] pathListOrig, Boolean checkForDuplicates, Boolean needFullPath, Boolean copyPathList)
в System.Security.Permissions.FileIOPermission..ctor(FileIOPermissionAccess access, AccessControlActions control, String[] pathList, Boolean checkForDuplicates, Boolean needFullPath)
в System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)

Теги:


Спасибо:




18 Ответов
frontman

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


С версией StockSharp.Algo.dll 3.2.11 работает норм.
Автор топика
Спасибо:

Alexander

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


frontman Перейти
С версией StockSharp.Algo.dll 3.2.11 работает норм.


В приведенном вами стэке вызова Start() нет.
Спасибо:

frontman

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


Я понимаю...
Но при выполнении именно на методе Start() вылазит исключение...
Автор топика
Спасибо:

Alexander

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


frontman Перейти
Я понимаю...
Но при выполнении именно на методе Start() вылазит исключение...


что за метод Start? Может это вообще ваш метод?
Пишите полный стэк трэйс.

P.S. Сегодня я роботов своих на 4.0 запустил с boxnet - всё стабильно.
Спасибо:

frontman

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


в System.Security.Util.StringExpressionSet.CanonicalizePath(String path, Boolean needFullPath)
в System.Security.Util.StringExpressionSet.CreateListFromExpressions(String[] str, Boolean needFullPath)
в System.Security.Permissions.FileIOPermission.AddPathList(FileIOPermissionAccess access, AccessControlActions control, String[] pathListOrig, Boolean checkForDuplicates, Boolean needFullPath, Boolean copyPathList)
в System.Security.Permissions.FileIOPermission..ctor(FileIOPermissionAccess access, AccessControlActions control, String[] pathList, Boolean checkForDuplicates, Boolean needFullPath)
в System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)
в System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
в System.IO.StreamWriter.CreateFile(String path, Boolean append)
в System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding, Int32 bufferSize)
в System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding)
в StockSharp.Algo.Logging.FileLogListener.OnCreateWriter(String fileName)
в StockSharp.Algo.Logging.FileLogListener.#=qE4qLJN3$ZdFdyGwKgAJQrA==(String #=qA5rhXKI8pMEODpvfITGmtg==, DateTime #=quMIwYHrLIBPd7LtigMtXFQ==)
в StockSharp.Algo.Logging.FileLogListener.#=q6FBbNoIdhaS82sM$sQQWfcunOBd7oWtKE_h8fi3ADBU=(Pair`2 #=qT3pRpbj9c670fgID3cLt4Q==)
в Ecng.Collections.CollectionHelper.SafeAdd[TKey,TValue](IDictionary`2 dictionary, TKey key, Func`2 handler)
в StockSharp.Algo.Logging.FileLogListener.OnWriteMessage(LogMessage message)
в StockSharp.Algo.Logging.LogListener.WriteMessage(LogMessage message)
в StockSharp.Algo.Logging.LogManager.#=qrUj$Ns0mMAxxqh0k0FFJLB8wrKr4pz7DsmdCpRVKh18=.#=q3S_X0XbExHKU68uzjbFQVxw4VT4yOdgZvBt8Dr1nZXc=(ILogListener #=qeUzjoy2OxlhpLB1gDjK5qQ==)
в Ecng.Collections.CollectionHelper.ForEach[T](IEnumerable`1 source, Action`1 action)
в StockSharp.Algo.Logging.LogManager.#=qm2awVrrxMn_7KT6KAHw0Wg==(LogMessage #=qJiXkieLb13i$V63GpKExqw==)
в Ecng.Common.DelegateHelper.SafeInvoke[T](Action`1 handler, T arg)
в StockSharp.Algo.Strategies.Strategy.#=qJejJd3CFximck1Ty8PsT9EPKQyOAICQQYLAwaf9Tm$c=.#=qiwldTglk91HmDT673OIICA==()
в StockSharp.Algo.Strategies.Strategy.#=qMZYPf9u7uP2NRMimEzapIQsbp7gI6K74kRwappSKbFM=.#=qPOx$JNNJztWOnRSqeoIpvLLRyOiLkvdOqxlU5DAolyM=()
в StockSharp.Algo.Strategies.Strategy.#=qzJ7m9KFjZ1WqVms6QEq6_6T$Gaq8aw80RBw_WGhTPEU=.#=q47bR6lcS4ei5X2OKex$vnQ==(Action #=qM3Fd0SMPkkLJWAsGEgeygw==)
в StockSharp.Algo.Strategies.Strategy.#=qZfkIqus2dTp7a$POMInw9A==(Action #=qzUkVfdoXgIXxwFMdCxJ5sA==)
в StockSharp.Algo.Strategies.Strategy.AddLog(LogMessage message)
в StockSharp.Algo.Logging.LoggingHelper.#=qVNK9c7YsVoutd0rlWHX1Ag==(ILogReceiver #=qKnizXJ6z83UINrjCw4kRlQ==, ErrorTypes #=qdO_YdqlOTKJVY$$EqzUzlw==, String #=qc8ZaHdZ3C1hdxlQNB4IPyg==, Object[] #=qeiiPhIEbmQFm_1z$A4$nHg==)
в StockSharp.Algo.Logging.LoggingHelper.AddInfoLog(ILogReceiver receiver, String message, Object[] args)
в StockSharp.Algo.Strategies.Strategy.#=qvP3APVF6D3fIVp4mb9NVtq31gSXrF7AlpyYeIMawobc=(ProcessStates #=qnjuXvXiirMP2vNMXuuOT1Q==)
в StockSharp.Algo.Strategies.Strategy.Start()
в IRobot.MainWindow.StartStrategy(ITrader trader, Security security, Portfolio portfolio) в C:\Documents and Settings\a.fadeev\мои документы\visual studio 2010\Projects\IRobot\IRobot\MainWindow.xaml.cs:строка 81
в IRobot.MainWindow.ButtonClick(Object sender, RoutedEventArgs e) в C:\Documents and Settings\a.fadeev\мои документы\visual studio 2010\Projects\IRobot\IRobot\MainWindow.xaml.cs:строка 68
в 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)
в MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
в System.Windows.Threading.Dispatcher.InvokeImpl(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.Threading.Dispatcher.Run()
в System.Windows.Application.RunDispatcher(Object ignore)
в System.Windows.Application.RunInternal(Window window)
в System.Windows.Application.Run(Window window)
в System.Windows.Application.Run()
в IRobot.App.Main() в C:\Documents and Settings\a.fadeev\мои документы\visual studio 2010\Projects\IRobot\IRobot\obj\x86\Debug\App.g.cs:строка 0
в System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
в System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
в Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
в System.Threading.ThreadHelper.ThreadStart_Context(Object state)
в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
в System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
в System.Threading.ThreadHelper.ThreadStart()
Автор топика
Спасибо:

frontman

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


Не может это быть связанно с тем что LogManager не может почему то найти файл логов?
Автор топика
Спасибо:

frontman

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


Точно. И почему старая библиотека норм путь воспр а новая нет?!)
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 26.09.2011
Ответить


frontman Перейти
Точно. И почему старая библиотека норм путь воспр а новая нет?!)


Что передается в FileLogListener?
Спасибо:

Alexander

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


Напишите полный кусок кода где создаются ваши логгеры. В частности, как написал Михаил, FileLogListener
Спасибо:

frontman

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


Код
_strategy = new MyStrategy()){Security = security, Trader = trader, Portfolio = portfolio, Name = "Мое", Volume = 1};
var logManager = new LogManager();
logManager.Sources.Add(_strategy);
logManager.Listeners.Add(new GuiLogListener(logControl1));
logManager.Listeners.Add(new FileLogListener(@"C:\Documents and Settings\a.fadeev\Рабочий стол\IRobotLogs.txt"));
_strategy.Start();
Автор топика
Спасибо:

frontman

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


Только не говорите мне что это из за русских символов в пути)
Повторюсь в версии 3.2.11 этот кусок работает...
Автор топика
Спасибо:

Alexander

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


frontman Перейти
Только не говорите мне что это из за русских символов в пути)
Повторюсь в версии 3.2.11 этот кусок работает...


Есть права на запись в "C:\Documents and Settings\a.fadeev\Рабочий стол\IRobotLogs.txt"?
Робот запускается под администратором?
Спасибо:

frontman

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


Да. Вот описываю вам как есть ситуацию:
Ошибка начала вылетать при смене версии библиотеки. Комп тот же, учетка таже.
Робот запускается одинаково.
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 27.09.2011
Ответить


frontman Перейти

logManager.Listeners.Add(new FileLogListener(@"C:\Documents and Settings\a.fadeev\Рабочий стол\IRobotLogs.txt"));


FileLogListener.FileDirectory
Спасибо:

frontman

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


Т.е инициализировать как то так?

Код
logManager.Listeners.Add(new FileLogListener { FileDirectory = @"C:\Documents and Settings\a.fadeev\Рабочий стол\IRobotLogs.txt" });
Автор топика
Спасибо:

Alexander

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


frontman Перейти
Т.е инициализировать как то так?

Код
logManager.Listeners.Add(new FileLogListener { FileDirectory = @"C:\Documents and Settings\a.fadeev\Рабочий стол\IRobotLogs.txt" });


Директория - это именно директория, а не путь. Т.е. C:\Documents and Settings\a.fadeev\Рабочий стол
А в конструктор передавайте сам файл - IRobotLogs.txt
Спасибо:

frontman

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


Понял... Спасибо...
Автор топика
Спасибо:

Alexander

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


frontman Перейти
Понял... Спасибо...


В ближайшей версии можно будет передавать в конструктор полный путь к файлу.
Спасибо:


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

loading
clippy