Как передать в DLL указатель на переменную типа viod

 
Подскажите пожалуйста как передать в DLL указатель на переменную типа viod, вернее как обойти этот вопрос.
Ну что не делал, вылетает в крэш.

Description

Creates an instance of the neural network contained within the DLL. 
You must call createNetwork to get a pointer to a neural network instance 
before calling any other functions in the DLL protocol. 
All other functions require a pointer to a network instance to be passed in as 
a parameter. 
This function returns an integer value indicating whether the function succeeded or failed.

Prototype

int createNetwork(void *&aNN, int networkType)

Parameter Description

aNN Pointer to the neural network instance set by the createNetwork function.

networkType 0 = NSRecallNetwork, 1 = NSLearningNetwork.



На С++ это делается прсто, а вот как это сделать из mql ну ни как не придумаю!

void *nn;

int returnValue1 = createNetwork(nn, NSLearningNetwork);



 
Slawa, я позволю себе обратится к Вам, как профессионалу и потому, что Вы уже писали по этому поводу.
Но здесь случай несколько иной, идет передача по ссылке на указатель да еще переменной типа void.

Я уже пробовал и указатель на строковую переменную и на одномерный массив с одним элементом ставить, ничего не помогает, вылетает в крэш.

Помогите разобраться пожалуйста.

С уважением
Сергей
 
Скорее всего дело в Вашей dll. Одномерный массив из одного элемента (кстати, какого типа?) должен был прокатить.

Вы пробовали передавать по ссылке данные какого-то определённого типа?
 
Slawa, с наступающим Вас и весь ваш коллектив Новым годом. Спасибо за ваш труд.
Лучше терминала нет в принципе!

По моему вопросу.

Что Вы имеете ввиду "всего дело в Вашей dll"?
DLL создается в программе NeuroSolution 5, а это профессиональный инструмент.

Массив пробовал типа string и int.

#import "Breadboard2.dll"
  int createNetwork(int& pNeuralNetwork[], int networkType);
#import
..........................
   int arr[1];
   int NetType=0;
   res =createNetwork(arr, NetType);// res=0 норма, -1 ошибка создания сети
 .........................



Выпадает в крэш.

С уважением

Сергей

 
Slawa, с наступающим Вас и весь ваш коллектив Новым годом. Спасибо за ваш труд.
Лучше терминала нет в принципе!

По моему вопросу.

Что Вы имеете ввиду "всего дело в Вашей dll"?
DLL создается в программе NeuroSolution 5, а это профессиональный инструмент.

Массив пробовал типа string и int.

#import "Breadboard2.dll"
  int createNetwork(int& pNeuralNetwork[], int networkType);
#import
..........................
   int arr[1];
   int NetType=0;
   res =createNetwork(arr, NetType);// res=0 норма, -1 ошибка создания сети
 .........................



Выпадает в крэш.

С уважением

Сергей



Только через промежуточную DLL. Все отменно лаботает.
 

Sergey_Murzinov 24.01.08 17:38

Только через промежуточную DLL. Все отменно работает.



Спасибо, я уже давно так и сделал.

Интегрирующая DLL, работает с любым количеством библиотек (сетей) предварительно созданных NS5 и естественно с полным набором функций.

С уважением
 

Sergey_Murzinov 24.01.08 17:38

Только через промежуточную DLL. Все отменно работает.



Спасибо, я уже давно так и сделал.

Интегрирующая DLL, работает с любым количеством библиотек (сетей) предварительно созданных NS5 и естественно с полным набором функций.

С уважением

Если есть желание пообщаться ICQ 428715765
 
Если есть желание пообщаться ICQ 428715765


Можно конечно, не вопрос, только лучше по почте gsb[AT]gtn.ru
Причина обращения: