Попробуйте передать неинициализированную строку
string null_string; int handle=FindWindowA(null_string,"window name");
Попробуйте передать неинициализированную строку
string null_string; int handle=FindWindowA(null_string,"window name");
пробывал - не помогает
если конечно null_string не зарезервированное слово с особыми параметрами.
я так думаю что данная функция проверяет наличие имени класса и если он есть то ищет по нему.
Но мне не удается ее убедить что мне нужно искать по имени окна. ИМХO.
Конечно легко решается другими путями, но все же.
Покажите Ваш код. Я проверю
#import "user32.dll" int FindWindowA(string lpClassName ,string lpWindowName); int init() { int hwnd; string null_string; string str; str="My Computer"; Comment ("1"); hwnd=FindWindowA(null_string,str); Comment (hwnd); return(0); }
Первый коомент печатается до второго не доходим.
Судя по всему выходим по ошибке.
Судя по MSDN первый параметр не может быть NULL
===
lpClassName
[in] Pointer to a null-terminated string that specifies the class name or a class atom created by a previous call to the RegisterClass or RegisterClassEx function. The atom must be in the low-order word of lpClassName; the high-order word must be zero.
If lpClassName is a string, it specifies the window class name. The class name can be any name registered with RegisterClass or RegisterClassEx, or any of the predefined control-class names.
===
а вот второй параметр - может быть
===
lpWindowName
[in] Pointer to a null-terminated string that specifies the window name (the window's title). If this parameter is NULL, all window names match.
===
если функция ничего не нашла, то возвращается 0.
Второй коммент благополучно выводится. И именно 0.
И вообще, для таких целей лучше использовать не Comment, а Print - следы в логе остаются
===
lpClassName
[in] Pointer to a null-terminated string that specifies the class name or a class atom created by a previous call to the RegisterClass or RegisterClassEx function. The atom must be in the low-order word of lpClassName; the high-order word must be zero.
If lpClassName is a string, it specifies the window class name. The class name can be any name registered with RegisterClass or RegisterClassEx, or any of the predefined control-class names.
===
а вот второй параметр - может быть
===
lpWindowName
[in] Pointer to a null-terminated string that specifies the window name (the window's title). If this parameter is NULL, all window names match.
===
если функция ничего не нашла, то возвращается 0.
Второй коммент благополучно выводится. И именно 0.
И вообще, для таких целей лучше использовать не Comment, а Print - следы в логе остаются
А лог файл вроде бы записывается при закрытии терминала?
По крайней мере я только так добился обновления лога.
Но вопрос все равно открыт.
Попробуйте найти хоть одно окно пожалуйста.
По крайней мере я только так добился обновления лога.
Но вопрос все равно открыт.
Попробуйте найти хоть одно окно пожалуйста.
А лог файл вроде бы записывается при закрытии терминала?
Правой кнопкой на любой строке лога -> Открыть ;)
Теперь понял
А я делаю сделку - открываю лог вручную - а там нет ничего.
Выхожу из терминала - все ок
А выясняется что сбрасывание данных происходит через попу.
Вопрос с FindWindowA остается открытым.
А я делаю сделку - открываю лог вручную - а там нет ничего.
Выхожу из терминала - все ок
А выясняется что сбрасывание данных происходит через попу.
Вопрос с FindWindowA остается открытым.
Из контекстного меню вкладки Experts (там, где экспертные логи) выберите пункт "Открыть" (Open). Тогда лог сбросится на диск
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
тут читал "MT и сообщения"
но скорее всего затык с первым параметром
int FindWindowA(string lpClassName ,string lpWindowName);
Как туда Null передать?