• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

C# 编写的console程序中遇到的问题???

wangxi1240 2005-06-27 02:35:48
我在写一个console的程序,定义了一个server类,该类中有5个线程,在main函数中,定义一个server对象,然后启动server对象中的线程。
static void Main(string[] args)
{
Server objServer = new Server();
objServer.Start();
}
这样的话,线程启动了,main函数执行完毕,但程序因为server对象线程的关系,并不会退出。利用线程进行一些服务。

问题有两个:
一、如何获得一个单个的输入字符,类似与getchar函数的功能。
比如说,输入ctrl+q,程序捕获,然后处理,不需要输入回车。
我试了Console.Read()的方法,但该方法仍以回车作为输入的结束,有没有什么方法可以在按下ctrl+q键后,自动获得输入,然后处理,不希望输入回车。

二、如何强制退出console程序
console程序在main函数执行完毕后,并不退出,有没有什么机制,可以强制程序结束,我试验了Thread类的abort方法来结束server对象的线程,但好像不灵啊。

希望各位大侠指点!
...全文
73 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
超级大笨狼 2005-08-07
不输入回车的方法
好像没有
回复
smbeng 2005-06-28
UP
回复
wangxi1240 2005-06-28
up
回复
wangxi1240 2005-06-27
up
回复
wangxi1240 2005-06-27
捕获输入没有问题,主要是不希望用户输入回车,console。read,需要以回车作为输入的结束,能不能只输入一个字符,不输入回车的方法啊。
回复
wonton1021 2005-06-27
你可以试验一下if(Console.Read()='q')
类似的方法。ctrl+q 查一查MSDN看看有什么相应的ASCII
用(char)数字转一下
回复
i三千 2005-06-27
up
回复
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2005-06-27 02:35
社区公告

让您成为最强悍的C#开发者