ACE TAO не может получить объект NameService в режиме отладки

Я бегу многопрограммные проекты с использованием ACE TAO. Я установил переменные среды и скомпилировал среду ACE_TAO. Затем я скопировал tao_cosnaming.exe в мой каталог запуска проекта и используйте.bat для запуска службы имен.

Программы работают хорошо, если я запускаю их напрямую, но они не могут правильно получить "NameService", когда я вызываю obj = orb->resol_initial_references("NameService") в режиме отладки. (Я не смог запустить obj->_non_existent(), он выдает ошибку).

Казалось, служба именования реализована как удаленная. Когда я вызываю obj = orb->invololize_initial_references("RootPOA"), все в порядке, потому что RootPOA является локальным объектом, поэтому obj -> _ non_existent () немедленно возвращается.

Файл.bat выглядит так:

cd /D %DTAX_RUN_DIR%
tao_cosnaming -ORBEndPoint iiop://%DTAX_NAME_SERVICE_HOST%

DTAX_RUN_DIR а также DTAX_NAME_SERVICE_HOST переменные среды DTAX_RUN_DIR каталог запуска проекта и DTAX_NAME_SERVICE_HOST=169.254.51.81:10493

Кто-нибудь может поделиться некоторыми идеями о том, что идет не так? Спасибо!

1 ответ

Трудно дать определенное решение только с предоставленной вами информацией, но в моих проектах мне нужно передать "-c" (без кавычек) в качестве аргумента команды, чтобы я мог его отладить, возможно, вам нужно сделать то же самое. В Visual Studio в свойствах проекта вы можете найти поле аргументов Команды в Свойствах / Отладке.

Другие вопросы по тегам