Как передать информацию из модуля запуска в мою программу?

Вот сделка: я создал программу передачи данных, которая отправляет информацию на мой Arduino через последовательный порт. Я также создал простую программу запуска с базовым пользовательским интерфейсом, чтобы пользователь мог выбрать COM-порт и запустить программу. Это в основном просто приложение Windows Forms с выпадающим списком DropDown для COM-порта и кнопкой «Launch», которая запускает программу передачи.

Launcher и программа переноса отдельный, поэтому мне нужен способ передачи программой передачи информации о последовательном порте, который пользователь выбирает на панели запуска перед запуском программы.

Я просмотрел файлы конфигурации, общие текстовые файлы и т. Д., Но не нашел ничего, кроме слишком сложных программ.

Любая помощь будет оценена!

Спасибо,

Frazic

2

Решение

Есть несколько способов сделать это.
1. Запустите вашу программу с параметрами, используя int main(int argc, char* argv[])
Для дополнительной информации: Как разобрать параметры командной строки.
И вы можете запустить свой инструмент с: system("C:\\Program Files (x86)\\MyProgram\\transfer.exe ParamCOM");
2. Поместите свою программу переноса в dll и вызовите ее из своего графического интерфейса. С этим решением вы можете передавать данные в обоих направлениях во время работы программы передачи.
Пошаговое руководство. Создание и использование библиотеки динамических ссылок (C ++)
3. Запишите информацию о COM из вашего графического интерфейса в файл config.txt, прежде чем вызывать программу передачи. Теперь ваша программа передачи может читать информацию из файла.
4. Чтение памяти из другого процесса с использованием WinAPI. Это не обычный способ, но он работает. Поиск правильных значений не так прост, поэтому я бы предпочел пункт 1 — 3.

2

Другие решения

Вы можете передать данные в качестве аргументов командной строки.

Вы можете передать данные в среду.

Вы можете передать данные в файл на диске.

Вы можете передавать данные через каналы или сокеты между двумя программами.

Вы можете передавать данные через общую память.

И больше …
Есть много вариантов.

0

По вопросам рекламы [email protected]