2013-01-23 70 views
0

我开发了一个控制台应用程序来等待事件。代码的主要部分如下所示。保持隐藏控制台有效

static void Main(string[] args) 
{ 
    // get lync client 
    var getclient = LyncClient.GetClient(); 
    // register for conversation event 
    getclient.ConversationManager.ConversationAdded += Conversation_ConversationAdded; 
} 

我希望的是在后台运行这个,因此我改变了它的输出到windows应用程序。但似乎应用程序一旦启动就结束了。有没有办法让应用程序保持活着?

显然我不能使用Console.Readline(),因为我想隐藏它。目前我使用的是System.Threading.Thread.Sleep(int.MaxValue),但我认为这不是一个好主意,因为它有一个限制。

不知道问题出在我的代码中,还是只是需要一些东西来保持它的活性。任何指针?

+0

你有没有停下来认为应用程序一旦启动,因为有一个错误结束..? – MethodMan

+0

当输出设置为控制台应用程序时,我已经对其进行了测试,当有控制台窗口时,一切都可以正常工作。我只是想在没有窗户的情况下发生同样的事情。我很抱歉不知道这一切,因为我刚开始学习这一点。我只想知道我是否错过了任何东西。 – Zenvo

+0

这一切都非常好,但是你什么时候*想要*你的应用程序结束?如果从不,并且Lync客户端很高兴在另一个线程中运行,只需使用'Thread.Sleep(Timeout.Infinite)'。 –

回答

0

将其作为具有隐藏主窗口的WPF应用程序运行,该窗口具有属性ShowInTaskbar = false。这样它将与Lync客户端进行交互,而不会在用户的桌面上显示。

+0

Merci!这是我没有想到的一件事。在完成基本功能后,可能会实施它以进一步改进。 – Zenvo