Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.01.2019, 17:32   #31
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от R71MT Посмотреть сообщение
в том-то и дело, что глобальные атомы доступны всем,
но есть ещё и локальные, в таблице LAT - они доступны только текущему процессу с его потоками
И? Какое отношение это имеет к
Цитата:
Сообщение от Aliens_wolfs Посмотреть сообщение
этот метод подойдет только для использование между своими программами.
?

Хоть в интернет свои атомы загрузите, чужому приложению пофиг на них.

Автор впрочем не говорил, что какое-то из них чужое.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 30.01.2019, 17:48   #32
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
чужому приложению пофиг на них.
вы уверены в этом? может есть смысл маны почитать, а не фигами разбрасываться?
глобальные атомы могут читать любые приложения в системе (если им это нужно), на то они и глобальные.
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 30.01.2019, 17:50   #33
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Вы собщение-то читали, на которое отвечали?
Как вы скажете чужому приложению что ему нужно?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 30.01.2019, 18:00   #34
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

"чужое" приложение ждёт события, которым и является запись мною атома - пусть читает GAT и проверяет строку. С тех.точки зрения, это самый простой вариант (чем мессаги и прочее, где нужно знать ID-получателя на форме, если их несколько)
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 30.01.2019, 18:02   #35
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Вы так и не поняли что значит чужое и свое.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 30.01.2019, 18:56   #36
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

а что тут не понятного?
допустим мой процесс порождает/запускает ещё 10-процессов - все они по отношению ко мне чужие, т.е. выполняются в своих адресных пространствах.

Я им/всем могу послать широковещательную строку в виде глобального атома, и все эти 10-процессов могут считать его из GAT, на основании чего выполнить что-либо (если строка валидна конкретно для этого процесса).
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 30.01.2019, 19:00   #37
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

вот вырезка из васма:
Цитата:
Атомы
-------------------
Атомы - это очень простой и доступный путь IPC. Идея состоит в том, что процесс может поместить строку в таблицу атомов и эта строка будет видна другим процессам. Когда процесс помещает строку в таблицу атомов, он получает 32-х битное значение (атом), и это значение используется для доступа к строке. Система не различает регистр строки. Есть два типа таблиц атомов - глобальная (GAT) и локальная (LAT).
Код:
; Добавление строки в GAT
    push  address_of_string       ; нуль строка, макс.255 байт
    call  GlobalAddAtom(A/W)      ; возвращает в eax атом
 
; Удаление атома из GAT
    push  atom
    call  GlobalDeleteAtom(A/W)   ; 0 = OK.
 
; Поиск атома
    push  адрес_строки            ; нуль строка, макс.256 байт
    call  GlobalFindAtom(A/W)     ; возвращает атом, или 0=ошибка
 
; Получить строку атома, имея атом
    push  size_of_buffer          ; длина буфера
    push  address_of_buffer       ; буфер
    push  atom                    ; атом
    call  GlobalGetAtomName(A/W)  ; в буфере будет строка атома
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 30.01.2019, 19:00   #38
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

чужие == разработанные кем-то другим, у вас нет исходников или возможности попросить их изменить
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 31.01.2019, 15:30   #39
Aliens_wolfs
Форумчанин
 
Регистрация: 16.12.2009
Сообщений: 902
По умолчанию

Цитата:
Сообщение от Alex11223
Автор впрочем не говорил, что какое-то из них чужое.
Я извиняюсь неправильно задал вопрос.
Нужно было наверное так.
Можно ли использовать метод атомов в сторонних приложениях?
Я уже понял что нет, это я для себя хотел понять, у меня просто как то стояла задача брать информацию из стороннего приложения.

Последний раз редактировалось Aliens_wolfs; 31.01.2019 в 15:34.
Aliens_wolfs вне форума Ответить с цитированием
Старый 17.04.2019, 21:05   #40
linda88
Пользователь
 
Регистрация: 17.01.2019
Сообщений: 78
По умолчанию

нет мне нужно чтобы я написала два разных приложения одно запускает другое но если вдруг залезут в папку и второе приложение удалят и тем же названием кинут другое то приложение которое запустило его не получит правильный ответ на свой запрос и закроет его.
linda88 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как открыть .exe файл Hac Общие вопросы C/C++ 1 22.10.2018 19:51
с++ как открыть exe файл в программе ? proef Помощь студентам 2 10.11.2013 01:35
как открыть exe файл в Builder C++ для его изменения C-Jay C++ Builder 3 05.05.2010 21:51
Как открыть файл .exe применяя гиперссылку segail Microsoft Office Excel 4 15.06.2009 23:55