Вот сделка: я создал программу передачи данных, которая отправляет информацию на мой Arduino через последовательный порт. Я также создал простую программу запуска с базовым пользовательским интерфейсом, чтобы пользователь мог выбрать COM-порт и запустить программу. Это в основном просто приложение Windows Forms с выпадающим списком DropDown для COM-порта и кнопкой «Launch», которая запускает программу передачи.
Launcher и программа переноса отдельный, поэтому мне нужен способ передачи программой передачи информации о последовательном порте, который пользователь выбирает на панели запуска перед запуском программы.
Я просмотрел файлы конфигурации, общие текстовые файлы и т. Д., Но не нашел ничего, кроме слишком сложных программ.
Любая помощь будет оценена!
Спасибо,
Frazic
Есть несколько способов сделать это.
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.
Вы можете передать данные в качестве аргументов командной строки.
Вы можете передать данные в среду.
Вы можете передать данные в файл на диске.
Вы можете передавать данные через каналы или сокеты между двумя программами.
Вы можете передавать данные через общую память.
И больше …
Есть много вариантов.