|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
15.02.2017, 21:13 | #21 |
Участник клуба
Регистрация: 17.05.2011
Сообщений: 1,660
|
|
16.02.2017, 20:11 | #22 |
Пользователь
Регистрация: 14.02.2017
Сообщений: 16
|
|
22.02.2017, 20:24 | #23 |
Пользователь
Регистрация: 14.02.2017
Сообщений: 16
|
Попробовал запрограммировалть первую задачу на PureBasic. Оказалось, что функция слежения за изменением буфера обмена не только отсутствует в PB, но из Windows API её непосредственно не вызовешь. Код приводить не буду, достаточно будет сказать, что он весьма напоминает С, представляет из себя прграммирование на низком уровне и занимает некоторое количество строк. Может быть, моя задача случайно попала на слабое место PB, не знаю. Но для данной конкретной задачи он не подходит. К сожалению.
Попытаюсь сделать на нескольких языках: Python, C#, F#, Hiasm. Кстати, последний справился с выводом буфера обмена элементарно. |
22.02.2017, 20:32 | #24 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
F# вряд ли будет простым если нет опыта в функциональном программировании )
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
22.02.2017, 21:49 | #25 |
Пользователь
Регистрация: 14.02.2017
Сообщений: 16
|
Опыта нет. Поизучаю. По ходу дела мне стало меньше жаль потраченного времени, стало интересно, на каком языке такая задача решается проще. Тут собственно три задачи. Первая -- показывать актуальное содержимое буфера обмена. Вторая -- обрабатывать содержимое буфера обмена, то есть работа со строками. Третья -- интерфейс.
Последний раз редактировалось mawotimug; 22.02.2017 в 22:17. Причина: дополнение |
23.02.2017, 08:23 | #26 |
Пользователь
Регистрация: 14.02.2017
Сообщений: 16
|
Закончил программу на Hiasm и стало очевидно, что сравнение языков программирования (или, точнее, способов проектирования ПО) для решения данной задачи за явным преимуществом выиграет Hiasm. Привожу схему:
Всё исключительно просто, чуть посложнее только функция "Перенос" из-за того, что нужно проверять, есть ли в конце дефис, и если есть, то удалять его: А так выглядит интерфейс: Последний раз редактировалось mawotimug; 23.02.2017 в 10:02. Причина: изменение: интерфейс |
23.02.2017, 11:57 | #27 | |
Участник клуба
Регистрация: 17.05.2011
Сообщений: 1,660
|
Цитата:
|
|
23.02.2017, 16:00 | #28 | |
Пользователь
Регистрация: 14.02.2017
Сообщений: 16
|
Цитата:
Проблема с буфером обмена. Хотя... можно написать так же, как я сделал на Autoit: проверять в цикле, изменилось ли содержимое буфера. За 10 минут у меня точно не получится -- рука не набита. Но Вы меня вдохновили. Сейчас попробую сделать. |
|
23.02.2017, 16:54 | #29 |
Пользователь
Регистрация: 14.02.2017
Сообщений: 16
|
Получилось так:
Код:
|
23.02.2017, 17:20 | #30 |
Участник клуба
Регистрация: 17.05.2011
Сообщений: 1,660
|
У вас номер окна Пурика, а надо его HWND, это WindowID
Код:
Вот так правильно следить за изменениями буфера обмена (без проверок в цикле!) Код:
Последний раз редактировалось kvitaliy; 23.02.2017 в 17:23. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Язык программирования С++. "Оконное приложение «Калькулятор»" | emin1993 | Помощь студентам | 2 | 14.04.2012 23:35 |