На самом деле рекомендуется переместить код, выполняющий работу вашего консольного приложения, в библиотеку классов (файл DLL), а затем импортировать эту DLL как в проект WinForms, так и в проект приложения консоли.
Это по-прежнему будет способствовать достижению цели консолидации кода, если поместить всю логику декодирования звука в единую библиотеку, которая используется обоими приложениями, но также позволит вам разделить функции дисплея (какими бы минимальными они ни были в консольном приложении). ) что действительно различаются в обоих приложениях.
В противном случае вы не сможете выполнить файл, который существует как встроенный ресурс, без извлечения его в файл. Я полагаю, вы могли бы сделать это во временном каталоге, но тогда у вас останется не такая уж простая задача - получить дескриптор окна и попытаться разместить его в форме Windows. В большинстве случаев вы обнаружите, что это пахнет взломом, и мне трудно поверить, что ваши пользователи оценят консольное приложение, которое им бросают, когда они используют хорошо разработанную форму Windows.
И снова, если все, что вы пытаетесь сделать, это сделать общую функциональность для декодирования звука доступной в обоих приложениях, вызвав этот код из консольного приложения за кулисами в приложении WinForms, поместив его в динамически связанная библиотека - безусловно, ваше лучшее решение.