|
|
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Привет! Пытаюсь с помощью PascalScript послать чужому окну нажатие клавиши. В приват секции описываю свою процедуру: Код: pascal 1. Регистрирую свою процедуру: Код: pascal 1. 2. 3. 4. Сама процедура: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. Сама Delphi компилирует программу без ошибок. В редакторе кода своей программы (memo), пишу ту самую процедуру: Код: pascal 1. Но PSScript1 не может её скомпилировать.. До этого я сделал еще несколько процедур, типа эмуляция кликов, эмуляция нажатия клавиш - всё работает. А с SendMessage непонятные проблемы, которые как я очень надеюсь, вы поможете мне решить)) ЗЫ SendMessage просит Cardinal, а я передаю Word. Но я пробовал передавать и Cardinal, тоже не компилируется.. Помогите пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 17:58 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Tech N9ne Но PSScript1 не может её скомпилировать.. Как ты узнал, что "не может"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 18:04 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
ъъъъъ Tech N9ne Но PSScript1 не может её скомпилировать.. Как ты узнал, что "не может"? if PSScript1.Compile then // если скомпилилось, значит всё ок, можно запускать begin PSScript1.Execute; end else // если скомпилировать не получилось... begin showmessage(что-то не так.); end; Узнал потому что срабатывает showmessage) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 18:12 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Tech N9ne Узнал потому что срабатывает showmessage) То есть, компиляция выполнилась? А отладчик? Ну, тупо в интерпретаторе воткнуть брекпоинт в точке, где вызывается процедура и посмотреть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 18:17 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
ъъъъъ Tech N9ne Узнал потому что срабатывает showmessage) То есть, компиляция выполнилась? А отладчик? Ну, тупо в интерпретаторе воткнуть брекпоинт в точке, где вызывается процедура и посмотреть? Я никогда не пользовался брейпоинтами, не знаю даже куда смотреть.. На скрине переменная i и poz я проверяю,, если в конце строк в мемо нет " ; ", то ставлю. Сделано для удобства.. В остальном, я не понимаю, куда смотреть, что искать) Извините за тупость)) Брейкпоинт поставил на Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 18:38 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Tech N9ne В остальном, я не понимаю, куда смотреть, что искать) Извините за тупость)) Нет, не извиняю. Вот - начало цикла статей: https://habr.com/ru/post/178007/ Изучай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 18:41 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Tech N9ne Сама процедура: Код: pascal 1. У этой процедуры есть негласный параметр Self, который передается первым. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 18:45 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
wadman Tech N9ne Сама процедура: Код: pascal 1. У этой процедуры есть негласный параметр Self, который передается первым. В FastScript сие учитывается. Возможно, и в PascalScript тоже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 18:48 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
ъъъъъ В FastScript сие учитывается. А как там предусмотрено, если процедура не объекту принадлежит? По разному регистрируются? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:03 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Ну в самом коде я не ошибся? Всё верно написал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:10 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Tech N9ne Для начала, не помешает прочитать что пишет PascalScript при неудачной компиляции. В семплах есть пример : Код: pascal 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:13 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Регистрируется функция как описание + небольшой хинт. Код: pascal 1. 2. 3. 4. 5. 6. Пример: Код: pascal 1. 2. 3. 4. В событии объекта скрипта OnUserFunction тупо анализируется имя метода и вызывается всё, что хочешь, хоть метод объекта, хоть просто функция Код: pascal 1. 2. 3. 4. 5. Точно также регистрируются и методы скриптовых классов, только при регистрации указывается специальный метод реализации. А в нем уже зовешь всё, что надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:21 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Tech N9ne Ну в самом коде я не ошибся? Всё верно написал? Иди про отладчик читай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:22 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
zedxxx Tech N9ne Для начала, не помешает прочитать что пишет PascalScript при неудачной компиляции. В семплах есть пример : Код: pascal 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:28 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
ъъъъъ Tech N9ne Ну в самом коде я не ошибся? Всё верно написал? Иди про отладчик читай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:28 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Ну, а какой синтаксис регистрации новых функций? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:32 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Врать мне зачем? Я хочу решить проблему, я сам же и заинтересован в том, что бы объяснить свою проблему как она есть. Я действительно не врал, и срабатывало "else". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:34 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:39 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, Попробуйте регистрировать не метод, а функцию (соответственно и SendKey объявить как простую процедуру, а не метод класса). Вы же в SendKey всё равно никаких полей формы не юзаете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:42 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Tech N9ne Код: pascal 1. А в PS есть типы PWideChar и Word? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 19:50 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
ъъъъъ, Да, похоже загвоздка с PWideChar - такого типа действительно нету (так же, как и PAnsiChar). Есть только PChar, его и надо использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 20:02 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
zedxxx, Да, теперь всё работает, спасибо огромное! Всем спасибо ребят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 20:36 |
|
||
|
PascalScript и функция SendMessage
|
|||
|---|---|---|---|
|
#18+
Tech N9ne zedxxx, Да, теперь всё работает, спасибо огромное! Всем спасибо ребят. Отладчик изучи, глупый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2021, 20:41 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=40040656&tid=2037661]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
148ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 424ms |

| 0 / 0 |
