|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] AutoIt работа с памятью. |
|
|
[решено] AutoIt работа с памятью.
|
Пользователь Сообщения: 87 |
Профиль | Отправить PM | Цитировать
Возник вопрос, могу ли я с помощью AutoIt не только считывать данные из памяти конкретного процесса, а зарезервировать в оперативной памяти n-ное количество ячеек которые будут хранить в себе определенные числа которые будут в режиме реального времени изменяться и далее считываться другим скриптом? Думал про работу через ini, но все же более интересен аспект работы с памятью
Или же если возможно то хотелось бы узнать можно ли структурировать по ячейкам буфер обмена, чтобы туда в определенные ячейки заносились данные одним скриптом и потом считывались другим скриптом. ClipGet ClipPut как я понял работает на весь буфер ini не предлагать, решение проблемы с помощью ини я знаю, хотелось бы узнать можно ли работать так с памятью и или буфером обмена. |
|
Отправлено: 22:18, 22-06-2009 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Не знаю на счёт памяти (уже не говорю о б.обмена), но пример интеракции между скриптами (через WM_COPYDATA) есть тут (также ещё один пример с использованием WM_COPYDATA есть тут, только в нём немного другая концепция).
Ну и простой пример интеракции: Отправитель.au3: Получатель.au3: AutoItWinSetTitle("~MyAu3_Interaction_Window") While 1 Sleep(10) $sData = ControlGetText("[CLASS:AutoIt v3;TITLE:~MyAu3_Interaction_Window]", "", "Edit1") If $sData <> "" Then ControlSetText("[CLASS:AutoIt v3;TITLE:~MyAu3_Interaction_Window]", "", "Edit1", "") MsgBox(64, @ScriptName & ' - Interaction recieved:', $sData) Exit EndIf WEnd |
------- Отправлено: 00:00, 23-06-2009 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 87
|
Профиль | Отправить PM | Цитировать Меня к сожалению интерисует интеракция именно по средством использования ячеек памяти или же дробления клипборда на ячейки
|
Отправлено: 01:04, 23-06-2009 | #3 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Можно поинтересоваться, к чему такая специфика?
|
------- Отправлено: 01:35, 23-06-2009 | #4 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Belfigor, в принципе можно расшарить кусок памяти, поименовать и сделать доступным другим процессам, хотя придется поковыряться в API... НО для начала нужно четко представлять алгоритм синхронизации доступа, т.к. одновременно открыть объект на запись сможет только один процесс, советую для начала реализовать через обыкновенные файлы
|
|
Отправлено: 10:20, 23-06-2009 | #5 |
Пользователь Сообщения: 87
|
Профиль | Отправить PM | Цитировать Creat0R, ну... Просто это два вида интеракции скриптов которые мне было бы интересно освоить.
amel27, спасибо, буду курить API. Синхронизация доступа достаточно простая, запись будет производить один единственный скрипт, остальные будут читать |
Отправлено: 10:50, 23-06-2009 | #6 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать |
Отправлено: 10:54, 23-06-2009 | #7 |
Пользователь Сообщения: 87
|
Профиль | Отправить PM | Цитировать Интеракцию между скриптами через память делаем через:
_MemoryWrite($iv_Address, $ah_Handle, $v_Data, $sv_Type = 'dword') _MemoryRead($iv_Address, $ah_Handle, $sv_Type = 'dword') |
Последний раз редактировалось Belfigor, 29-07-2009 в 09:22. Отправлено: 05:00, 20-07-2009 | #8 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата Belfigor:
|
|
Отправлено: 09:11, 20-07-2009 | #9 |
Пользователь Сообщения: 87
|
Профиль | Отправить PM | Цитировать Согласен, и если кто-нибудь подскажет любую идею, я с радостью сяду и попытаюсь ее реализовать. Несмотря на то что в данный момент мой скрипт вполне выполняет возложенные на себя надежды.
P.S. На разных компьютерах память может определяться к процессу по разному. ПО этому хотелось бы что-бы кто-нибудь подсказал интеракции скриптов друг между другом чтобы они знали какой скрипт куда пишет свое значение. |
Отправлено: 00:38, 21-07-2009 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Delphi - Delphi | Работа с памятью чужого процесса, перехват API | Savant | Программирование и базы данных | 17 | 11-04-2012 13:06 | |
Работа с LDAP в autoIT | iDemon | AutoIt | 0 | 30-05-2009 15:50 | |
Разное - [решено] Работа со списками на AutoIt | Demka_DV | AutoIt | 3 | 14-05-2009 11:10 | |
[решено] Проблема с памятью | Quickly | Материнские платы и память | 2 | 13-11-2008 16:27 | |
[решено] траблы с памятью | Kazus | Непонятные проблемы с Железом | 15 | 24-05-2007 14:04 |
|