VC++视频监控程序,怎样隐藏MFC界面

forever1dreamsxx 2013-07-21 11:03:44
我在网上找了个视频监控程序,做了一些修改;
想要实现以下功能:
1、打开服务端用Socket监听;
2、然后打开客户端,打开客户端摄像头;
3、然后服务端点击接收按钮,就可以获取客户端的视频画面;(ip和端口设置都保存在了ini文件中)

现在上面的功能实现了,但是有一个问题,服务端和客户端都有MFC界面,我想只要服务端的界面,隐藏客户端的界面,采用以下的方法:
1、在客户端的OnPaint()函数中添加:CWnd::ShowWindow(SW_HIDE);可以隐藏MFC界面(但是界面最开始会在屏幕闪烁),但是这样的话,服务端只能接收客户端的第一帧画面,后面的就没有了;

2、添加消息处理函数WM_TIMER,在OnTimer(UINT nIDEvent) 函数中添加
if(nIDEvent == 1)
{
KillTimer(1);
ShowWindow(SW_HIDE);
}
在OnInitDialog函数中添加:SetTimer(1, 1, NULL);
能够隐藏界面,但是视频画面一点都没有;

3、在OnInitDialog函数中添加:
//设置窗口为非顶级窗口,并且窗口的位置为(0,0)窗口的宽和高为(0,0),指定为隐藏窗口
//SetWindowPos(&CWnd::wndNoTopMost,0,0,0,0,SWP_HIDEWINDOW);

//强行清除可见的顶级窗口,并设置窗口格式为工具窗口
//ModifyStyleEx(WS_EX_APPWINDOW,WS_EX_TOOLWINDOW);
情况和第二种一样,能隐藏界面,但是视频画面不能捕获,服务端不能接收视频画面。

菜鸟一个求高手指导,谢谢;

我的程序下载在这里:http://download.csdn.net/detail/simonoaker/2672482

好像程序是通过客户端保存视频画面,然后再传到服务端的。
...全文
293 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
forever1dreamsxx 2013-08-08
  • 打赏
  • 举报
回复
引用 2 楼 lfs09 的回复:
自己改写客户端程序。 试试,把客户端程序移动屏幕外,看行不
嗯,谢谢你的建议。
forever1dreamsxx 2013-08-08
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
找从摄像头获取视频流的API?不用窗口?
恩恩,谢谢,用的你这种方法,已经解决问题了。
你妹的特盗不 2013-07-31
  • 打赏
  • 举报
回复
自己改写客户端程序。 试试,把客户端程序移动屏幕外,看行不
赵4老师 2013-07-30
  • 打赏
  • 举报
回复
找从摄像头获取视频流的API?不用窗口?

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧