Взаимодействие между приложением macOS и приложением C ++, работающим в виртуальной среде windows на одном компьютере - PullRequest
0 голосов
/ 28 мая 2020

Я пытаюсь собрать сложную схему, и она имеет дело с различными областями кодирования, о которых я недостаточно знаю, поэтому я надеюсь на какой-нибудь совет / помощь в мозговом штурме от сообщества.

Вот настройка:

Есть библиотека C ++, которую мне нужно использовать, но она работает только на windows. Допустим, в этой библиотеке есть функция с именем foo, которая принимает единственный аргумент - число. Я хочу создать небольшую программу на C ++, которая анализирует пользовательские строки и интерпретирует их как команды для отправки в библиотеку. Например, если небольшая программа на C ++ получает строку foo 4.3, она вызовет foo(4.3) в библиотеке, потому что ей известны имена функций и списки аргументов, которые она ожидает. Для ясности, я напишу код синтаксического анализа на C ++ - мне не нужно, чтобы входящая строка автоматически переводилась в вызов в библиотеку, я сделаю это вручную.

Настоящая сложная часть - это что я хочу настроить виртуальную машину windows на моем MacBook и запустить на ней эту небольшую программу C ++, а затем каким-то образом отправить эти настраиваемые строки (например, foo 4.3) через границу из приложения SwiftUI ma c, которое я записать в среду виртуальной машины windows, которую будет подбирать небольшая программа на C ++, которая затем вызывает соответствующую библиотечную функцию, а затем отправляет ответ (если есть) обратно через границу в аналогичном настраиваемом строковом формате на мою SwiftUI ma c приложение. Я мало что знаю о сокетах, но друг, с которым я разговаривал, предположил, что можно отправлять строки назад и вперед между ma c и виртуальной windows машиной, используя сокеты.

Мой конкретный c вопрос: можно ли отправлять и получать строки из приложения macOS в среду windows, работающую на виртуальной машине на том же устройстве, и если да, то есть ли сокеты путь к go или есть ли там какая-то другая технология, которую мне нужно использовать?

...