Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Да не надо ничего выделять. WM_GETTEXT прекрасно читает из чужих процессов.
kosuhin, первый вариант твоего кода (на 3-й странице) неправильный. А второй вроде нормальный, должен работать. Проверь какое значение возвращает SendMessage. Это должно быть количество скопированных сиволов. А также проверь длину строки в самом Edit с помощью WM_GETTEXTLENGTH
Meat:
Да не надо ничего выделять. WM_GETTEXT прекрасно читает из чужих процессов.
kosuhin, первый вариант твоего кода (на 3-й странице) неправильный. А второй вроде нормальный, должен работать. Проверь какое значение возвращает SendMessage. Это должно быть количество скопированных сиволов. А также проверь длину строки в самом Edit с помощью WM_GETTEXTLENGTH
На всякий случай хочу объяснить в чем была трабла.
Ранее работая с этим исходником я присоединил вот этот файл
#include <winuser32.mqh>
Потом сделал вот так импорт:
когда понадобилась эта функция.
В итоге получил SendMessageA с такими параметрами ( int hWnd, int Msg, int wParam, string lParam ); и ту что находится вот тут winuser32.mqh, она имеет вот такие параметры SendMessageA(int hWnd,int Msg,int wParam,int lParam); в итоге как ни странно никакой ошибки не было, не в компиляторе, не в терминале, но функция SendMessageA возвращала пустое поле, господа будьте внимательны!
Отдельное спасибо Meat, его утверждения заставили меня докопаться до сути проблемы и были направлены в правильную сторону!
Вот такой вот казус.
У меня тоже случались похожие траблы из-за несоответствия типов во включаемых файлах. Действительно не сразу и догадаешься в чём ошибка. Надо просто запомнить: если одна и та же функция импортируется несколько раз, то приоритетным является самый первый импорт, остальные игнорируются. Поэтому в данном случае нужно в коде сначала сделать #import, а уже потом #include
У меня тоже случались похожие траблы из-за несоответствия типов во включаемых файлах. Действительно не сразу и догадаешься в чём ошибка. Надо просто запомнить: если одна и та же функция импортируется несколько раз, то приоритетным является самый первый импорт, остальные игнорируются. Поэтому в данном случае нужно в коде сначала сделать #import, а уже потом #include
Все приходит с опытом )) Виновата конечно моя усталость и невнимательность. Теперь и я буду знать куда копать если что.
А вообще я и не догадывался что при двойном импорте не возникнет ошибки в компиляторе.
Возникает такой вопрос, что делать если эта функция понадобится дважды и с разными типами.
Все приходит с опытом )) Виновата конечно моя усталость и невнимательность. Теперь и я буду знать куда копать если что.
А вообще я и не догадывался что при двойном импорте не возникнет ошибки в компиляторе.
Возникает такой вопрос, что делать если эта функция понадобится дважды и с разными типами.
А для некоторых функций, в частности SendMessage, можно использовать варианты с окончанием A или W. Например для передачи строковых параметров использовать первый вариант с lParam типа string, а для передачи целых значений или массива - второй вариант с типом int, либо int [].
На всякий случай хочу объяснить в чем была трабла.
Ранее работая с этим исходником я присоединил вот этот файл
Потом сделал вот так импорт:
когда понадобилась эта функция.
В итоге получил SendMessageA с такими параметрами ( int hWnd, int Msg, int wParam, string lParam ); и ту что находится вот тут winuser32.mqh, она имеет вот такие параметры SendMessageA(int hWnd,int Msg,int wParam,int lParam); в итоге как ни странно никакой ошибки не было, не в компиляторе, не в терминале, но функция SendMessageA возвращала пустое поле, господа будьте внимательны!
Отдельное спасибо Meat, его утверждения заставили меня докопаться до сути проблемы и были направлены в правильную сторону!
Вот такой вот казус.
Внимательно прочитал весь топик. Пытаюсь считать значение Bid Price из ComboBox. Пытаюсь проверять что возвращает SendMessageA. В результате пустая строка. Подскажите пожалуйста что я не правильно делаю?
Внимательно прочитал весь топик. Пытаюсь считать значение Bid Price из ComboBox. Пытаюсь проверять что возвращает SendMessageA. В результате пустая строка. Подскажите пожалуйста что я не правильно делаю?
1. SendMessageW
2. Не уверен, что будет записано в буфер a.
P. S. Попробовал. Получилось следующим образом:
1. SendMessageW
2. Не уверен, что будет записано в буфер a.
P. S. Попробовал. Получилось следующим образом: