📄 subject_47009.htm
字号:
<p>
序号:47009 发表者:萧十一郎的兄弟 发表日期:2003-07-16 16:15:22
<br>主题:请教directshow的问题
<br>内容: 小弟不才,最近遇到了很多问题,我想用directshow实现实时播放的功能,所以先编了一个非常简单的直接播放文件的程序,可是在编译的时候不能通过,这个程序是照着SDK来写的,前面加入了:#include"streams.h"<BR>外部环境如下设置:tools->option->directory <BR>在include files中加入了e:\DX8VCSDK\INCLUDE <BR> e:\DX8VCSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES<BR>在library files中加入了e:\DX8VCSDK\LIB<BR> e:\DX8VCSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES\DEBUG<BR> e:\DX8VCSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES\RELEASE<BR>可是在编译的时候就会出错:<BR>--------------------Configuration: playvideoinwindow - Win32 Debug--------------------<BR>Linking...<BR>playvideoinwindowDlg.obj : error LNK2001: unresolved external symbol _IID_IMediaEvent<BR>playvideoinwindowDlg.obj : error LNK2001: unresolved external symbol _IID_IMediaControl<BR>playvideoinwindowDlg.obj : error LNK2001: unresolved external symbol _IID_IVideoWindow<BR>playvideoinwindowDlg.obj : error LNK2001: unresolved external symbol _CLSID_FilterGraph<BR>playvideoinwindowDlg.obj : error LNK2001: unresolved external symbol _IID_IGraphBuilder<BR>Debug/playvideoinwindow.exe : fatal error LNK1120: 5 unresolved externals<BR>Error executing link.exe.<BR>不知是什么原因???<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:萧十一郎的兄弟 回复日期:2003-07-16 16:16:48
<br>内容:源代码如下:<BR>#include <windows.h><BR>#include <streams.h><BR><BR>#define FILENAME L"C:\\WIN95.AVI"<BR>void CPlayvideoinwindowDlg::OnOK() <BR>{<BR> // PlayVideoInWindow //<BR><BR> CoInitialize(NULL);<BR><BR> HRESULT hr;<BR> IGraphBuilder *pigb;<BR><BR> // Create an empty filter graph object<BR> hr = CoCreateInstance(CLSID_FilterGraph,<BR> NULL,<BR> CLSCTX_INPROC_SERVER,<BR> IID_IGraphBuilder,<BR> (void **)&pigb);<BR><BR> if (FAILED(hr))<BR> return;<BR><BR> hr = pigb->RenderFile(FILENAME, NULL);<BR><BR> if (FAILED(hr)) {<BR> pigb->Release();<BR> return;<BR> } // Bail out, file probably wasn't found! //<BR><BR> RECT rc;<BR> IVideoWindow *pivw;<BR><BR> hr = pigb->QueryInterface(IID_IVideoWindow, (void **)&pivw);<BR> HWND hTargetWindow;<BR> hTargetWindow = m_videoWnd.GetSafeHwnd();<BR> pivw->put_Owner((OAHWND)hTargetWindow);<BR><BR> // Here's the key: we must set the required flags, <BR> // AND set the position<BR> pivw->put_WindowStyle(WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS);<BR> m_videoWnd.GetClientRect(&rc);<BR> pivw->SetWindowPosition(rc.left, rc.top, rc.right, rc.bottom);<BR><BR> IMediaControl *pimc;<BR><BR> hr = pigb->QueryInterface(IID_IMediaControl, (void **)&pimc);<BR><BR> long l;<BR> IMediaEvent *pime;<BR><BR> hr = pigb->QueryInterface(IID_IMediaEvent, (void **)&pime);<BR> pimc->Run();<BR><BR> pime->WaitForCompletion(INFINITE, &l);<BR><BR> // The following MUST be called otherwise nasty things can happen!<BR> pivw->put_Owner(NULL);<BR><BR> pime->Release();<BR> pimc->Release();<BR> pivw->Release();<BR> pigb->Release();<BR><BR> CoUninitialize();<BR> <BR> CDialog::OnOK();<BR>}
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:山东人 回复日期:2003-07-16 20:06:39
<br>内容:你的工程中没有包含directx所必需的lib文件
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧十一郎的兄弟 回复日期:2003-07-17 10:33:20
<br>内容:我在lib中这样设置的:e:\DX8VCSDK\LIB<BR> e:\DX8VCSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES\DEBUG<BR> e:\DX8VCSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES\RELEASE<BR>如果还需包含其他的directx文件,还需要哪些呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:bit_blue_wind 回复日期:2003-07-24 21:11:41
<br>内容:所有的。H文件和。LIB文件的路径必须在微软的路径前。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:boston2003 回复日期:2003-08-08 15:16:30
<br>内容:我也是出现相同的错误,大家帮一下我把,很急!!!!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:伦敦上空的蝇 回复日期:2003-08-08 21:40:13
<br>内容:加上预定义:<BR>strmbasd.lib winmm.lib
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -