Что не так не знаю.
Т.к. делфисты молчат, отвечу альтернативой -- передавать указатель.
Что не так не знаю.
Т.к. делфисты молчат, отвечу альтернативой -- передавать указатель.
Не-е ... Тогда-то все и ломается, как я понял.
А если передавать значение,- то все зашибись.
Ввод: напортачено в подпрограмме (извините за малограмотность - не знаю как ее лучше назвать).
Не-е ... Тогда-то все и ломается, как я понял.
Я извиняюсь, вы ссылку от указателя отличаете?
Нет, конечно.
Я, в лучшем случае, способен отличить Static от Based (РL/1). Со ссылкой и с указателем, соответственно :)
Нет, конечно.
Оно и видно.
Если передавать не по ссылке, то все работает
Что может быть не так??
Цитирую Ваш ответ:
передавать указатель.
Цитирую себя, любимого:
напортачено в подпрограмме
Спят усталые эксперты?
Доброго времени!
Делаю ДЛЛ в Дельфи для МТ4
Доброго времени!
Пробую так:
struct OperRes {
OperR, // Тип операции чтения
OperW, // Тип операции записи
OperRes: Integer;
}
Выдает:
'struct' - expression on global scope not allowed F:\MQL4\experts\fxMT4.mq4 (8, 1)
'struct' - variable not defined F:\MQL4\experts\fxMT4.mq4 (8, 1)
В МТ4 нет структур?
Не-е ... Тогда-то все и ломается, как я понял.
А если передавать значение,- то все зашибись.
Ввод: напортачено в подпрограмме (извините за малограмотность - не знаю как ее лучше назвать).
Кастрированную подпрограмму (ей не больно) привожу:
function ProcMT4_Sd(Oper: integer; var Oper1: integer; var Oper2: integer): integer; stdcall;
begin
Result := 10;
Oper1 := 11;
Oper2 := 12;
end;
Ошибка та же
Что здесь можно напортачить?
Как передавать данные из ДЛЛ?
Пока решил сделать шифр для связи с ДЛЛ
Но это СЕКРЕТ
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Доброго времени!
Делаю ДЛЛ в Дельфи для МТ4
Сейчас надо принять из функции 3 целых числа
Делфи:
function ProcMT4_Sd(Oper: integer; var Oper1: integer; var Oper2: integer): integer; stdcall;
МТ4:
#import "PdllMT4.dll"
int ProcMT4_Sd(int Oper, int& Oper1, int& Oper2);
#import
. . .
WriteFxPew = ProcMT4_Sd(OperBar, OperRead, OperWrite);
Выдает:
2011.09.15 20:05:46 fxMT4 EURUSD,M1: function 'ProcMT4_Sd' call from dll 'PdllMT4.dll' critical error
Если передавать не по ссылке, то все работает
Что может быть не так??