⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_47009.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:47009 发表者:萧十一郎的兄弟 发表日期:2003-07-16 16:15:22
<br>主题:请教directshow的问题
<br>内容:&nbsp;&nbsp;&nbsp;&nbsp; 小弟不才,最近遇到了很多问题,我想用directshow实现实时播放的功能,所以先编了一个非常简单的直接播放文件的程序,可是在编译的时候不能通过,这个程序是照着SDK来写的,前面加入了:#include"streams.h"<BR>外部环境如下设置:tools-&gt;option-&gt;directory <BR>在include files中加入了e:\DX8VCSDK\INCLUDE&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e:\DX8VCSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES<BR>在library files中加入了e:\DX8VCSDK\LIB<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e:\DX8VCSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES\DEBUG<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 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 &lt;windows.h&gt;<BR>#include &lt;streams.h&gt;<BR><BR>#define FILENAME L"C:\\WIN95.AVI"<BR>void CPlayvideoinwindowDlg::OnOK() <BR>{<BR>&nbsp;&nbsp;// PlayVideoInWindow //<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;CoInitialize(NULL);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;HRESULT hr;<BR>&nbsp;&nbsp;&nbsp;&nbsp;IGraphBuilder *pigb;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;// Create an empty filter graph object<BR>&nbsp;&nbsp;&nbsp;&nbsp;hr = CoCreateInstance(CLSID_FilterGraph,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLSCTX_INPROC_SERVER,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IID_IGraphBuilder,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(void **)&amp;pigb);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;if (FAILED(hr))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;hr = pigb-&gt;RenderFile(FILENAME, NULL);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;if (FAILED(hr)) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pigb-&gt;Release();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; // Bail out, file probably wasn't found! //<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;RECT rc;<BR>&nbsp;&nbsp;&nbsp;&nbsp;IVideoWindow *pivw;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;hr = pigb-&gt;QueryInterface(IID_IVideoWindow, (void **)&amp;pivw);<BR>&nbsp;&nbsp;&nbsp;&nbsp;HWND hTargetWindow;<BR>&nbsp;&nbsp;&nbsp;&nbsp;hTargetWindow = m_videoWnd.GetSafeHwnd();<BR>&nbsp;&nbsp;&nbsp;&nbsp;pivw-&gt;put_Owner((OAHWND)hTargetWindow);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;// Here's the key: we must set the required flags, <BR>&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp; AND set the position<BR>&nbsp;&nbsp;&nbsp;&nbsp;pivw-&gt;put_WindowStyle(WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS);<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_videoWnd.GetClientRect(&amp;rc);<BR>&nbsp;&nbsp;&nbsp;&nbsp;pivw-&gt;SetWindowPosition(rc.left, rc.top, rc.right, rc.bottom);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;IMediaControl *pimc;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;hr = pigb-&gt;QueryInterface(IID_IMediaControl, (void **)&amp;pimc);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;long l;<BR>&nbsp;&nbsp;&nbsp;&nbsp;IMediaEvent *pime;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;hr = pigb-&gt;QueryInterface(IID_IMediaEvent, (void **)&amp;pime);<BR>&nbsp;&nbsp;&nbsp;&nbsp;pimc-&gt;Run();<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;pime-&gt;WaitForCompletion(INFINITE, &amp;l);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;// The following MUST be called otherwise nasty things can happen!<BR>&nbsp;&nbsp;&nbsp;&nbsp;pivw-&gt;put_Owner(NULL);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;pime-&gt;Release();<BR>&nbsp;&nbsp;&nbsp;&nbsp;pimc-&gt;Release();<BR>&nbsp;&nbsp;&nbsp;&nbsp;pivw-&gt;Release();<BR>&nbsp;&nbsp;&nbsp;&nbsp;pigb-&gt;Release();<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;CoUninitialize();<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; e:\DX8VCSDK\SAMPLES\MULTIMEDIA\DIRECTSHOW\BASECLASSES\DEBUG<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 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 + -