2015-04-02 3 views
0

Итак, я использую ILMerge для объединения моих сборников .NET в один. В принципе, одно .NET-приложение - это ядро, консоль и другое .NET-приложение - это графический интерфейс, интерфейсный. Теперь GUI вызывает консольное приложение и передает ему аргументы. Готово. Но теперь я объединил консольное приложение в своем графическом приложении. Как я теперь могу назвать консольное приложение, которое теперь объединено с графическим интерфейсом, в моем коде приложения GUI?Как запустить объединенное приложение .NET?

ответ

3

Вы бы просто вызвать Main метод кода консоли:

public class GuiApp 
{ 
    public void WhenYouWantToCallTheConsole() 
    { 
     // Probably in a different thread... 
     ConsoleApp.Main(...); 
    } 
} 

public class ConsoleApp 
{ 
    public static void Main(string[] args) 
    { 
     ... 
    } 
} 

Конечно, это будет запускать консольное приложение в том же процессе - в то время как ранее предположительно вы начали его как отдельный процесс. Во многих случаях это прекрасно, но вы должны осознавать это как разницу.

+0

Mh, подождите. Когда я попытаюсь позвонить в приложение, не сказал бы мне, что ConsoleApp.Main() не существует, поскольку сам код GUI еще не включает ссылки, имена методов и т. Д. Моего консольного приложения? – Tetragrammaton

+1

@Tetragrammaton: Ах, ну, вы могли бы назвать это отражением ... но не легче ли просто добавить ссылку? –

+0

Я просто добавил ссылку. Да, теперь это работает. Большое спасибо. – Tetragrammaton

Смежные вопросы