|
|
|
Глобальные переменные03.10.2021, 14:10. Показов 2882. Ответов 34
Метки нет (Все метки)
Для обмена между приложениями, работающими на одном компьютере, предлагалось использовать глобальные переменные. Хотелось бы посмотреть пример такого использования.
Не пойму, как они будут видны.
0
|
|
| 03.10.2021, 14:10 | |
|
Ответы с готовыми решениями:
34
Как получить глобальные координаты курсора мыши
|
|
Наивное Существо
|
|
| 03.10.2021, 16:18 | |
|
Argus19, а обычный буфер обмена не подходит?
Range("B17").Select Selection.Copy Range("D18").Select ActiveSheet.Paste при обычном использовании я его использую. Но программировать специально у меня не было цели ещё. Просто так между прогами офиса как пользователь - без проблем .
0
|
|
|
Наивное Существо
|
||
| 03.10.2021, 17:24 | ||
|
The trick,
А Аргусу19 надо просто конекретное решение ))))
0
|
||
|
Модератор
|
|
| 03.10.2021, 17:31 | |
|
vedunasv, через глобальные переменные конечно можно, только я думаю автора не устроит такой вариант вследствии отсутсвия синхронизированного доступа. Такие задачи обычно решаются несколько иначе (не зря в винде куча видов IPC). Нужно знать конкретно задачу и уже выстраивать под нее решение. Проще создать глобальный объект, опционально зарегать его в ROT и любым приложением активировать его через GetObject, как это делается с теми же Word/Excel.
0
|
|
|
|
|
| 03.10.2021, 19:15 [ТС] | |
|
Все решения, которые я нашёл в интернете, имеют довольно хлопотную реализацию. Я сделал управление программным генератором звуковых частот с помощью буфера обмена. Это самый простой вариант, но не гарантирующий использование буфера обмена другими программами и самой Windows.
Понятие "глобальные переменные" На слух звучат привлекательно. Смущает то, что все приложения изолированы и работают в своих участках памяти. Вопрос в области их видимости. По логике, Private и Public видимы в одном приложении, а Global, опять же, по логике, должны видеться всеми приложениями. Но это я так думаю. Задача простая. Я декомпилировал пару персонажей MS Agent, чтобы не регистрировать их в системе. С ними была странная проблема: пропадала прозрачность и персонаж "замерзал" на месте, хотя в Immediate виделось, что у него меняются координаты и он движется. Вчера, занимаясь совсем другой программой, понял свою ошибку. Теперь задача: передавать команды управления и ожидать завершение анимации. Нужен простой в реализации способ без регистрации в системе. Надеялся, что глобальные переменные будут видимы двумя приложениями и опрос их по таймерам сможет организовать взаимодействие.
0
|
|
|
Модератор
|
|||
| 03.10.2021, 19:33 | |||
|
0
|
|||
|
|
||
| 03.10.2021, 19:57 [ТС] | ||
|
Если ограничить перемещение персонажа только по форме, то всё решается тривиально. Я вот тут привёл пример: how can fast find small picture in screen Никуда он оттуда не денется и не "замёрзнет" . Можно форму растянуть на весь экран и нет проблем.А можно разных персонажей использовать для разных приложений. Для этого желательно, чтобы персонажи были сами по себе. Чтобы их только стартовать и управлять ими. Только, возможно, что кроме меня это никого не заинтересует.
0
|
||
|
|
|
| 03.10.2021, 23:00 [ТС] | |
|
Нашёл кусок кода.
Тут всё работает из события Form_Load. Но даже в этом случае, при кликом мыши по изображению, происходит проблема. После появления формы, кроме этого, иногда эффект возникает после вызова Voice.Speak .
0
|
|
|
|
||
| 03.10.2021, 23:58 [ТС] | ||
|
Добавил в полную программу с основной формой. Voice.Speak делает фон чёрным, но после произнесения фразы, прозрачность восстанавливается. Надо ещё просмотреть код, может что-то пропустил. Я там наставил SetFocus. Надо посмотреть есть ли смысл каждый раз устанавливать фокус на frmSplash. Наверно это лишнее. Фокус должен быть на текстовом поле основной формы.
0
|
||
|
|
|
| 04.10.2021, 12:02 | |
|
Года 3-4 назад тоже делал подобную игрушку.
Только она мышкой двигается и реагирует на клики правой. Вначале тоже попробовал на VB6, но там свои сложности особенно с тем, чтобы собрать все ресурсы в один исполняемый файл. В этом плане PB находка, есть механизм data секций, куда можно прикрепить всё, что угодно в исполняемый файл, и достать - проиграть по указателю, прямо из памяти встроенными функциями буквально в 1 строчку.
2
|
|
|
Модератор
|
|||||||
| 04.10.2021, 15:06 | |||||||
3
|
|||||||
|
|
||
| 04.10.2021, 18:12 [ТС] | ||
|
0
|
||
| 04.10.2021, 18:12 | |
|
Помогаю со студенческими работами здесь
20
глобальные переменные (в модуле)
Как отслеживать глобальные переменные? Как создавать и инициализировать глобальные переменные?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|