Добрый день.
Пытаюсь реализовать робота (стороннее приложение), пишу на Java, есть фреймворк, который позволяет юзать код native библиотек (JNA, кому интересно). Просьба сразу не винить используемый "велосипед", т.к. невозможно достать из NT только определённые данные (далее подробно). По специальности не программист и опыта не так много, потому обращаюсь к более опытным с просьбой помочь.
Формально проблема в следующем - из либы NtDirect.dll следующие функции:
Filled, ConfirmOrders, MarketPosition, Orders, OrderStatus - всегда возвращают пустое значение или 0.
В то же время как MarketData, RealizedPnL, CashValue, BuyingPower, NewOrderId и др работают нормально безо всяких проблем.
Перелопатил весь гугл - схожей проблемы не нашел, переставлял терминал, на всякий случай .NET Framework - не помогло. Пока юзаю демку - на ней же и тестирую, по словам поддержки это не никак не влияет на предоставляемый функционал.
В начале маловероятные, но всё таки терзающие душу вопросы:
1) Может ли быть источником проблемы разрядность винды (у меня х64) ?
2) Может ли быть загвоздка, если .NET установлен выше версией, чем 3.5 ?
3) Может ли быть проблемой передача каких нибудь определённых типов (например String) из .dll (точно не знаю, на чём она - С\С++\С#) в Java?
(Хотя странно, т.к. например функция NewOrderId нормально принимает и возвращает строку)
Ну и вообще может кто-то сталкивался подобной проблемой или видит, куда нужно копать.
Спасибо.
Пытаюсь реализовать робота (стороннее приложение), пишу на Java, есть фреймворк, который позволяет юзать код native библиотек (JNA, кому интересно). Просьба сразу не винить используемый "велосипед", т.к. невозможно достать из NT только определённые данные (далее подробно). По специальности не программист и опыта не так много, потому обращаюсь к более опытным с просьбой помочь.
Формально проблема в следующем - из либы NtDirect.dll следующие функции:
Filled, ConfirmOrders, MarketPosition, Orders, OrderStatus - всегда возвращают пустое значение или 0.
В то же время как MarketData, RealizedPnL, CashValue, BuyingPower, NewOrderId и др работают нормально безо всяких проблем.
Перелопатил весь гугл - схожей проблемы не нашел, переставлял терминал, на всякий случай .NET Framework - не помогло. Пока юзаю демку - на ней же и тестирую, по словам поддержки это не никак не влияет на предоставляемый функционал.
В начале маловероятные, но всё таки терзающие душу вопросы:
1) Может ли быть источником проблемы разрядность винды (у меня х64) ?
2) Может ли быть загвоздка, если .NET установлен выше версией, чем 3.5 ?
3) Может ли быть проблемой передача каких нибудь определённых типов (например String) из .dll (точно не знаю, на чём она - С\С++\С#) в Java?
(Хотя странно, т.к. например функция NewOrderId нормально принимает и возвращает строку)
Ну и вообще может кто-то сталкивался подобной проблемой или видит, куда нужно копать.
Спасибо.