BellDu
驱动牛犊
驱动牛犊
  • 注册日期2001-12-21
  • 最后登录2007-07-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1217回复:6

相信懂得驱动的朋友更了解这个问题

楼主#
更多 发布于:2005-03-08 14:31
我用vc++6.0编写了一个console的串口通信程序。在win2000的命令提示符状态(也就是虚拟dos)下运行。但发现,在通信过程中,如果在 命令提示符状态(也就是虚拟dos)的黑色窗口内点击鼠标左键,console程序就会暂停发送数据,并选择一个字符块(显示白色);点击鼠标右键,console程序又会恢复运行。我试过新开一个线程,但问题照旧。奇怪的是以前一个同事用汇编写的程序没这个问题。
请问各位大虾是否遇到过上述问题,怎样避免鼠标对通信程序的的干扰呢?难道要写串口驱动?
谢谢!
Bell.
bmyyyud
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2010-01-21
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望130点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-03-09 09:29
写个作为服务执行的通讯程序,没有窗口,自然谈不上干扰
滚滚长江东逝水 浪花淘尽英雄 是非成败转头空 青山依旧在 几度夕阳红 白发渔樵江渚上 惯看秋月春风 一壶浊酒喜相逢 古今多少事 尽付笑谈中
BellDu
驱动牛犊
驱动牛犊
  • 注册日期2001-12-21
  • 最后登录2007-07-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-03-09 10:27
写个作为服务执行的通讯程序,没有窗口,自然谈不上干扰
没有直接解决问题。窗口必须要。还要运行批处理程序,并且看结果。比如编译,连接,然后用串口烧写。
Bell.
znsoft
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2023-10-25
  • 粉丝300
  • 关注6
  • 积分910分
  • 威望14796点
  • 贡献值7点
  • 好评度2410点
  • 原创分5分
  • 专家分100分
  • 社区居民
  • 最爱沙发
  • 社区明星
地板#
发布于:2005-03-09 14:10
关掉标准输入试试。
http://www.zndev.com 免费源码交换网 ----------------------------- 软件创造价值,驱动提供力量! 淡泊以明志,宁静以致远。 ---------------------------------- 勤用搜索,多查资料,先搜再问。
BellDu
驱动牛犊
驱动牛犊
  • 注册日期2001-12-21
  • 最后登录2007-07-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-03-09 14:21
关掉标准输入试试。
怎样关? 清除stdio.h?不用pringf()?
Bell.
bmyyyud
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2010-01-21
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望130点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2005-03-09 15:28
你的问题很奇怪,这跟用什么语言没关系,发上代码,大家试试
滚滚长江东逝水 浪花淘尽英雄 是非成败转头空 青山依旧在 几度夕阳红 白发渔樵江渚上 惯看秋月春风 一壶浊酒喜相逢 古今多少事 尽付笑谈中
BellDu
驱动牛犊
驱动牛犊
  • 注册日期2001-12-21
  • 最后登录2007-07-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2005-03-09 15:51
你的问题很奇怪,这跟用什么语言没关系,发上代码,大家试试
应该是没有关系。可能别人写的和我写的程序方式上有区别。程序比较大。我写了一个测试程序大家看看:

#include \"stdafx.h\"
#include \"windows.h\"

int main(int argc, char* argv[])
{
int i=1000;
while(i--)
{
printf(\"%d %c\",i,0xd);
Sleep(10);
}
return 0;
}
Bell.
游客

返回顶部