我在C#中有一个包含两个项目的解决方案。一个是Windows窗体应用程序,另一个是控制台应用程序。这两个项目都设置为在程序运行时启动。我正在使用控制台应用程序来执行用户不需要知道的一些任务,因此我已将输出类型设置为Windows窗体应用程序。 现在,控制台应用程序已完成其关闭的任务,但我希望能够通过按下按钮通过Windows窗体应用程序再次执行它。 我该怎么做?
另外,当我在我的Windows窗体应用程序上使用Application.Exit()时,它是关闭这两个项目还是只关闭Windows窗体?如何在一个解决方案中的项目之间进行通信?
0
A
回答
1
现在后,控制台应用程序已完成其任务,它会关闭,但我 希望能够通过我的Windows再次执行按一个按钮形成 应用。我该怎么做呢 ?
只要使用Process.Start就可以传递一个路径到您的控制台可执行文件。
另外,当我在我的Windows窗体应用程序 上使用Application.Exit()时,是否会关闭这两个项目或只是Windows Form?
应用程序是程序集的执行上下文,换句话说,它指的是代码被执行的EXE
。所以在你的情况下,它只会关闭你的WindowsForms应用程序。
0
只要您在控制台应用程序中需要的方法是公开的,您应该可以直接从其他应用程序调用它们。只需在调用项目中添加对其的引用即可。实际上,如果你想要这样的普通东西,你可以考虑将公共逻辑放在一个单独的项目中,构建为.dll
,并让控制台和winforms项目在需要时使用它。
+0
dll的想法来找我,我已经建立了一个,但我想要在程序启动(它自动执行)和用户关闭WinForm应用程序时执行控制台应用程序。 – 2013-04-30 09:40:08
相关问题
- 1. 如何防止构建解决方案中的项目之一?
- 2. 如何在同一个解决方案中执行另一个项目?
- 3. 从命令行在解决方案中构建一个项目
- 4. 在vs 2010中的一个解决方案下进行多项目调试
- 5. 在解决方案之间共享项目时的NuGet
- 6. 在一个目录中部署两个项目解决方案
- 7. 如何在多项目解决方案中使用Unity进行解析
- 8. 如何在C#和Wpf项目之间进行通信?
- 9. 在解决方案中对项目进行排序
- 10. 如何在不同命名空间的同一解决方案中的两个项目之间传递变量?
- 11. ADO.Net:在解决方案中的多个项目之间共享实体(.edmx)
- 12. 在一个解决方案中加入多个项目
- 13. Node.js在一个解决方案中服务两个AngularJS项目
- 14. 在解决方案中测试项目
- 15. 多个WCF项目与解决方案中的单个项目
- 16. 在VSTS的单一解决方案中构建多个项目
- 17. 添加到同一解决方案中的项目之一的项目引用在另一个解决方案中显示为中断
- 18. 同一解决方案中的项目之间的链接问题
- 19. 在解决方案中将多个项目合并到一个项目中
- 20. 如何在反应中的方法之间进行通信?
- 21. 如何在帧之间进行通信?
- 22. 如何发布一个多项目解决方案到azure
- 23. 一个解决方案中的多个MVC3项目
- 24. 一个登录解决方案中的两个项目
- 25. .net intellisense:一个解决方案中的2个项目
- 26. 一个解决方案中的两个项目
- 27. 如何在一个解决方案中的项目之间使用共享资源文件?
- 28. 解决方案中的项目
- 29. TFS中的子项目解决方案
- 30. Git:样板和正在进行的项目之间的通信
如果控制台应用程序在后台运行,该怎么办?有什么办法可以告诉它重新开始? – 2013-04-30 09:40:57
@WaqasAli:Process.Start将启动一个新的*应用程序应用程序实例,因此您将在内存中拥有两个Console EXE实例。希望这可以帮助。 – Tigran 2013-04-30 09:49:19
噢好吧, 谢谢 – 2013-04-30 09:50:30