自己建立个新的DLL作为DIRECTSHOW FILTER,但是编译不通过

morphia 2005-05-13 10:32:36
我建立的步骤如下(DEBUG模式):
1、新建一个DLL工程
2、在工程中设计C++的编译模式为_STDCALL
3、在链接的LIBRARY中输入strmbasd.lib msvcrtd.lib winmm.lib
4、建立MAIN.CPP文件并且输入

extern "C" BOOL WINAPI DllEntryPoint(HINSTANCE, DWORD, LPVOID);

BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, LPVOID p)
{
return DllEntryPoint(instance, reason, p);
}

但是,链接出错,信息如下:
Linking...
strmbasd.lib(dllentry.obj) : error LNK2001: unresolved external symbol "class CFactoryTemplate * g_Templates" (?g_Templates@@3PAVCFactoryTemplate@@A)
strmbasd.lib(dllentry.obj) : error LNK2001: unresolved external symbol "int g_cTemplates" (?g_cTemplates@@3HA)
Debug/sam4.dll : fatal error LNK1120: 2 unresolved externals

不知道这里的同学有没有碰到这样的问题,先谢谢啦!
...全文
100 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
httpaspjspphp 2005-05-13
  • 打赏
  • 举报
回复
肯定时环境没设置好
你仔细检查
morphia 2005-05-13
  • 打赏
  • 举报
回复
另外,当前的VS2003中已经设置好了当前的DXSDK的路径(其中的所有的设置都是按照陆老师的书中P66-P67页中的内容来设置的)不知道为什么会出这样的错误
yyhzpk 2005-05-13
  • 打赏
  • 举报
回复
应该还是环境配置问题了,看一下project下面的setting c/c++
中的预处理宏定义,是否定义_DLL等,建议楼主打开一个SDK的例子,
然后照着把环境配置都抄过来,估计就没有问题了
dongchaomissyou 2005-05-13
  • 打赏
  • 举报
回复
设置路径问题应该是。建议看下DX里面DirectShow的例子里的设置方法,你这样说很难判断是那里出的问题

2,553

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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