看板Programming
标 题Re: [转录]Re: [问题] keybd_event的使用
发信站中大资工二进位的世界 (Fri Feb 9 09:11:04 2007)
转信站ptt!ctu-reader!ctu-gate!news.nctu!news.ncu!news.csie.ncu!BinaryBBS
※ 引述《[email protected] (阿怪)》之铭言:
: ※ [本文转录自 C_and_CPP 看板]
: ※ 引述《icetofux (豆腐)》之铭言:
: : 如果我想让程式自动输入某个字,查了一下大部分的人都介绍keybd_event这个函式
: : ,於是我找了一下keybd_event的相关说明,试着写了一段简单的测试:
: : #include<windows.h>
: : #include<iostream>
: : #include<cstdlib>
: : using namespace std;
: : main(void){
: : char a;
: : cin>>a;
: : keybd_event('B',0,0,0);
: : keybd_event('B',0,KEYEVENTF_KEYUP,0);
: : cout<<a;
: : system("pause");
: : }
: : 依照我原本的构想,a应该会接收到程式所输入的"B"字,然後把它秀出来,这段
: : 程式码COMPILER过了,然而结果却没有秀出任何字,似乎连system("pause")这段
: : 都没有执行到,往上推大概就是keybd_event的使用方法错误,可是我还是不太
: : 明白错在哪,请问有人可以指点一下吗?
keybd_event本身的用法没有问题
但是不管cin是不是有等待的特性
他都绝对不可能收的到keybd_event送出的字元
一定要写成两个独立的执行绪才有可能
--
〒作者:SmallBee 来自:132-214.dorm.ncu.edu.tw
◎二进位的世界【140.115.50.50‧binary.csie.ncu.edu.tw】