powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Взаимодействие с сурьезной C++ программой через VB.
5 сообщений из 5, страница 1 из 1
Взаимодействие с сурьезной C++ программой через VB.
    #35846573
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть "сурьезная" консольная программа на C++, т.е. скажем так программа сама не очень сложная,по сути main() но взаимодействует со сложной dll, контролирует некий процесс, на VB не реализуема.
Для комфортного отображения информации и управления этой штукой используется VB.

Т.е. в каждый момент, например C-прога знает в Real-time значения параметров A,B,C.
Я хочу отображать их скажем на форме VB.

VB Что делаю. По таймеру в VB
1)Создаю файл ВОПРОС.txt
2)Жду файла ОТВЕТ.txt
3)Читаю ОТВЕТ.txt, убиваю его,
...
1)готов снова задавать ВОПРОС.txt

C++ По бесконечному циклу в C++ c применением Sleep(500)
1)смотрю нет ли файла ВОПРОС.txt
2)Читаю ВОПРОС.txt, убиваю его, кладу ответ в ОТВЕТ.txt
...
1)смотрю нет ли файла ВОПРОС.txt

Понимаю что это полный идиотизм, по другому не придумал. Интерфейсы на C++ писать не умею, сложнотехнические вещи на VB не реализовать. Оставил бы так, но понял что система становится ненадежной, при увеличении нагрузки и к-ва ВОПРОС-ОТВЕТ.

Думал запускать C++ как execcmd и читать консоль через pipe, но понял что это ерунда, vb виснет от избытка излишней информации...

Либо самому написать "простенькие API", но как это сделать, опыта нет, да у меня на C++ exe, а не dll, хотя я встречал exe, кот. предоставляли API для VB.

Идеи будут?
...
Рейтинг: 0 / 0
Взаимодействие с сурьезной C++ программой через VB.
    #35846949
slope
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>>Понимаю что это полный идиотизм, по другому не придумал. Интерфейсы на C++ писать не умею,

а если VC+6 например использовать?
...
Рейтинг: 0 / 0
Взаимодействие с сурьезной C++ программой через VB.
    #35847106
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VC+6 -я же сказал что не умею.Тот интерфейс что я на VB6 за пол-дня могу накатать, я на (V)C(+-6+-2005) буду год писать с кучей глупых вопросов как каждая строчка работает и как это сделать.

Тут поступило соображение использовать ключи реестра вместо файлов.
На что я уже начал подумывать: а почему бы и нет?

Думаю в какую ветку? чтоб точно не было проблем
HKEY_CURRENT_USER\Software\Organization\ProgaName подойдет?

Но вот насколько это лучше варианта с файлами? По сути интервал "долбания" составляет раз в 0,5сек, с чтением и перезаписью нескольких параметров.
Плюс железная логика на пальцах, иначе может получиться что прога вдруг случайно застрянет на ожидании "чего-нибудь" чего из-за какого-то упущения в логике "никогда уже не появится", хотя в случае с реестром думаю вероятность сбоя меньше чем с файлами, и если все продумать, м.б. и неплохо будет.

Но перед тем как углублятся в реестр (на vb проблем не вижу, на c++ придется покопаться в ф-циях чуток), хотелось бы уяснить, насколько сие хорошо в принципе.
...
Рейтинг: 0 / 0
Взаимодействие с сурьезной C++ программой через VB.
    #35847361
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77Тут поступило соображение использовать ключи реестра вместо файлов.
На что я уже начал подумывать: а почему бы и нет?

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

Правильный ответ все же - научиться писать на C++ dll-ки которые понимает VB.

Менее правильный, видимо, хотя бы запускать твой Си-шный Exe-шник через CreateProcess...
...
Рейтинг: 0 / 0
Взаимодействие с сурьезной C++ программой через VB.
    #35847452
MX-9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,

наш прекрасно работающий лет 77 вариант:

железнодорожные весы при наезде вагона
выдают с большой частотой его вес на com-port

сервер - в нашем случае нереляционная СУБД CACHE -
принимает через com-port и складирует вес по времени по секундам
в некую структуру
это делается непрерывно фоновым процессом , фиксируются
только изменения (малые веса - до 100 кг - не регистрируются)

EXCEL ежесекундно дает запрос на сервер CACHE
и красиво большими цифрами отображает вес вагона на экране
Оператор добавляет характеристики груза и все это
фиксируется на сервере уже как документ

===========
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Взаимодействие с сурьезной C++ программой через VB.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]