![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать, какой процесс активный? [D7, WinXP]
TStas © (2006-03-31 13:26:00)Есть список процессов, как узнать, у кого фокус и, тоже важно, потом фокус ему вернуть?
Leonid Troyanovsky (2006-04-03 17:58:00) [1]
> TStas © (03.04.06 12:56) [19]
> Не вставляет, правда.
Все очень замечательно вставляет.
Пускаем Блокнот, выделяем строки, жмем ctrl+alt+z (или что там
назначено на ярлык из главного меню).
> На на [12] не ответите?
Дык, это к Керку, видимо.
Или про что?
--
Regards, LVT.
TStas (2006-04-03 12:56:00) [2]Не вставляет, правда. На на [12] не ответите?
Leonid Troyanovsky (2006-04-03 10:46:00) [3]
> Leonid Troyanovsky © (03.04.06 01:24) [15]
> InsertPrefixToLines - вставляет префикс в каждую строку
В каждую выделенную строку, sorry.
--
Regards, LVT.
Leonid Troyanovsky (2006-04-03 10:33:00) [4]
> TStas © (03.04.06 02:56) [16]
> НЕ консольными точно можно 7-ми
У тебя настройки в IDE и DCC32.CFG различаются.
Т.е., видимо, установлена галка Assignable Typed Constants
на закладке Compiler.
--
Regards, LVT.
TStas (2006-04-03 02:56:00) [5]НЕ консольными точно можно 7-ми
Leonid Troyanovsky (2006-04-03 01:24:00) [6]
> TStas © (03.04.06 00:55) [14]
> выражается. Чего-то я преобразования не заметил. А нельзя
> как-то имя окошечка или просто объясните подробнее. Там
> же даже самой функции преобразования нет.
Как же нет? InsertPrefixToLines - вставляет префикс в каждую строку,
_активного_ поля EDIT.
> Странно, что консольные дельфи не хотели типизированную
> константу понимать.
Начиная с D4+, IMHO, типизированные константы, по умолчанию,
изменять нельзя. See also {$J-} compiler directive.
--
Regards, LVT.
TStas (2006-04-03 00:55:00) [7]Leonid Troyanovsk Это я догвадался, а в чем это конкретно выражается. Чего-то я преобразования не заметил. А нельзя как-то имя окошечка или просто объясните подробнее. Там же даже самой функции преобразования нет.
Странно, что консольные дельфи не хотели типизированную константу понимать.
Leonid Troyanovsky (2006-04-02 23:36:00) [8]
> TStas © (02.04.06 23:01) [12]
> К сожалению ничего не понял в ВАшем коде.
А чего там.
При запуске оного приложения (нпаример, по Ctrl+Alt+Z - быстрый вызов
ярлыка из меню Пуск) ищется имеющий фокус ввода потомок (Windows)
EDIT с содержимым, подлежащим преобразованию.
Которое (содержимое) собс-но, и преобразуется.
--
Regards, LVT.
TStas (2006-04-02 23:01:00) [9]К сожалению ничего не понял в ВАшем коде.
Скачал у Керка прогу, которая выдает список адресов процесоов. Как бы получить список заголовков
Leonid Troyanovsky (2006-04-01 19:06:00) [10]
> TStas © (01.04.06 18:18) [10]
> быть присвоена правой, что не так. на сасмом деле
Сделай ее var.
--
Regards, LVT.
TStas (2006-04-01 18:18:00) [11]Скачал Вашу программу, она не компилируется в строке
prefix := ParamStr(1); говорит, что левая чать не может быть присвоена правой, что не так. на сасмом деле
Leonid Troyanovsky (2006-04-01 12:39:00) [12]
> TStas © (01.04.06 12:01) [8]
> бы научиться ДЛЛи писать, а то один "программист" объснил
> мне, что ДЛЛ - вещб лишняя и ненужная.
Может, конечно, и нужная, но вредная.
По поводу проблемы - посмотри
http://groups.google.com/group/borland.public.delphi.winapi/msg/8f29daafee96166a
Когда-то приходилось пользовать для конвертации выделенного текста
(когда Netscape пользовал).
--
Regards, LVT.
TStas (2006-04-01 12:01:00) [13]Розыч. Что тут без хуков не обойдешься я понял, заодно надо бы научиться ДЛЛи писать, а то один "программист" объснил мне, что ДЛЛ - вещб лишняя и ненужная.
ТОлько одно в толк не возьму: задача - исправлять кодировку на готовых солидных приложениях типа аськи, дельфей и браузера. Вот к ним-то как я ДЛЛи приделаю, ведь на них надо хуки ставить.
Скачал статью про хуки (давно), сегодня еще и примеры к ней, чтобы с кодом самим разбираться.
Что это возможно - понятно. Уже запоминает хэндел приложения. Только они ведь (хендлы) локальны:(
Rouse_ (2006-03-31 21:32:00) [14]Тогда ты купил правильную книжку (когда звонил мне на трубу).
Там большая часть всегго этого есть...
TStas (2006-03-31 19:56:00) [15]Вообще разобраться интересно, да и удобно
Rouse_ (2006-03-31 19:52:00) [16]Юзай пунто свитчер и не забивай ерундой себе голову, или ты хочешь разобраться в данной теме?
TStas (2006-03-31 17:50:00) [17]Для чего мне все это нужно. РАспространенная, но неприятная ошибка - набрать текст при другой раскладке клавиатуры.
Есть функция, которая конвертит. Она простенькая совсем. Просто выделить тест, скопировать его, вставить в окно конвртилки и потом все назад - слишком сложно.
Идея такова: ПОлучаю хэндел активного окна и запоминаю его. Выделяю ошибочно набранный текст.
Затем нажимаю на прогу, ккоторую пока не дописал. Она ддолжна послать Ctrl+c, затем конвертировать. Вот тут-то фокус ей и передстся. Теперь надо вернуть его на место и сделать окно, котороебыло активным опять активным. Хендел его запомнем.
Ну и послать Ctrl+v Все. Половину не знаю как делать на дельфи, но скрипт хостиом делается на ура.
Но то, что посоветовали в последний раз никак не выносит окно на передний план.
>tipman К сожлению, не делает
tipman (2006-03-31 16:29:00) [18]гы, так SetForegroundWindow и сделает...
TStas (2006-03-31 15:41:00) [19]А как потом его активным опять сделать?
Rouse_ (2006-03-31 14:26:00) [20]GetForegroundWindow даст хэндл окна, GetWindowThreadProcessId вернет ID потока и процесса, которому принадлежит данное окно