怎样向DOS程序传递键盘消息
问题有两个:
1、在VC6.0程序里用ShellExecute启动一个DOS程序,启动DOS程序老是全屏;直接点击exe也是一样。cmd属性里的显示模式是窗口模式;但是用Alt+Enter可以切换到窗口模式。
2、用模拟键盘的消息传递不成功。代码:如下;
CString pszWindowTitle = "";
HWND TheWindow = 0;
GetCurrentDirectory(1000,pszWindowTitle.GetBuffer(1000));
pszWindowTitle.ReleaseBuffer();
pszWindowTitle+="\\software\\KERTEST.EXE";
TheWindow = ::FindWindow("ConsoleWindowClass",pszWindowTitle);
CWnd::FromHandle(TheWindow)->SetForegroundWindow();
if(TheWindow != NULL)
{
::SendMessage(TheWindow,WM_KEYDOWN,VK_RETURN,0L);
Beep(1000,1000);
}
else
{
Beep(100,100);
}
请大家赐教,谢谢!!!