我有 2 个不同C#
的程序,它们都包含一个表单应用程序。
如何在其中一个中运行这两个程序?
我使用现有项目选项在程序 2 中添加了 progr1。
现在我想运行程序 2。
当程序 2 运行并弹出表单应用程序时,我还想激活(自动)程序 1 和该项目中的表单应用程序也弹出。
我还希望能够访问另一个程序中的一个程序的所有方法。
谢谢你的帮助。
我有 2 个不同C#
的程序,它们都包含一个表单应用程序。
如何在其中一个中运行这两个程序?
我使用现有项目选项在程序 2 中添加了 progr1。
现在我想运行程序 2。
当程序 2 运行并弹出表单应用程序时,我还想激活(自动)程序 1 和该项目中的表单应用程序也弹出。
我还希望能够访问另一个程序中的一个程序的所有方法。
谢谢你的帮助。
如果它们确实是单独的进程,那么您需要查看Inter Process Communication。有很多不同的选项可以做到这一点,就个人而言,我会看 WCF 在应用程序之间进行对话。
但这假设这些是单独的过程。您可能会考虑的另一件事是只有一个进程启动多个窗口。在这种情况下,您可以轻松地传递对每个窗口的引用,并从另一个窗口调用方法和属性。
您可以做的大多数事情是使用Process.Start启动另一个,但您将无法访问另一个应用程序中一个的方法。
进程之间的通信方式有很多种,这里讨论了其中的一些。
也许您可以考虑在同一个应用程序域中运行它们。
http://msdn.microsoft.com/en-us/library/ms173138(v=vs.80).aspx
如果您想更改 Program1 的结构,这里有几个选项,这取决于您的要求和对应用程序的访问。
将 Program1 的表单逻辑与 main 函数分离,放在单独的 DLL 中
在 Program2 中引用 Program1 的 DLL 并根据需要控制表单及其方法。
否则,请使用进程间通信技术。