Вот что я бы сделал:
Поместите все свои проекты в одно решение. Где-то есть кнопка или пункт меню, чтобы добавить проект в решение. Преимущество этого заключается в том, что вы можете редактировать несколько проектов одновременно, и Visual Studio автоматически перестроит все, что нужно перестроить при компиляции.
Весь ваш повторно используемый код (код, используемый не только в исполняемом файле) должен быть разделен на проекты, которые компилируются в библиотеки DLL.
Для каждого исполняемого файла, который вы хотите сгенерировать, у вас должен быть проект, который компилируется в исполняемый файл и содержит ссылки / ссылки на библиотеки DLL, от которых он зависит. Каждый исполняемый проект будет иметь собственную функцию main
, которая запускается при запуске exe.
Если вы хотите иметь возможность тестировать свои DLL без генерации исполняемого файла, вы можете создать точку входа в вашу DLL и запустить ее, используя rundll32
. Это было бы хорошо для разработчиков, тестирующих ваши DLL, но я бы никогда не сказал пользователю использовать rundll32
.