您的当前位置:首页Virtools SDK开发教程之一(封装VT文件到一个EXE文件中的方法)

Virtools SDK开发教程之一(封装VT文件到一个EXE文件中的方法)

来源:乌哈旅游
楼主 发表于: 2005-01-07Virtools SDK开发教程之一(封装VT文件到一个EXE文件中的方法)建立独立播放的VT可执行文件倒序阅读 只看楼主 小中大 更多操作▼前提:安装VC++6.0;安装DirectX SDK 。因为SDK中提供的文件就是基于VC++的。而编译这些文件要用到DirectX中的Lib和头文件等,所以DirectX_SDK要安装。由于现在大多数朋友用的VT都是3.0或以上版本的,可以只安装DirectX9.0 SDK,如果你是net开发环境,直接安装DirectX9.0 c SDK版本;如果你是VC6用SDK extras把DirectX9.0 SDK升级到DirectX9.0C SDK即可版本.经过测试VT3.08 SDK对DirectX9.0C SDK完全是支持的.1.新建一个文件夹,把你VT安装目录下的Sdk中的Samples.dsw及Standalone Playe放进来.沙发 发表于: 2005-01-07Re:如图:只看该作者 小中大 图片:01.jpg 2.用VC++打开Smaple.dsw,出现寻找其他的dsp文件的窗口,选择取消。图片:02.jpg 3.在VC++的FileView中删除所有才找不到位置的档案,只留下NewPlayerStatic files如图:图片:03.jpg 4.在Project\\option中Link相应的头文件和库文件.7楼 发表于: 2005-01-07Re:如图我这里安装了DirectX8 SDK和DirectX9 SDK)只看该作者 小中大 图片:04_Edit.jpg 8楼 发表于: 2005-01-07Re:如图只看该作者 小中大 你要保证你的DirectX SDK的Lib目录要在C:\\Program Files\\Microsoft Visual Studio\\VC98\\LIB的上边.你如果只安装了DirectX9.0 SDK这样编辑Lib的引用roject--->Setting--->Link,在Object/library modules栏目中只留下以下的Libd3dx9.lib OpenGL32.lib Glu32.lib Ws2_32.lib Vfw32.lib winmm.lib msacm32.lib dinput.lib dxguid.lib图片:05.jpg 9楼 发表于: 2005-01-07Re:只看该作者 小中大 5.这时你可以编译的文件文件(生成一个播放器).执行可以发现生成的EXE比较大,是因为我们把DLL中的函数和接口等全部封装在EXE文件中的缘故.执行这个文件.10楼 发表于: 2005-01-07Re:如图只看该作者 小中大 图片:06.jpg 11楼 发表于: 2005-01-07Re:6.改造我们的Windows,因为我们是要封装VT到EXE中,所以把右键菜单,不需要的按钮全部去处.只看该作者 小中大 在VC++中的ClassView中找到回调函数LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)注释掉相应消息响应函数.//屏蔽右键菜单:注释掉case WM_RBUTTONUP: OnContextMenu(); break;这一行//屏蔽掉按钮的单击消息响应(关闭按钮的响应不应注释掉):注释掉这几行Code:case BTN_PLAY: g_CurrentPlayState|=1; OnPlayPause(0); break;case BTN_RESET: g_CurrentResetState=2; OnReset();break;case BTN_LOAD: g_CurrentLoadState=2;OnLoad();break;12楼 发表于: 2005-01-07Re:7.修改重画标题栏函数void RepaintTitleBar(),去掉Load,Play和Pause三个按钮的显示.//注释掉这几行代码:只看该作者 小中大 DrawState(dc2,NULL,NULL,(DWORD)g_Virtools,0,3,CenterY-10,0,0,DST_BITMAP|DSS_NORMAL);DrawState(dc2,NULL,NULL,(DWORD)g_Reset[g_CurrentResetState],0,Center-64,CenterY-9,0,0,DST_BITMAP|DSS_NORMAL);DrawState(dc2,NULL,NULL,(DWORD)g_Plays[g_CurrentPlayState],0,Center+26,CenterY-9,0,0,DST_BITMAP|DSS_NORMAL);DrawState(dc2,NULL,NULL,(DWORD)g_Load [g_CurrentLoadState],0,Center-19,CenterY-9,0,0,DST_BITMAP|DSS_NORMAL);13楼 发表于: 2005-01-07Re:8.这时候我们来更改Windows的窗口标题:我们让它支持中文的显示:只看该作者 小中大 在VC++中的ResourceView中找到String Table.选中他下边的子项,在右键菜单中打开它的属性窗口,把Language修改成Chinese.14楼 发表于: 2005-01-07Re:如图只看该作者 小中大 图片:07.jpg 15楼 发表于: 2005-01-07Re:9.编辑右边的TITLE项,输入你的标题.只看该作者 小中大 16楼 发表于: 2005-01-07Re:如图只看该作者 小中大 图片:08.jpg 17楼 发表于: 2005-01-07Re:10.把头文件\"afxRes.h\"包到Resource.h文件中去.在Resource.h中加入这一行:#include只看该作者 小中大 18楼 发表于: 2005-01-07Re:11.接下来我们把我们要播放的VT文件Import到VC++中的ResourceView中去.确定你的Res资源类型.只看该作者 小中大 19楼 发表于: 2005-01-07Re:如图只看该作者 小中大 图片:09.jpg 20楼 发表于: 2005-01-07Re:如图只看该作者 小中大 图片:10.jpg 21楼 发表于: 2005-01-07Re:12.你可以看到你的VT文件已经到导入进来了.只看该作者 小中大 22楼 发表于: 2005-01-07Re:如图:只看该作者 小中大 图片:12.jpg 23楼 发表于: 2005-01-07Re:只看该作者 小中大 13.接下来我和大家说一下播放VT文件的思路:我们需要播放VT时,我们可以把VC++中的VT资源导出来生成一个临时文件,然后让Player而播放即可,播放结束我们在用程序把它删除.24楼 发表于: 2005-01-07Re:14.编辑InitInstance()函数接口,把 FileName变成全局变量.//注释掉这一行char FileName[512]=\"\";把这段变量声明放到对应文件的开始部分.只看该作者 小中大 25楼 发表于: 2005-01-07Re:15.继续编辑InitInstance()函数,在SetCursor(:CString Type=\"VIRTOOL\";HRSRC rest=FindResource(NULL,MAKEINTRESOURCE(IDR_VIRTOOL1),Type);HGLOBAL gl=LoadResource (NULL,rest);LPVOID lp=LockResource(gl); //返回指向资源内存的地址的指针。lstrcpyn(FileName,\"c:\\\\Temp.vmo\HANDLE fp;fp= CreateFile(FileName ,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,0,NULL);DWORD a; //sizeofResource 得到资源文件的大小if (!WriteFile (fp,lp,SizeofResource (NULL,rest),&a,NULL))return false;CloseHandle (fp); //关闭句柄FreeResource (gl); //释放内存oadCursor(NULL,IDC_ARROW));这一行下边加入导出VT临时文件的Code:只看该作者 小中大 你可以看到我把VT的临时文件放到了C:目录下.你可以任意修改目录到任何地方.26楼 发表于: 2005-01-07Re:16.实现Exit时删除临时文件:修改void ExitVirtoolsPlayer()函数,加入这一行代码到PostQuitMessage(0);这一行的前边:DeleteFile(FileName);只看该作者 小中大 27楼 发表于: 2005-01-07Re:有问题大家可以提出来,我把我的框架文件放上来:只看该作者 小中大 28楼 发表于: 2005-01-07只看该作者 小中大 Re:框架文件你可能要自己导入VMO资源文件,Type的名字文件中是\"VIRTOOL\",ID为IDR_VIRTOOL1,请注意要根据实际情况进行修改。说明:我这个框架文件是基于 VT3.0 SDK开发的,如果你用VT SDK是3.08版的话,编译会出现使问题。因为3.08的Lib已经更新了(比如Mp3ReaderLib已经合并到WavReaderLib了等等...)附件: 封装EXE.rar (63 K) 下载次数:530只看该作者 小中大 29楼 发表于: 2005-01-07Re:该站的处女帖 给你~30楼 发表于: 2005-01-07Re:十分感谢Media/好详细/不过有个疑问~/我生成的时候`/他提示少VxMathLibd.lib请问VT是否有这个库呢~/还有那个MSSDK要在哪下呀~/刚去MS官方找半天也没见到只看该作者 小中大 31楼 发表于: 2005-01-08Re:不错唷..趕快來试试看多谢大大分享这教程只看该作者 小中大 32楼 发表于: 2005-01-10Re:引用只看该作者 小中大 yty: Re:封装VT文件到一个EXE文件中的方法十分感谢Media/好详细/不过有个疑问~/我生成的时候`/他提示少VxMathLibd.lib请问VT是否有这个库呢~/还有那个MSSDK要在哪下呀~/刚去MS官方找半天也没见到VxMathLibd.lib你是不是写错了,VT的SDK中没有这个库文件的,倒是有VxMath.libMSSDK是DirectX8 SDK的安装目录33楼 发表于: 2005-01-10Re:只看该作者 小中大 我打开了你的文件,有些问题,你上面说的关于修改debug和release目录,是不是指这个对话框,但是,目录怎么改啊,好象没有路径啊,还有我在输入时type的是virtool,id也是象你那样设置的,但我点击那个叹号(应该是输出的命令吧)就出现下面的错误,怎么办图片:qqq.jpg 34楼 发表于: 2005-01-10Re:这个是输出以后错误提示只看该作者 小中大 图片:ddd.jpg 35楼 发表于: 2005-01-10Re:看你的错误提示,我提供给你的框架文件是基于VT3.0 SDK开发的,你的VT可能已经升级了,所以编译会出错。只看该作者 小中大 36楼 发表于: 2005-01-10Re:只看该作者 小中大 补充:你可以减小你的Exe文件的大小,因为这里是静态编译文件的,如果不需要的库,你可以在InitInstance()接口中去掉它的连接如图:37楼 发表于: 2005-01-11Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法VxMathLibd.lib你是不是写错了,VT的SDK中没有这个库文件的,倒是有VxMath.lib~/ThankYou~/Media:我没有写错~/是那个名字/我也感到奇怪/后来我把vc2003.net卸掉装了Vc6/就都没有问题了/这篇真是太详细全面的教程了/另外Media能否在说下/vmo转cmo的小程序该怎么用SDK生成啊/具体连接在着/http://www.86vr.com/forum......32&id=38731&star=1&skin=038楼 发表于: 2005-01-11Re:不是吧,只有我么苯,我又有问题了,没啥说的,只有感谢帮助我的人了media,我按着你说的把那删掉了,果然没有那个问题了,可新问题有产生了,我知道问题在哪,可不知道怎么解决......只看该作者 小中大 图片:ff.jpg 39楼 发表于: 2005-01-11Re:引用只看该作者 小中大 cl781121: Re:封装VT文件到一个EXE文件中的方法不是吧,只有我么苯,我又有问题了,没啥说的,只有感谢帮助我的人了media,我按着你说的把那删掉了,果然没有那个问题了,可新问题有产生了,我知道问题在哪,可不知道怎么解决......请把afxRes.h文件包含到你的资源头文件Resource.h中40楼 发表于: 2005-01-11Re:引用只看该作者 小中大 yty: Re:封装VT文件到一个EXE文件中的方法~/ThankYou~/Media:我没有写错~/是那个名字/我也感到奇怪/我看了一下,这个问题和VC++的版本没关系,你可以看一下这段Code:// virtools base libraries#if defined(_DEBUG)#pragma comment(lib,\"ZLibStaticMTD\")#pragma comment(lib,\"VxMathLibd\")#pragma comment(lib,\"CK2LibD\")...#else#pragma comment(lib,\"ZLibStaticMT\")#pragma comment(lib,\"VxMathLib\")#pragma comment(lib,\"CK2Lib\")...#endif // _DEBUG\"VxMathLibd\"等一些调试用到的Lib,在SDK中是没有提供给我们,如果你选择DeBug(#if defined(_DEBUG))你的程序,他就会报错找不到相应的库.你选择Release模式发布的话就没问题了,它联接另一些库.在VC++6.0中你可以在Builder-->Batch Builder选择你的编译模式41楼 发表于: 2005-01-11Re:楼主的贴子对我们VT爱好者太有帮助了!个人觉得VT公司在这方面做的很不够!小弟按照楼主的指导做了一下发现还是有几个问题∶1、如果在vt的场景中用到shader的话,输出的 .exe 文件就不能正常播放,只会出现一个黑屏。2、如果我把DirectX SDK升级到最新版本的话,输出程序编译时将会出错。(下面是我做编译时遇到问题的截图)[img][/img]希望楼主能在百忙之中帮我看一下这两个问题,在下感激不尽。只看该作者 小中大 图片:wenti.jpg 42楼 发表于: 2005-01-11Re:只看该作者 小中大 VT 中使用shader,我这里播放没有任何错误.如果你在InitInstance()接口中如果加入注册其他的库函数比如\"RegisterShaderBehaviors(pm)\那就要注意,不能用Virtools3.08 SDK的Shader.lib否则就会出现你上边的错误.我已经测试过了,在VT3.0 SDK+DirectX9.0b SDK+VC++6.0编译的Exe中运行那个人头的Shader,没有任何问题的.如下图:VT的SDK对最新版的DirectX9 SDK支持不好,编译时会提示\"d3dx9.lib(fastftoa.obj) : error LNK2001: unresolved external symbol __aulldvrm\"编译错误.主要原因是The application was compiled against and will only work with D3D_SDK_VERSION (30)43楼 发表于: 2005-01-11Re:估计是版本的问题,我的就是3.08的sdk,不知道media老兄何时弄个3.08版本的框架文件出来。。。。。。只看该作者 小中大 44楼 发表于: 2005-01-11Re:支持Media 好贴 顶一下只看该作者 小中大 45楼 发表于: 2005-01-12Re:只看该作者 小中大 下面是我按照楼主的帖子做的例子,我现在用的版本是3.0.0.29,可对于含有shader例子还是不能播放,希望楼主和各位高手给与指正,小弟谢谢大家![code][/code]附件: Standalone Player.rar (215 K) 下载次数:165只看该作者 小中大 46楼 发表于: 2005-01-12Re:引用tony0424: Re:封装VT文件到一个EXE文件中的方法下面是我按照楼主的帖子做的例子,我现在用的版本是3.0.0.29,可对于含有shader例子还是不能播放,希望楼主和各位高手给与指正,小弟谢谢大家![code][/code]你的文件有问题,解压不了的47楼 发表于: 2005-01-12Re:不好意思,这个是我要播放的资源文件。 只看该作者 小中大 附件: Head.rar (464 K) 下载次数:167只看该作者 小中大 48楼 发表于: 2005-01-12Re:那我再发一次,搂主辛苦了!附件: Standalone Player.rar (515 K) 下载次数:180只看该作者 小中大 49楼 发表于: 2005-01-12Re:引用tony0424: Re:封装VT文件到一个EXE文件中的方法不好意思,这个是我要播放的资源文件。 我测试过了,一切正常。50楼 发表于: 2005-01-12Re:我的virtools dev版本号为:3.0.029 DirectX 的版本号为:DirectX 9.0c (4.09.0000.0904)敢问楼主的版本号是多少?只看该作者 小中大 51楼 发表于: 2005-01-12Re:引用只看该作者 小中大 tony0424: Re:封装VT文件到一个EXE文件中的方法我的virtools dev版本号为:3.0.029 DirectX 的版本号为:DirectX 9.0c (4.09.0000.0904)敢问楼主的版本号是多少?我的版本跟你的一样,你的框架框架文件有问题。有时间我帮你改一下52楼 发表于: 2005-01-12Re:谢谢楼主!只看该作者 小中大 53楼 发表于: 2005-01-12Re:只看该作者 小中大 我把框架文件做了一点点修改,就是注释掉“RegisterPhysicsBehaviors(pm);”这行后(下图1),文件输出成功,但是没有了shader效果(下图2)。图片:shangchuan2.jpg 54楼 发表于: 2005-01-12Re:图1[img][/img]只看该作者 小中大 图片:shangchuan2.jpg 55楼 发表于: 2005-01-12Re:图2[img][/img]只看该作者 小中大 图片:shangchuan1.JPG 56楼 发表于: 2005-01-12Re:难道vt和directx sdk都不能随便升级?真惨啊!只看该作者 小中大 57楼 发表于: 2005-01-12Re:只看该作者 小中大 media 你的框架设置成双击直接进入全屏,不能改盘符,也就是说我如果输出在exe在c:盘,但拷贝到别的盘符下就不行了,是不是我做错了有时间你试一试吧58楼 发表于: 2005-01-12Re:只看该作者 小中大 还有个小问题,怎样编辑图标呢??59楼 发表于: 2005-01-12Re:楼主我就用你的那个文件,IMPORT了自己的VMO文件,然后生成EXE,就出现下面的问题~~为什么啊??--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Compiling resources...只看该作者 小中大 C:\\Documents and Settings\\chenwy.CADSH\\桌面\\封装EXE\\Standalone Player\\NewPlayer.rc (63): error RC2104 : undefined keyword or key name: IDC_STATICError executing rc.exe.PlayerStatic.exe - 1 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)60楼 发表于: 2005-01-12Re:引用只看该作者 小中大 cl781121: Re:封装VT文件到一个EXE文件中的方法media 你的框架设置成双击直接进入全屏,不能改盘符,也就是说我如果输出在exe在c:盘,但拷贝到别的盘符下就不行了,是不是我做错了有时间你试一试吧我框架中的BOOL g_GoFullScreen=FALSE; // Go directly to fullscreen没有设置为直接全屏播放呀.你再看看Exe的文件中的VT文件释放到C:\\\\目录下的,当播放结束时,这个文件会被删除的.你在C:\\\\目录下找到的编译的ExE,是由于环境变量没有注册才会编译到C:\\下的.你可以在VC++中的Project--->Setting-->Link中把Out FileName设置为\"..\\PlayerStatic.exe\".来确定编译的ExE文件的正确路径61楼 发表于: 2005-01-12Re:引用只看该作者 小中大 cl781121: Re:封装VT文件到一个EXE文件中的方法还有个小问题,怎样编辑图标呢??把Resouce中的ICON替换掉就可以了:62楼 发表于: 2005-01-12Re:引用只看该作者 小中大 cl781121: Re:封装VT文件到一个EXE文件中的方法还有个小问题,怎样编辑图标呢??如图,图片:ICON.jpg 63楼 发表于: 2005-01-12Re:引用只看该作者 小中大 w56373511: Re:封装VT文件到一个EXE文件中的方法楼主我就用你的那个文件,IMPORT了自己的VMO文件,然后生成EXE,就出现下面的问题~~为什么啊??--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Compiling resources...C:\\Documents and Settings\\chenwy.CADSH\\桌面\\封装EXE\\Standalone Player\\NewPlayer.rc (63): error RC2104 : undefined keyword or key name: IDC_STATIC把#include这一句加入到Resouce.h中即可64楼 发表于: 2005-01-12Re:老大是这句话吗?#include只看该作者 小中大 可是现在有八个错误了~~~怎么办啊?--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Linking...d3dx.lib(init.obj) : error LNK2005: _IID_IDirectDrawSurface3 already defined in dxguid.lib(guid6.obj)d3dx.lib(init.obj) : error LNK2005: _IID_IDirectDraw2 already defined in dxguid.lib(guid3.obj)d3dx.lib(init.obj) : error LNK2005: _IID_IDirect3DMMXDevice already defined in dxguid.lib(guid35.obj)d3dx.lib(init.obj) : error LNK2005: _IID_IDirect3DHALDevice already defined in dxguid.lib(guid34.obj)d3dx.lib(init.obj) : error LNK2005: _IID_IDirect3DRGBDevice already defined in dxguid.lib(guid33.obj)SoundManagerLib.lib(getdxver.obj) : error LNK2001: unresolved external symbol _CLSID_DirectMusicSoundManagerLib.lib(getdxver.obj) : error LNK2001: unresolved external symbol _IID_IDirectMusicPlayerStatic.exe : fatal error LNK1120: 2 unresolved externalsError executing link.exe.PlayerStatic.exe - 8 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)你要保证在VC++你的DirectX的Lib引用目录在最上边.一应要在C:\\Program Files\\Microsoft Visual Studio\\VC98\\LIB的上边.65楼 发表于: 2005-01-12Re:没出错~~我哭了~~~~谢谢老大~不过为什么是黑屏,我IMPROT的VMO没有显示~为什么?我一点都不懂程序,问题很幼稚~老大不要见怪~只看该作者 小中大 66楼 发表于: 2005-01-12Re:引用只看该作者 小中大 w56373511: Re:封装VT文件到一个EXE文件中的方法没出错~~我哭了~~~~谢谢老大~不过为什么是黑屏,我IMPROT的VMO没有显示~为什么?我一点都不懂程序,问题很幼稚~老大不要见怪~黑屏的话就是输出的文件不对,HRSRC rest=FindResource(NULL,MAKEINTRESOURCE(IDR_VIRTOOL1),Type);在我的框架文件中VMO资源的ID我设置为\"IDR_VIRTOOL1\你看一下你的资源文件ID是不是和我的不一样67楼 发表于: 2005-01-12Re:引用只看该作者 小中大 tony0424: Re:封装VT文件到一个EXE文件中的方法下面是我按照楼主的帖子做的例子,我现在用的版本是3.0.0.29,可对于含有shader例子还是不能播放,希望楼主和各位高手给与指正,小弟谢谢大家![code][/code]楼主能不能详细回答一下上面这个问题,比如说指出我框架的错误,感激不尽!68楼 发表于: 2005-01-12Re:谢谢~~我的ID错了~~~现在成功了~~实在太感谢了~~我是在别的网站上看到的转贴那个人遗漏了很多,我搞了半天都搞不对,还是楼主最强顶~~~~~希望楼主能推出支持最新版本的封装方法(我比较笨,为了实现你的方法,重装了老版本) 只看该作者 小中大 69楼 发表于: 2005-01-12Re:media ,可是它要求的是*.ico文件,我想把我的jpg图片转化为ico,可。。。。怎么转啊????只看该作者 小中大 70楼 发表于: 2005-01-12Re:exe文件损坏了!!!!media,看看你上传的文件吧只看该作者 小中大 71楼 发表于: 2005-01-12Re:引用只看该作者 小中大 tony0424: Re:封装VT文件到一个EXE文件中的方法楼主能不能详细回答一下上面这个问题,比如说指出我框架的错误,感激不尽![/quote]Last Modification : 15/07/2001你用的框架文件太老了72楼 发表于: 2005-01-12Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法我框架中的BOOL g_GoFullScreen=FALSE; // Go directly to fullscreen没有设置为直接全屏播放呀.你再看看Exe的文件中的VT文件释放到C:\\\\目录下的,当播放结束时,这个文件会被删除的.你在C:\\\\目录下找到的编译的ExE,是由于环境变量没有注册才会编译到C:\\下的.你可以在VC++中的Project--->Setting-->Link中把Out FileName设置为\"..\\PlayerStatic.exe\".来确定编译的ExE文件的正确路径现在的问题是,我只要这样设置BOOL g_GoFullScreen=FALSE; // Go directly to fullscreen拷贝到别的盘符下都可以,但一但我BOOL g_GoFullScreen=TRUE; // Go directly to fullscreen拷贝到别的盘符下就不行 73楼 发表于: 2005-01-12Re:既然楼主说我用的框架文件太老了,那我应该升级VT到最新版本喽!最好升级到哪个版本?还望指条明路!只看该作者 小中大 74楼 发表于: 2005-01-13Re:media,这个能不能去掉??? 只看该作者 小中大 图片:ddd.jpg 75楼 发表于: 2005-01-13Re:引用只看该作者 小中大 tony0424: Re:封装VT文件到一个EXE文件中的方法既然楼主说我用的框架文件太老了,那我应该升级VT到最新版本喽!最好升级到哪个版本?还望指条明路!如果你要把Shader.Lib编译进EXE文件中,不能用3.08的SDK(因为SDK中这个库有问题),3.0和3.05的都可以.你可以以动态链接的形式来实现Shader的效果.在SDK中生成一个Shader动态调用用到的.lib文件,静态编译的时候不要把Shader.lib编译进去(\\\\RegisterShaderBehaviors(pm);),把你生成的.lib文件加到你的框架文件中编译进行动态链接,不过这样的话,就是运行时你必须提供给用户那个DLL文件 76楼 发表于: 2005-01-13Re:引用只看该作者 小中大 cl781121: Re:封装VT文件到一个EXE文件中的方法media,这个能不能去掉??? 当然可以,你编辑字符段资源即可.77楼 发表于: 2005-01-13Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法当然可以,你编辑字符段资源即可.搞定!呵呵,删掉版本号就好了,能不能帮我看看上面的帖子啊,尤其是那个全屏的问题,我哪里都没有调,只把你说的路径改为d盘然后flase 改成了true,就不行了,帮我看看啊,截图为证 图片:ddd.jpg 78楼 发表于: 2005-01-13Re:引用只看该作者 小中大 cl781121: Re:封装VT文件到一个EXE文件中的方法搞定!呵呵,删掉版本号就好了,能不能帮我看看上面的帖子啊,尤其是那个全屏的问题,我哪里都没有调,只把flase 改成了true,就不行了,帮我看看啊在InitInstance()接口中注释掉这几行Code:if (g_GoFullScreen && strlen(FileName)<=0){ MessageBox(NULL,\"No file specified...\return FALSE;}因为这时候后我们的FileName指针变量指向为空:strlen(FileName)=079楼 发表于: 2005-01-13Re:引用只看该作者 小中大 tony0424: Re:封装VT文件到一个EXE文件中的方法那我再发一次,搂主辛苦了!给你改了一下编译没有问题,Shader可以编译进去,不过是3.0的,不是3.08的附件: Standalone Player.rar (538 K) 下载次数:9180楼 发表于: 2005-01-13Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法如果你要把Shader.Lib编译进EXE文件中,不能用3.08的SDK(因为SDK中这个库有问题),3.0和3.05的都可以.你可以以动态链接的形式来实现Shader的效果.在SDK中生成一个Shader动态调用用到的.lib文件,静态编译的时候不要把Shader.lib编译进去(\\\\RegisterShaderBehaviors(pm);),把你生成的.lib文件加到你的框架文件中编译进行动态链接,不过这样的话,就是运行时你必须提供给用户那个DLL文件 感谢楼主解答,可是小弟还是听得不太明白,恳请楼主再讲具体一点! 81楼 发表于: 2005-01-13Re:引用只看该作者 小中大 tony0424: Re:封装VT文件到一个EXE文件中的方法感谢楼主解答,可是小弟还是听得不太明白,恳请楼主再讲具体一点! 你看一下“动态链接”方面的知识就知道我的意思了 82楼 发表于: 2005-01-13Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法你看一下“动态链接”方面的知识就知道我的意思了 对不起,我试了一下,完全用动态链接的话知道该怎么做,但是只给shader做动态链接,其它的用静态,我就不知怎么做了,看来还得麻烦楼主指点了! 83楼 发表于: 2005-01-13Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法在InitInstance()接口中注释掉这几行Code:if (g_GoFullScreen && strlen(FileName)<=0){谢谢,解决了 84楼 发表于: 2005-01-13Re:这是我做的例子,不理解为什么会出现如下面的情况,标题栏下面显示“Directx 9 required”,shader效果还是有问题,哪位大哥能帮我解答只看该作者 小中大 图片:shangchuan1.jpg 85楼 发表于: 2005-01-13Re:正确的应该是下面这样的,这是从官方网站下的例子:只看该作者 小中大 图片:shangchuan2.jpg 86楼 发表于: 2005-01-13Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法10.把头文件\"afxRes.h\"包到Resource.h文件中去.在Resource.h中加入这一行:#include请问楼主为什么要“把头文件\"afxRes.h\"包到Resource.h文件中去”,这样做的目的是什么?87楼 发表于: 2005-01-14Re:只看该作者 小中大 它的作用适合于所有应用程序的一些通用MFC库资源包含进来,因为我们要编辑的对话框、字符串等资源不是由AppWizard生成的。88楼 发表于: 2005-01-14Re:只看该作者 小中大 这是小弟改的框架,目的是用动态链接的形式来实现Shader的效果,其它的还是用静态链接,有一定效果,但还是有点不对劲,希望楼主和各位大哥多家批评指正! 附件: Standalone Player.rar (51 K) 下载次数:8389楼 发表于: 2005-01-14Re:已经可以了:动态链接可以实现,不过你的实现方法不对.你要编辑SDK下边的Shader框架文件,生成它的Lib文件.只看该作者 小中大 注意:MSDN上的DirectX9.0C SDK是基于.net框架的,你如果用VC6当然会编译有错误了.你去下一个extras,我现在用的是VC6+VT3.08 SDK+DirectX9.0C SDK(是DirectX9.0b通过extras升级).VT中所有的Shader效果已经在静态编译的EXE中全部支持了90楼 发表于: 2005-01-14Re:如图只看该作者 小中大 图片:Fur.jpg 91楼 发表于: 2005-01-14Re:大哥!怎么做的?能让我看看框架吗?只看该作者 小中大 92楼 发表于: 2005-01-14Re:感谢!只看该作者 小中大 93楼 发表于: 2005-01-14Re:Shader中的特殊效果必须要用DirectX9.0C SDK编译平台.你可以去官方网站去查一下.只看该作者 小中大 VT3.08 SDK对DirectX9.0C SDK完全支持.94楼 发表于: 2005-01-14Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法Shader中的特殊效果必须要用DirectX9.0C SDK编译平台.你可以去官方网站去查一下.VT3.08 SDK对DirectX9.0C SDK完全支持.我太笨了!楼主的意思还是版本的问题?我到官方网站具体看哪方面内容啊? 95楼 发表于: 2005-01-15Re:想请教一下 我怎麽会有以下讯息--------------------Configuration: NewPlayer - Win32 Release--------------------Compiling resources...Compiling...NewPlayer.cppStdAfx.cppLinking...LINK : fatal error LNK1181: cannot open input file \"VxMath.lib\"Error executing link.exe.只看该作者 小中大 Player.exe - 1 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)96楼 发表于: 2005-01-17Re:引用只看该作者 小中大 dhimimi: Re:封装VT文件到一个EXE文件中的方法想请教一下 我怎麽会有以下讯息--------------------Configuration: NewPlayer - Win32 Release--------------------Compiling resources...Compiling...提示找不到相应的库文件,你要把SDK\\StaticLib目录添加到VC的Directories中,方法参见前边的帖子97楼 发表于: 2005-01-17Re:只看该作者 小中大 引用Media: Re:封装VT文件到一个EXE文件中的方法已经可以了:动态链接可以实现,不过你的实现方法不对.你要编辑SDK下边的Shader框架文件,生成它的Lib文件.注意:MSDN上的DirectX9.0C SDK是基于.net框架的,你如果用VC6当然会编译有错误了.你去下一个extras,我现在用的是VC6+VT3.08 SDK+DirectX9.0C SDK(是DirectX9.0b通过extras升级).VT中所有的Shader效果已经在静态编译的EXE中全部支持了楼主我的SDK的版本还是有问题,我的系统现在装的是windows xp sp2,我不知道现在该安装哪个版本的sdk,楼主能跟我具体说一下吗?谢谢!98楼 发表于: 2005-01-17Re:DirectX9.0b SDK用dxsdk_oct2004_extras升级到DirectX9.0C SDK只看该作者 小中大 99楼 发表于: 2005-01-17Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法DirectX9.0b SDK用dxsdk_oct2004_extras升级到DirectX9.0C SDK我按照楼主说的DirectX9.0b SDK用dxsdk_oct2004_extras升级到DirectX9.0C SDK后,在编辑SDK下边的Shader框架文件,生成它的Lib文件时出现如下错误∶E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(57) : error C2039: 'BeginPass' : is not a member of 'ID3DXEffect'C:\\DXSDK\\INCLUDE\\d3dx9effect.h(260) : see declaration of 'ID3DXEffect'E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(65) : error C2039: 'EndPass' : is not a member of 'ID3DXEffect'C:\\DXSDK\\INCLUDE\\d3dx9effect.h(260) : see declaration of 'ID3DXEffect'E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(74) : error C2039: 'CommitChanges' : is not a member of 'ID3DXEffect'C:\\DXSDK\\INCLUDE\\d3dx9effect.h(260) : see declaration of 'ID3DXEffect'E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(946) : error C2065: 'LPD3DXTEXTURESHADER' : undeclared identifierE:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(946) : error C2146: syntax error : missing ';' before identifier 'pTextureShader'E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(946) : error C2065: 'pTextureShader' : undeclared identifierE:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(961) : error C2065: 'D3DXCreateTextureShader' : undeclared identifierE:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(986) : error C2227: left of '->SetDefaults' must point to class/struct/unionE:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(1030) : error C2227: left of '->Release' must point to class/struct/union

E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(1236) : error C2039: 'pVertexShaderFunction' : is not a member of '_D3DXPASS_DESC'

C:\\DXSDK\\INCLUDE\\d3dx9effect.h(102) : see declaration of '_D3DXPASS_DESC'

E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(1236) : error C2039: 'pVertexShaderFunction' : is not a member of '_D3DXPASS_DESC'

C:\\DXSDK\\INCLUDE\\d3dx9effect.h(102) : see declaration of '_D3DXPASS_DESC'

E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(1237) : error C2039: 'pPixelShaderFunction' : isnot a member of '_D3DXPASS_DESC'

C:\\DXSDK\\INCLUDE\\d3dx9effect.h(102) : see declaration of '_D3DXPASS_DESC'

E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(1237) : error C2039: 'pPixelShaderFunction' : isnot a member of '_D3DXPASS_DESC'

C:\\DXSDK\\INCLUDE\\d3dx9effect.h(102) : see declaration of '_D3DXPASS_DESC'

E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(1244) : error C2039: 'pVertexShaderFunction' : is not a member of '_D3DXPASS_DESC'

C:\\DXSDK\\INCLUDE\\d3dx9effect.h(102) : see declaration of '_D3DXPASS_DESC'GetFXCapabilities.cppRenderOffscreenView.cppRenderScene.cpp

RenderSceneWithMaterial.cppRenderSceneWithPass.cppSetMFX.cpp

SetMFXTechnique.cppShaderize.cppRTView.cppGenerating Code...Error executing cl.exe.

ShaderLib.lib - 14 error(s), 0 warning(s)

如果我用DirectX 9.0 SDK Update - (October 2004)和dxsdk_oct2004_extras升级的,在编辑SDK下边的Shader框架文件,生成它的Lib文件时则不会出错,但是shader效果还是有问题。

100楼 发表于: 2005-01-17Re:楼主帮忙看看是什么问题只看该作者 小中大 101楼 发表于: 2005-01-17Re:引用只看该作者 小中大 tony0424: Re:封装VT文件到一个EXE文件中的方法我按照楼主说的DirectX9.0b SDK用dxsdk_oct2004_extras升级到DirectX9.0C SDK后,在编辑SDK下边的Shader框架文件,生成它的Lib文件时出现如下错误∶E:\\Program Files\\Virtools\\Virtools Dev 3.0\\Sdk\\Samples\\Behaviors\\Shader\\Sources\\RCKShader.cpp(57) : error C2039: 'BeginPass' : is not a member of 'ID3DXEffect'C:\\DXSDK\\INCLUDE\\d3dx9effect.h(260) : see declaration of 'ID3DXEffect'这是提示Lib中Function和头文件中declare的不一致,保证你的Inlude文件是DirectX9.0b SDK的102楼 发表于: 2005-01-17Re:我安装的是DirectX9.0b SDK只看该作者 小中大 103楼 发表于: 2005-01-17Re:文件的日期都是2002年的只看该作者 小中大 104楼 发表于: 2005-01-17Re:还是不能解决啊!只看该作者 小中大 105楼 发表于: 2005-01-17Re:引用只看该作者 小中大 tony0424: Re:封装VT文件到一个EXE文件中的方法文件的日期都是2002年的你的头文件根本就不是DirectX9.0b的,你要升级.我给你一个inlclude升级包 附件: Include.rar (52 K) 下载次数:108只看该作者 小中大 106楼 发表于: 2005-01-18Re:引用Media: Re:封装VT文件到一个EXE文件中的方法你的头文件根本就不是DirectX9.0b的,你要升级.我给你一个inlclude升级包 我按照你说的做了,但还是有问题啊!楼主的directx sdk到底是哪个版本啊!我在网上也没找着头文件是2003年2月16日的版本啊! 107楼 发表于: 2005-01-18Re:你看看框架文件,我用的是DirectX9.0C+Virtools3.08SDK,这个框架文件是基于你提供的文件修改的. 只看该作者 小中大 附件: Standalone Player.rar (68 K) 下载次数:110只看该作者 小中大 108楼 发表于: 2005-01-18Re:我现在可以做到直接进入全屏,可没有初始化了,我想让初始化按键存在于全屏当中,怎么弄啊109楼 发表于: 2005-01-18Re:引用只看该作者 小中大 cl781121: Re:封装VT文件到一个EXE文件中的方法我现在可以做到直接进入全屏,可没有初始化了,我想让初始化按键存在于全屏当中,怎么弄啊什么没有初始化?你是说黑屏,生成的temp.vmo大小为0K?110楼 发表于: 2005-01-18Re:就是vt里的着个东西只看该作者 小中大 图片:ddd.jpg 111楼 发表于: 2005-01-18Re:引用只看该作者 小中大 cl781121: Re:封装VT文件到一个EXE文件中的方法就是vt里的着个东西这个和框架文件没关系,和要播放VT文件有关系112楼 发表于: 2005-01-18Re:--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Linking...d3dx9.lib(cpsprogram.obj) : error LNK2001: unresolved external symbol ___security_cookied3dx9.lib(cvsprogram.obj) : error LNK2001: unresolved external symbol ___security_cookied3dx9.lib(cfxlprogram.obj) : error LNK2001: unresolved external symbol ___security_cookied3dx9.lib(cshaderprogram.obj) : error LNK2001: unresolved external symbol ___security_cookied3dx9.lib(cprogram.obj) : error LNK2001: unresolved external symbol ___security_cookied3dx9.lib(cparse.obj) : error LNK2001: unresolved external symbol ___security_cookied3dx9.lib(c30program.obj) : error LNK2001: unresolved external symbol ___security_cookie只看该作者 小中大 ……此处省去100行……\\PlayerStatic.exe : fatal error LNK1120: 3 unresolved externalsError executing link.exe.PlayerStatic.exe - 111 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)这是什么毛病啊?各位大虾帮帮忙:~(113楼 发表于: 2005-01-18Re:只看该作者 小中大 你安装的DirectX9.0C SDK对应的应该是VC.net开发环境的,而你在VC6编译就会出错.你查看一下前边的帖子,就知道就决办法了 114楼 发表于: 2005-01-18Re:如果有自己自定义的BB/该加入哪里呢~/只看该作者 小中大 115楼 发表于: 2005-01-18Re:磕磕碰碰终于走到了最后一步,但是问题又出现了:(--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Compiling resources...E:\\VT_EXE\\Standalone Player\\NewPlayer.rc (68): error RC2104 : undefined keyword or key name: IDC_STATICError executing rc.exe.只看该作者 小中大 PlayerStatic.exe - 1 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)有劳搂主了116楼 发表于: 2005-01-19Re:查看前边的帖子,可以找到解决办法... 只看该作者 小中大 117楼 发表于: 2005-01-19Re:终于搞掂了!谢谢楼主以及各位大虾!!!!只看该作者 小中大 118楼 发表于: 2005-01-19Re:问一个问题/是不是如果不把vmo释放出来就不能正常播放呢~/只看该作者 小中大 119楼 发表于: 2005-01-21Re:这里我们播放VT文件是使用Load(Char * Filename),它不支持直接播放资源中的二进制文件。只看该作者 小中大 120楼 发表于: 2005-01-21Re:我是按楼主说的去做的啊,,,可我生成exe的时候出了问题,,,下面是提示,,请楼言指教,,,谢谢...只看该作者 小中大 --------------------Configuration: NewPlayerStatic - Win32 Release--------------------Linking...LINK : fatal error LNK1181: cannot open input file \"d3dx9.lib\"Error executing link.exe.PlayerStatic.exe - 1 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)$(NEMORDIR)这个环境变量是什么意思啊,,为什么没有找到..还有不能打开\"d3dx9.lib\"是什么意思啊...121楼 发表于: 2005-01-21Re:只看该作者 小中大 提示NEMORDIR环境变量没有在系统中注册。库找不到,你要确定在VC中设置的搜索路径是否正确。请仔细阅读前边的帖子。 122楼 发表于: 2005-01-21Re:楼言谢谢你的讲解...我现在生成的播放器已经可以打开vmo文件了,,可是一导入后就停在第一帧画面就不再运行了,,我用IE播放是可以播放的...只看该作者 小中大 还有一个问题我看到一个也是讲解怎么样生成exe的,,它用的方法不是把vmo文件用当做一个资源导入面是用 sprintf(FileName,\"%s%s%s\meMain.vmo\" );语句来导入,,,,请问楼言主这个涵数的意义,,123楼 发表于: 2005-01-21Re:只看该作者 小中大 其实你仔细分析,这个Load(Char* str)函数是导入VT文件到播放器中,而我讲的导入资源文件到VC框架文件去,是为了封装。如果那照我讲的步骤做的话,可以直接播放VT文件的。你可以这样,用那个去掉按钮和鼠标相应之前那个播放器播放一下你的文件,看看是否正常。Write formatted data to a string.int sprintf( char *buffer, const char *format [, argument] ... );sprintf(FileName,\"%s%s%s\不是导入文件的意思,是给字符串赋值 。你要想研究明白框架文件,建议你学习一下C++语言。。。 124楼 发表于: 2005-01-21Re:问题是我现在只生成一个播放器,,什么也不改,,都不能正常播放,,只能停在第一帧..好让人头痛啊,,,辛苦版主了,,,只看该作者 小中大 C++好想学啊,,可是太让人头痛了,,,125楼 发表于: 2005-01-22Re:为什么我把这一句BOOL g_GoFullScreen=FALSE;// Go directly to fullscreen改为TURE全屏运行以后,退出时会报以上错误?只看该作者 小中大 图片:Untitled-1 copy.jpg 126楼 发表于: 2005-01-24Re:只看该作者 小中大 老大啊,,为什么我弄么这么久没还有弄出来,昨天把vs.net卸了,,装了vc6,,版主的模版文件编译没有问题可以生成播放器,然后我按版主说的导入vmo文件,,导入成功后,生成的exe一版黑屏,不能播放我导入的文件,在C盘可以看到临时文件tem.vmo大小为0。版主帮帮忙吧,,,127楼 发表于: 2005-01-24Re:引用只看该作者 小中大 am8888: Re:封装VT文件到一个EXE文件中的方法老大啊,,为什么我弄么这么久没还有弄出来,昨天把vs.net卸了,,装了vc6,,版主的模版文件编译没有问题可以生成播放器,然后我按版主说的导入vmo文件,,导入成功后,生成的exe一版黑屏,不能播放我导入的文件,在C盘可以看到临时文件tem.vmo大小为0。版主帮帮忙吧,,,生成的Temp文件为0,是由于你导入的资源文件的Type或ID和我程序中指定的不一样.请你仔细检查你的资源文件.128楼 发表于: 2005-01-25Re:运行全屏,退出时为什么会报错啊??只看该作者 小中大 129楼 发表于: 2005-01-26Re:引用只看该作者 小中大 ogailuo: Re:封装VT文件到一个EXE文件中的方法运行全屏,退出时为什么会报错啊??图片:退出.jpg 130楼 发表于: 2005-01-26Re:引用只看该作者 小中大 ogailuo: Re:封装VT文件到一个EXE文件中的方法我想问一下你是怎样退出的,直接按“ESC” 么??131楼 发表于: 2005-01-27Re:引用只看该作者 小中大 我想问一下你是怎样退出的,直接按“ESC” 么??是的,我直接按的ESC,在全屏的状态下没有标题栏,我不直接按ESC就退不出去呀132楼 发表于: 2005-01-27Re:只看该作者 小中大 这个提示是内存报错。你仔细检查,不在全屏的时候是否有这种情况。再看看是不是菜单上下文你做了修改或是窗体标题栏重绘你做了不该做的修改。133楼 发表于: 2005-01-27Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法这个提示是内存报错。你仔细检查,不在全屏的时候是否有这种情况。再看看是不是菜单上下文你做了修改或是窗体标题栏重绘你做了不该做的修改。清空TempDebug目录之后,打开全新的框架文件,不做其它任何修改,直接改进全屏,右键失效,按ESC之后故障依旧。非全屏很正常134楼 发表于: 2005-01-27Re:还有一个问题,我把自己做的VMO编译成exe运行时,显示的是一个正交视图而不是照相机视图,编译网上下载的vmo一切正常。是不是我的场景做得不对?只看该作者 小中大 班主!百忙之中帮我看看阿!135楼 发表于: 2005-01-27只看该作者 小中大 Re:你的框架文件肯定有问题,if (Key==VK_ESCAPE) if (TheRenderContext)if (TheRenderContext->IsFullScreen() && !g_DisableSwitch){ OnFullScreen();return 0;} else ExitVirtoolsPlayer();break;你检查这段代码中对应的函数和变量是否最了修改。实在不行的话,你把你的资源文件去除,把框架文件放上来,我看看136楼 发表于: 2005-01-27Re:大哥怎么改背景和标题栏颜色呢?我不想要外面的黑框和标题栏怎么搞啊?谢谢只看该作者 小中大 137楼 发表于: 2005-01-28Re:问一下,可不可以在全屏状态下还保留相应的按键,比如play、stop....只看该作者 小中大 138楼 发表于: 2005-01-28Re:这些按键是在标题栏上绘制的,全屏状态默认的窗体是没有标题栏的。合理的方法是全屏状态保持上下文菜单。只看该作者 小中大 139楼 发表于: 2005-01-28Re:版主请问一个关于图标的问题??只看该作者 小中大 我把资源文件中VT的图标换成自已的图标,生成exe后,,在平铺查看模式下看到是自已的图标,在详细信息下看到的还是VT的图标,还有运行的时候在任务栏上的图标也是VT的,,请问版主怎样才能把详细信息查看模式下和运行时任务栏上的图标改成自已的呢?140楼 发表于: 2005-01-28Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法你的框架文件肯定有问题,你检查这段代码中对应的函数和变量是否最了修改。实在不行的话,你把你的资源文件去除,把框架文件放上来,我看看出了全屏之外,没有做任何修改……退出时出错附件: VT_EXE.rar (42 K) 下载次数:57只看该作者 小中大 141楼 发表于: 2005-01-28Re:引用am8888: Re:封装VT文件到一个EXE文件中的方法版主请问一个关于图标的问题??我把资源文件中VT的图标换成自已的图标,生成exe后,,在平铺查看模式下看到是自已的图标,在详细信息下看到的还是VT的图标,还有运行的时候在任务栏上的图标也是VT的,,请问版主怎样才能把详细信息查看模式下和运行时任务栏上的图标改成自已的呢?你只修改了大小为32x32的那个图标,把16x16的也修改一下……图片:ICON.jpg 142楼 发表于: 2005-01-28Re:谢谢版主,,这真是一个好帖,,只看该作者 小中大 143楼 发表于: 2005-01-28Re:只看该作者 小中大 引用ogailuo: Re:封装VT文件到一个EXE文件中的方法出了全屏之外,没有做任何修改……退出时出错已经帮你改好了(添加代码之类的,你可以参见前边的帖子)附件: Standalone Player.rar (55 K) 下载次数:70只看该作者 小中大 144楼 发表于: 2005-01-28Re:引用ogailuo: Re:封装VT文件到一个EXE文件中的方法你只修改了大小为32x32的那个图标,把16x16的也修改一下……改这个就可以了呀145楼 发表于: 2005-01-28Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法提示找不到相应的库文件,你要把SDK\\StaticLib目录添加到VC的Directories中,方法参见前边的帖子可是我的VC里面并没有Directories>_<\"146楼 发表于: 2005-02-01Re:我装的directorx不是装到mssdk资料夹ㄟ是DXSDK那跟你的步骤会有什麽不同吗因为一直卡在我之前问的问题那边找不到Directories只看该作者 小中大 147楼 发表于: 2005-02-01只看该作者 小中大 Re:DXSDK是DirectX9 SDK的默认安装目录。找不到Directories,你是指什么?找不到设置链接库的菜单还是编译的时候错误提示?148楼 发表于: 2005-02-03Re:可是我的directx9 sdk安装时的默认目录不是mssdk 这样会有什麽差别吗另外Directories我找不到设置链接库的菜单>_<\"只看该作者 小中大 149楼 发表于: 2005-02-03Re:没有区别,只要你链接正确即可。只看该作者 小中大 150楼 发表于: 2005-02-03Re:Tools-->Options-->Directories只看该作者 小中大 151楼 发表于: 2005-02-04只看该作者 小中大 Re:--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Linking...LINK : fatal error LNK1181: cannot open input file \"d3dx9.lib\"Error executing link.exe.aa.exe - 1 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)一样有这问题存在搞不懂缺了什麽>_<\"图片:1.JPG 152楼 发表于: 2005-02-04Re:DXSDK的Lib目录一定要在VCMFC的上边。以前的帖子强调过的 只看该作者 小中大 153楼 发表于: 2005-02-04Re:我把dxsdk的lib移到最上面还是一样啦>_<\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"只看该作者 小中大 154楼 发表于: 2005-03-02Re:引用只看该作者 小中大 dhimimi: Re:封装VT文件到一个EXE文件中的方法我把dxsdk的lib移到最上面还是一样啦>_<\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"应该不会的,你在检查其他的设置,D3D的程序是否在本机上可以正常编译?155楼 发表于: 2005-03-09Re:只看该作者 小中大 提示我找不到WebServerManagerLib.lib,我在硬盘里查了一下,确实没有这个文件。怎么回事????是不是我的sdk不全阿--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Linking...LINK : fatal error LNK1104: cannot open file \"WebServerManagerLib.lib\"Error executing link.exe.PlayerStatic.exe - 1 error(s), 0 warning(s)156楼 发表于: 2005-03-10Re:老大~我做了一个有load object的文件,我如何把要导入的NMO文件也一起打包进去?只看该作者 小中大 还有我文件里摄像机比较多,但是打包后,在我设定的默认的摄像机镜头出现前,会跳出一个很奇怪的视角的镜头,然后再是我的默认镜头,这是为何??谢谢老大务必要帮我解决问题啊~157楼 发表于: 2005-03-10Re:这篇教程就是教你把CMO或VMO文件打包到EXE中的呀。只看该作者 小中大 你说得摄像机问题,我也遇到过,在刚导入场景的时候如已出现。你可以在程序的开始不激活你的MainCamera,等到完全进入之后在激活MainCamera。158楼 发表于: 2005-03-10Re:寒阿。。。这是怎么回事????只看该作者 小中大 图片:1.JPG 159楼 发表于: 2005-03-11Re:老大~是NMO文件只看该作者 小中大 就是我做了一个VMO文件,它用了一个BB叫load object ,可以把外部的NMO文件导入,我现在希望把那个VMO文件和NMO文件一起打包成EXE,如何解决呢??谢谢老大~~~160楼 发表于: 2005-03-11Re:Shader显示不正确,这个帖子中讨论过的。你看一下了 只看该作者 小中大 161楼 发表于: 2005-03-11Re:引用只看该作者 小中大 xxy: Re:封装VT文件到一个EXE文件中的方法老大~是NMO文件就是我做了一个VMO文件,它用了一个BB叫load object ,可以把外部的NMO文件导入,我现在希望把那个VMO文件和NMO文件一起打包成EXE,如何解决呢??把VMO中链接的NMO资源文件打包到EXE中,道理和VMO打包一样呀。Load之前先释放你需要的资源文件,EXIT时删除。162楼 发表于: 2005-03-11Re:那我是不是也把NMO文件也导入\"VIRTOOL\"??取名IDR_VIRTOOL2??然后程序哪里需要改动呢?老大一定要帮忙啊~~只看该作者 小中大 163楼 发表于: 2005-03-11Re:老大,不知道这样编译的程序对系统有什么样的需求?我编译完成后,试运行过的机器有一半报错:( 只看该作者 小中大 164楼 发表于: 2005-03-15Re:说清楚一些, \"试运行过的机器有一半报错\提示的错误是什么?只看该作者 小中大 165楼 发表于: 2005-03-16Re:只看该作者 小中大 引用Media: Re:封装VT文件到一个EXE文件中的方法你看看框架文件,我用的是DirectX9.0C+Virtools3.08SDK,这个框架文件是基于你提供的文件修改的. 我用了你的这个框架文件,版本和你的一样,为什么会出现以上的问题呢?图片:1.jpg 166楼 发表于: 2005-03-17Re:是由于环境变量没有定义.你在Project--->Settings---->Link中的Output File Name中輸入..\\Player.exe只看该作者 小中大 167楼 发表于: 2005-03-18Re:老大上面我搞错了~现在我碰到这样的问题我的Standalone Player就是那个你支持DirectX9.0C+Virtools3.08SDK的框架只看该作者 小中大 图片:1.jpg 168楼 发表于: 2005-03-18Re:现在用了DIRECTX 9.0 B SDK出现了这个问题~~汗死只看该作者 小中大 图片:1.jpg 169楼 发表于: 2005-03-18Re:用到Shader ,要用Virtools 3.08以上的SDK和DirectX 9.0c的SDK.DirectX 9.0b的SDK不行.只看该作者 小中大 你安装的DirectX9.0C SDK对应的应该是VC.net开发环境的,而你在VC6编译就会出错.你查看一下前边的帖子,就知道就决办法了170楼 发表于: 2005-03-21Re:http://www.microsoft.com/......9536162eb8&displaylang=en大哥,我还要厚着脸皮问你,你说的是这个版本的extras吗?怎么安装啊?我解开都是文件,没有安装文件.难道是把D3dx9 Visual Studio 6里的d3dx9.lib等文件去覆盖DIRECTX9.0b LIB里的文件吗???那Include里的文件不用动吗?只看该作者 小中大 171楼 发表于: 2005-03-21Re:引用只看该作者 小中大 VRT: Re:封装VT文件到一个EXE文件中的方法http://www.microsoft.com/......9536162eb8&displaylang=en大哥,我还要厚着脸皮问你,你说的是这个版本的extras吗?怎么安装啊?我解开都是文件,没有安装文件.难道是把D3dx9 Visual Studio 6里的d3dx9.lib等文件去覆盖DIRECTX9.0b LIB里的文件吗???那Include里的文件不用动吗?你说的对172楼 发表于: 2005-03-21Re:大哥~~~我成功了~~实在太感谢了~~我一定要请你好好的吃一顿~~~只看该作者 小中大 173楼 发表于: 2005-03-22Re:请问Media/如何做那种类似Director生成FullScreen的EXE呢/例如我现在显示器使用的是1280x1024的分辨率/而我用vt做的是1024x68分辨率的EXE/那如何在空白的地方以黑色的屏幕填充呢/只看该作者 小中大 如果改这种形式BOOL g_GoFullScreen=TURE;Vt虽然fullScreen了/可是他是同等的放大/锯齿会特别明显/并且另一个很重要的就是/如果在fullscreen模式下点击vt场景里的某个Web连接/那弹出Web页的同时/vt场景就会以桌面模式来显示了/174楼 发表于: 2005-03-22Re:大哥~偶已经知道如何把多个NMO文件导入框架,并且执行的时候同VMO一起释放出来只看该作者 小中大 但是打过包后object load 这个BB就不能LOAD外部的NMO文件了~按理说用RegisterNarrativesBehaviors(pm);应该是没问题的啊谢谢大哥帮忙解决一下啦~175楼 发表于: 2005-03-24Re:引用只看该作者 小中大 VRT: Re:封装VT文件到一个EXE文件中的方法大哥~偶已经知道如何把多个NMO文件导入框架,并且执行的时候同VMO一起释放出来但是打过包后object load 这个BB就不能LOAD外部的NMO文件了~按理说用RegisterNarrativesBehaviors(pm);应该是没问题的啊既然NMO能够释放出来,就可以用Load导入,你有可能是路径的问题176楼 发表于: 2005-03-29Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法VT 中使用shader,我这里播放没有任何错误.如果你在InitInstance()接口中如果加入注册其他的库函数比如\"RegisterShaderBehaviors(pm)\那就要注意,不能用Virtools3.08 SDK的Shader.lib否则就会出现你上边的错误.我已经测试过了,在VT3.0 SDK+DirectX9.0b SDK+VC++6.0编译的Exe中运行那个人头的Shader,没有任何问题的.如下图:大侠,您好,我的vt是3.08,directx9.0summer2004,vc++6,link出错:d3dx9.lib(fastftoa.obj) :error LNK2001: unresolved external symbol __aulldvrm,请教如何解决177楼 发表于: 2005-03-29Re:我把vt升级到3.0.0.98,dx用dx90bsdk,LINK : fatal error LNK1104: cannot open file \"WebServerManagerLib.lib\"只看该作者 小中大 178楼 发表于: 2005-04-21Re:只看该作者 小中大 强,版主真是细心耐心,我看了以后虽然不能编译好静态的播放器,因为DX9的版本太高,VT的SDK无法适应,所以只能编译了动态的播放器。现在有个问题,编译好的播放器似乎只能放在VT的目录下面,运行的VMO文件才播放正常,一旦我把这个播放器放到外面的任何目录,那么我就无法正常播放,事实上我已经把应该索引到的DLL文件都复制到那个目录里面去了,启动播放器也正常,但是载入VMO文件以后播放器里面就一直是黑屏,请教高手回答这个问题,谢谢:)179楼 发表于: 2005-06-07Re:Virtools SDK这么好的帖子顶起来~~ 不能让他沉了!!只看该作者 小中大 180楼 发表于: 2005-07-19Re:Virtools SDK问一下,这个窗口是从那里点出来的了啊,.我在VC6里面上了好久都没有找到.只看该作者 小中大 郁闷啊,请Media版主指教,我的平台是VT3.0050,sdk是directx 9.0a的 VC++6.0181楼 发表于: 2005-07-19Re:Virtools SDK你说的是那个窗口? 只看该作者 小中大 182楼 发表于: 2005-07-20Re:Virtools SDK就是上面这张图片,我在VC中找不到啊只看该作者 小中大 183楼 发表于: 2005-07-20Re:Virtools SDK引用只看该作者 小中大 ilymxq: Re:Virtools SDK开发教程之一(封装VT文件到一个EXE文件中的方法)就是上面这张图片,我在VC中找不到啊你发的图片,我们看不到的哦。184楼 发表于: 2005-07-20Re:Virtools SDK只看该作者 小中大 就是第一页那个 << 图片附件: 04_Edit.jpg >> 跟 << 图片附件: 05_Edit.jpg >> 这两张图片的窗口是从那里打开的啊,我在VC中找不到啊我的VC中只有这些是不是那里没安装全啊185楼 发表于: 2005-07-20Re:Virtools SDK请问/我如果想释放出多个文件改如何设置呢/例如我有一个Main.vmo/还有一些*.nmo文件/甚至还有avi/wav文件/我想让他们同随着Main.vmo释放到同一目录/我该如何做呢`~~只看该作者 小中大 186楼 发表于: 2005-07-20Re:Virtools SDK请问一下Media我在编译的时候显示--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Compiling resources...Linking...只看该作者 小中大 到这里很长时间都不动,好像死在那里一样的,是什么回事啊,那里错了吗187楼 发表于: 2005-07-20Re:Virtools SDKMedia版主,小弟,磕磕碰碰到了编译都通过了,可调试又出了问题Loaded 'D:\\TEST\\PlayerStatic.exe', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\ntdll.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\mfc42.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\msvcrt.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\KERNEL32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\GDI32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\USER32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\COMDLG32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\shlwapi.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\ADVAPI32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\rpcrt4.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\comctl32.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\SHELL32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\avifil32.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\winmm.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\OLE32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\msacm32.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\msvfw32.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\n.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\version.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\lz32.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\imm32.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\mfc42loc.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\mmdrv.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\Downloaded Program Files\\CnsMin.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\NETAPI32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\secur32.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\ntdsapi.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\dnsapi.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\wsock32.dll', no matching symbolic information found.只看该作者 小中大 Loaded 'E:\\WINNT\\system32\\ws2_32.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\ws2help.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\WLDAP32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\netrap.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\samlib.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\nview.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\psapi.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\OLEAUT32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\NTMARTA.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\WINSPOOL.DRV', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\mpr.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\nvwrszhc.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\indicdll.dll', no matching symbolic information found.Loaded 'E:\\KAV2005\\KASocket.DLL', no matching symbolic information found.The thread 0xBD4 has exited with code 0 (0x0).

Loaded 'E:\\WINNT\\system32\\clbcatq.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\dinput.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\hid.dll', no matching symbolic information found.

Loaded 'E:\\WINNT\\system32\\SETUPAPI.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\USERENV.DLL', no matching symbolic information found.Cannot create, DirectInput Version 7 object switching to Version 5Cannot create, DirectInput Version 5 object switching to Version 3

Loaded 'E:\\WINNT\\system32\\ddraw.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\dciman32.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\dmusic.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\dsound.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\d3d8.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\d3d8thk.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\dpnhpast.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\rsaenh.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\CRYPT32.DLL', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\msasn1.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\d3d8.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\d3d8thk.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\wdmaud.drv', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\wdmaud.drv', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\wdmaud.drv', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\wdmaud.drv', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\wdmaud.drv', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\wdmaud.drv', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\wdmaud.drv', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\msacm32.drv', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\ksuser.dll', no matching symbolic information found.Loaded 'E:\\WINNT\\system32\\nvwddi.dll', no matching symbolic information found.The thread 0xB90 has exited with code 0 (0x0).The thread 0x824 has exited with code 0 (0x0).

The thread 0xAF8 has exited with code 0 (0x0).The thread 0xB60 has exited with code 0 (0x0).The thread 0xB54 has exited with code 0 (0x0).The thread 0xB88 has exited with code 0 (0x0).The thread 0xBC4 has exited with code 0 (0x0).The program 'D:\\TEST\\PlayerStatic.exe' has exited with code 0 (0x0).又这么一大串的提示信息,打包生成的EXE文件是有的,运行起来,C:\emp.vmo这个临时文件为什么是0KB的啊188楼 发表于: 2005-07-20Re:Virtools SDK终于可以打包了,可是效果怎么不对啊,做的是一个开车的场景,里面车了变的好黑啊,怎么回事啊,请问一下版主只看该作者 小中大 189楼 发表于: 2005-08-26Re:Virtools SDK请教 Media 兄:我的EXE的资源怎么一点都不能修改呢?导入也不行啊(VT版本:3.0.0.29),结果如下:--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Compiling resources...F:\\封装EXE\\Standalone Player\\NewPlayer.rc (63): error RC2104 : undefined keyword or key name: IDC_STATICError executing rc.exe.只看该作者 小中大 PlayerStatic.exe - 1 error(s), 0 warning(s)万分感谢!!190楼 发表于: 2005-08-26Re:Virtools SDK把#include 只看该作者 小中大 加入到你的Resource.h文件中191楼 发表于: 2005-08-26Re:Virtools SDK引用只看该作者 小中大 Media: Re:Virtools SDK开发教程之一(封装VT文件到一个EXE文件中的方法)把#include 加入到你的Resource.h文件中衷心感谢!发了以后,发现自己提了个傻问题。 还有一事相求: 我的VMO文件中有shader效果,但编译后出不来。您在前边的贴子中说这与 VT 和 DirectX 版本有关。现在我已下了并安装了合适的 DX 版本,但没有VT3.08,如果现有的3.0.0.29下,要实现 shader 效果该怎么办?烦请您指出。再次致以衷心的感谢!!辛苦了!!!另外,我想在独立播放器中用Physics模块,如何编程?192楼 发表于: 2005-08-29Re:Virtools SDK版主,有几个问题想请教:只看该作者 小中大 1、我的机子装的VT3.08,VC++6,安装了DirectX 9.0 SDK,想升级到DirectX 9.0c,从网上下了dxsdk_oct2004_extras.exe,可是运行它却象解压缩一样得到4个文件夹:D3dx9 Visual Studio 6,Direct3D,Direct Show和Documentation,不知怎么升级。后又到网上下了directx_9c_Dec04sdk_redist.exe,运行后虽然安装了,却没有查看到DirectX SDK 到底是9.0还是9.0c。2、我用你在第8页给tony0424修改的框架文件进行编绎,却出现错误如图:[img][/img]烦请版主指教,先谢了!图片:snap3.jpg 193楼 发表于: 2005-08-29Re:Virtools SDK你把DX SDK升级,方法是,把升级包中的头文件,库文件和d3dx9d.dll,分别拷贝到指定的目录中覆盖即可。只看该作者 小中大 Virtools SDK的版本要保证3.08以上。194楼 发表于: 2005-08-30Re:Virtools SDK只看该作者 小中大 谢谢版主,前面的问题解决了,用版主提供的框架文件能够编绎一个空的 不是全屏的exe文件,可当我想修改ResourceView中的图标,TITLE项及Import Vmo 文件时,想展开NewPlayer resources,Vc++6却出现报错,如图:我试了一下,在没有删除FileView中所有找不到位置的档案(只留下NewPlayerStatic files)前能够展开NewPlayer resources.图片:snap.jpg 195楼 发表于: 2005-08-31Re:Virtools SDK在VC文件中,我的资源文件的路径和你的不同,不能编辑的,所以打开会报错只看该作者 小中大 196楼 发表于: 2005-09-02Re:Virtools SDK急救!急救!Media版主,只看该作者 小中大 为什么我的VC++6打开Sample.dsw文件(我自已机器上的和网上下的Sample文件都有一样的结果),只能编绎动态的文件(只留下NewPlayer files, 可以打开NewPlayer resources,并且进行修改编辑).动态编绎成功。而不能进行静态编绎,只留下NewPlayerStatic files,一点击NewPlayer resource前的+号,就出现MSDEV.EXE应用程序错误,\"....\"指令引用的\"....\"内存不能read,(如前面我发的图)。真是烦人,我试了试,如果先不删除NewPlayer files ,使它与NewPlayerStatic files共存,这样可以编辑NewPlayer resouses,然后我再删除NewPlayer files,可是当修改Resource.h 文件,把#include加进去,提示:E:\\...\\Resource.hThis file has been modefied outside of Microsoft Developer Studio .Do you want to reload E:\\...\\NewPlayer.rc 选择yes,然后我又Compile NewPlayer.rc文件一次,ok, no errors and warnings,可是重新点击NewPlayer resources 前的+号时又出现MSDEV.EXE应用程序错误,\"....\"指令引用的\"....\"内存不能read, 试了好久都解决不了。恳请版主指点迷津!197楼 发表于: 2005-09-13Re:Virtools SDK先不要编辑资源头文件,自己去操作那些资源文件,试试,如还不行,把你报错的文件放上来只看该作者 小中大 198楼 发表于: 2005-09-24Re:Virtools SDK谢谢楼主!偶现在有成果了。程序这关多亏了您!!只看该作者 小中大 199楼 发表于: 2005-09-26Re:Virtools SDK只看该作者 小中大 版主,前面的问题我摸索了一下:删除VC++6,重装了vc.net 2003,和DirectX 9.0c SDK oct 2004,打开Resourses时,不再出现内存错误的报警。可是编绎时却出现如上图的提示。(我的系统:win2000sp4, virtools 3.00.80, vc.net203, DirectX 9.0c SDK )图片:jk SNAP2.JPG 200楼 发表于: 2005-10-13Re:Virtools SDK也可以参考http://www.virtools.com.t......bbs.asp?boardID=6&ID=1484只看该作者 小中大 201楼 发表于: 2005-10-16Re:Virtools SDK谢谢facemao3的回复,我试一下再与你联系。只看该作者 小中大 202楼 发表于: 2005-10-20Re:Virtools SDK真郁闷,能帮我吗只看该作者 小中大 图片:未标题-1.jpg 203楼 发表于: 2005-10-26Re:Virtools SDK辛苦Mediale!好斑竹!只看该作者 小中大 204楼 发表于: 2005-10-29Re:Virtools SDK只看该作者 小中大 Media版主,在VT中我输入一段MP3作为背景音乐,也已将Sound设置为 Include in the CMO files.,且输出成VMO文件后,音乐播放正常,可编绎成静态EXE文件后却没有了背景音乐,而我同文件加入的开关门声却有,是不是编绎EXE时只能输出WAV的声音?还是应该在cpp文件中哪个地方修改下呢?205楼 发表于: 2005-10-31Re:Virtools SDK只看该作者 小中大 后来又试了一下,把背景音乐由MP3改为WAV文件(文件巨大,有50多M),可是编绎后还是没有声音,可见不是文件类型的原因。206楼 发表于: 2005-11-01Re:引用只看该作者 小中大 Media: Re:封装VT文件到一个EXE文件中的方法如图我这里安装了DirectX8 SDK和DirectX9 SDK)我的VC++出现的界面怎么与兄弟您的不一样啊?请看:图片:Snap2.jpg 207楼 发表于: 2005-11-10Re:Virtools SDK总算成功了。感谢斑竹。只看该作者 小中大 208楼 发表于: 2005-11-27Re:Virtools SDK引用只看该作者 小中大 newmanou: Re:Virtools SDK开发教程之一(封装VT文件到一个EXE文件中的方法)后来又试了一下,把背景音乐由MP3改为WAV文件(文件巨大,有50多M),可是编绎后还是没有声音,可见不是文件类型的原因。这个现象应该是声音文件的封闭选项不正确造成的。应该选择raw data项。而默认的是external。209楼 发表于: 2005-12-26Re:Virtools SDK版主级各位高手大大好只看该作者 小中大 我按照教学的步骤做到最后却出现以下的错误讯息请教该修正呢

============================================

Deleting intermediate files and output files for project 'NewPlayerStatic - Win32 Release'.--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Compiling resources...

C:\\000\\Standalone Player\\NewPlayer.rc (68): error RC2104 : undefined keyword or key name: IDC_STATICError executing rc.exe.

PlayerStatic.exe - 1 error(s), 0 warning(s)

=============================================

210楼 发表于: 2005-12-26Re:Virtools SDK引用只看该作者 小中大 bcwang: Re:Virtools SDK开发教程之一(封装VT文件到一个EXE文件中的方法)版主级各位高手大大好我按照教学的步骤做到最后却出现以下的错误讯息请教该修正呢问题已解决谢谢各位但有一个新问题我执行 .exe 后画面一闪后主程式就自动关掉了为何呢会是语系的问题吗我是繁体机的谢谢大家啦211楼 发表于: 2006-02-06Re:Virtools SDK只看该作者 小中大 提示我找不到WebServerManagerLib.lib,我在硬盘里查了一下,确实没有这个文件。怎么回事????是不是我的sdk不全阿--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Linking...LINK : fatal error LNK1104: cannot open file \"WebServerManagerLib.lib\"Error executing link.exe.PlayerStatic.exe - 1 error(s), 0 warning(s)我也是这个问题啊!!!----------------------------------------------*************************有理想在的地方,地狱就是天堂 ;有希望在的地方,痛苦也成欢乐 !所有的胜利,与征服自己的胜利比起来,都是微不足道 ;所有的失败,与失去自己的失败比起来,更是微不足道 !******************************************http://bbs.thtfvr.com/-----------http://www.virtools.com.tw/bbs/index.asp213楼 发表于: 2006-04-03Re:Virtools SDK封装VT文件到一个EXE文件中和用vt+vc创建一个BB有什么联系区别?只看该作者 小中大 214楼 发表于: 2006-04-03Re:Virtools SDK封装VT文件到一个EXE文件和用vt+vc创建一个BB有什么联系区别?只看该作者 小中大 215楼 发表于: 2006-04-05Re:Virtools SDK 为什么我没有出现这张图片和一页另外一张,我在project中没找到见到option.只看该作者 小中大 图片:未命名.JPG 216楼 发表于: 2006-04-05Re:Virtools SDK导入也不行啊(VT版本:3.0),结果如下:--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Compiling resources...F:\\封装EXE\\Standalone Player\\NewPlayer.rc (63): error RC2104 : undefined keyword or key name: IDC_STATICError executing rc.exe.只看该作者 小中大 PlayerStatic.exe - 1 error(s), 0 warning(s)我加入#include到Resource.h又出现下面问题:--------------------Configuration: NewPlayerStatic - Win32 Release--------------------Compiling...NewPlayer.cppC:\\Program Files\\Microsoft Visual Studio\\vc\\Standalone Player\\stdafx.h(21) : fatal error C1083: Cannot open include file: 'CKAll.h': No such file or directoryStdAfx.cppC:\\Program Files\\Microsoft Visual Studio\\vc\\Standalone Player\\stdafx.h(21) : fatal error C1083: Cannot open include file: 'CKAll.h': No such file or directoryError executing cl.exe.PlayerStatic.exe - 2 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)斑竹你一定要帮我,我也经看你学着做好几天了,终于走到最后,憋了好久的问题。217楼 发表于: 2006-04-08Re:Virtools SDK前面的问题已经解决,现在出现LINK : fatal error LNK1181: cannot open input file \"d3dx9.lib\"Error executing link.exe.只看该作者 小中大 PlayerStatic.exe - 1 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)这类错误是不是如版主前面所说,我的directx SDK版本太新,不支持vt3.0+vc6.0?218楼 发表于: 2006-04-08Re:Virtools SDKLinking...只看该作者 小中大 NewPlayer.obj : error LNK2001: unresolved external symbol \"struct CKPluginInfo * __cdecl CKGet_WebServerManager_PluginInfo(int)\" (?CKGet_WebServerManager_PluginInfo@@YAPAUCKPluginInfo@@H@Z)NewPlayer.obj : error LNK2001: unresolved external symbol \"void __cdecl Register_WebServerManager_BehaviorDeclarations(class XArray *)\" (?Register_WebServerManager_BehaviorDeclarations@@YAXPAV?$XArray@PAVCKObjectDeclaration@@$0A@@@@Z)NewPlayer.obj : error LNK2001: unresolved external symbol \"struct CKPluginInfo * __cdecl CKGet_WavReader_PluginInfo(int)\" (?CKGet_WavReader_PluginInfo@@YAPAUCKPluginInfo@@H@Z)NewPlayer.obj : error LNK2001: unresolved external symbol \"class CKDataReader * __cdecl CKGet_WavReader_Reader(int)\" (?CKGet_WavReader_Reader@@YAPAVCKDataReader@@H@Z)\\PlayerStatic.exe : fatal error LNK1120: 4 unresolved externalsError executing link.exe.PlayerStatic.exe - 5 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)这是怎么回事?谁来救我!219楼 发表于: 2006-04-21Re:Virtools SDK我用的。net,dx9.0c。屏蔽掉// #pragma comment(lib,\"Mp3ReaderLib\")只看该作者 小中大 // #pragma comment(lib,\"libmad\")这两个lib链接(找不到)后怎么出来了无法打开文件“msvcirt.lib”这个我怎么都找不到在那里调用的,楼主帮忙看看是怎么回事220楼 发表于: 2007-06-20--------------------Configuration: CustomPlayer - Win32 Debug--------------------Linking...LINK : fatal error LNK1104: cannot open file \"vxmathd.lib\"执行 link.exe 时出错.只看该作者 小中大 CustomPlayer.exe - 1 error(s), 0 warning(s)老大 \"vxmathd.lib\" 是什么东西啊? 老提示出这个.....221楼 发表于: 2007-08-01Standalone Player 程序不同我的完全是.net版本,而且你提到的关于case BTN_PLAY: g_CurrentPlayState|=1;OnPlayPause(0);break;case BTN_RESET:g_CurrentResetState=2;OnReset();break;case BTN_LOAD:g_CurrentLoadState=2;OnLoad();break;我的程序中也没有相应的代码对应!甚至我也没有sample.dsw能把你的这个程序给我看看吗?谢谢!只看该作者 小中大 222楼 发表于: 2007-08-09版主你好,我参照你的教程做不出来,还请你指点。只看该作者 小中大 我的系统winxp,编程环境是Microsoft Visual Studio .net 2003,安装了Microsoft DirectX SDK (August 2007),使用的VT是4.0版的,编译后出现如下提示Initialisation ErrorCannot read configuration/command line.Player will quit!223楼 发表于: 2007-08-10问题已经解决,编译没问题,出现上述提示是因为需要在命令行下输入参数只看该作者 小中大 224楼 发表于: 2007-10-22只看该作者 小中大 --------------------Configuration: NewPlayer - Win32 ReleaseDebug--------------------Compiling resources...Compiling...Linking...Error spawning link.exePlayer.exe - 1 error(s), 0 warning(s)The following environment variables were not found$(NEMORDIR)225楼 发表于: 2008-05-11这个帖子太强了,我一定要收藏~!只看该作者 小中大

因篇幅问题不能全部显示,请点此查看更多更全内容