Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
CplplNoob
0 / 0 / 0
Регистрация: 10.02.2013
Сообщений: 62
#1

Чтение из файла - C++

10.02.2013, 21:03. Просмотров 1374. Ответов 41
Метки нет (Все метки)

Люди, помогите, пжлст, новичку! Задача следующая есть файл abc.txt с наdписью abc10.12. Нужно сымитировать нажатие клавиш для цифр и точек (т.е. без abc). Никак не получается
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2013, 21:03     Чтение из файла
Посмотрите здесь:

C++ Чтение из файла
C++ Чтение из файла
C++ Чтение файла
Чтение из файла C++
чтение из файла C++
C++ Чтение из файла
C++ Чтение из файла
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CplplNoob
0 / 0 / 0
Регистрация: 10.02.2013
Сообщений: 62
13.02.2013, 23:14  [ТС]     Чтение из файла #41
Цитата Сообщение от CplplNoob Посмотреть сообщение
А что делать с этой строкой?
ip.ki.wVk = 0x41; // virtual-key code for the "a" key

и вместо "12345" можно подставить переменную, в которой содержится набор символов из файла?
К сожалению, тема актуальна. Ау, люди, нужна помощь. Как передать сообщение из массива формата char в поле ввода окна (курсор находится в поле ввода)?

Добавлено через 1 час 15 минут
Цитата Сообщение от CplplNoob Посмотреть сообщение
К сожалению, тема актуальна. Ау, люди, нужна помощь. Как передать сообщение из массива формата char в поле ввода окна (курсор находится в поле ввода)?
Так, вроде бы получилось вот код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 INPUT ip;
      for (int z = 0; z < 8; ++z)
{    char x = lot[z];
    
    {ip.type = INPUT_KEYBOARD;
 ip.ki.wScan = 0; // hardware scan code for key
 ip.ki.time = 0;
 ip.ki.dwExtraInfo = 0;
 ip.ki.wVk =  (unsigned short)((unsigned char)(x)); 
 ip.ki.dwFlags = 0; // 0 for key press
 SendInput(1, &ip, sizeof(INPUT));
 ip.ki.dwFlags = KEYEVENTF_KEYUP; // KEYEVENTF_KEYUP for key release
 SendInput(1, &ip, sizeof(INPUT));
    }}
Проблема в следующем: значение lot = 1.2, а передается 12 - не ставится точка. Не могу понять почему?

Добавлено через 22 часа 8 минут
Цитата Сообщение от Vourhey Посмотреть сообщение
На что изменить типы данных в коде я тебе уже писал - wchar_t вместо char.
Вот что получилось

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 INPUT ip;
      for (int z = 0; z < 8; ++z)
{    char x = lot[z];
    
    {ip.type = INPUT_KEYBOARD;
 ip.ki.wScan = 0; // hardware scan code for key
 ip.ki.time = 0;
 ip.ki.dwExtraInfo = 0;
 ip.ki.wVk =  (unsigned short)((unsigned char)(x)); 
 ip.ki.dwFlags = 0; // 0 for key press
 SendInput(1, &ip, sizeof(INPUT));
 ip.ki.dwFlags = KEYEVENTF_KEYUP; // KEYEVENTF_KEYUP for key release
 SendInput(1, &ip, sizeof(INPUT));
    }}
Но теперь другая проблема не ставится точка для десятых вместо 2.5 выводит 25.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.02.2013, 21:17     Чтение из файла
Еще ссылки по теме:

чтение из файла C++
чтение из файла C++
Чтение из файла C++
Чтение из Файла C++
чтение из файла C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
CplplNoob
0 / 0 / 0
Регистрация: 10.02.2013
Сообщений: 62
17.02.2013, 21:17  [ТС]     Чтение из файла #42
Люди, ну выручайте же, как поставить эту долбанную точку разделитель ? Почему она не ставится?
Yandex
Объявления
17.02.2013, 21:17     Чтение из файла
Ответ Создать тему
Опции темы

Текущее время: 19:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru