神龙卡的回调函数function FMPCallbackProc(bMsg:BYTE; hMPEGStream:BYTE; dwValue:DWORD):WOR

ReadFile(Buf.hFile,Buf.Buffer[Buf.wIndex],MAX_BUF_SIZE,Buf.dwSize,nil)----->
ReadFile(Buf.hFile,Buf.Buffer[Buf.wIndex]^,MAX_BUF_SIZE,Buf.dwSize,nil) 就OK啦.刚测试了.
 
如果想做好就不要用DELPHI写吗,DELPHI里面对内存操作不是很好,可能是我水平太低,如果有谁需要,我可以把可以用的给他!
联系:ztz@cnvlan.com
 
其实我觉得使用VC写成DLL供DELPHI调用还好,本身神龙就给了VC的API和DEMO给我们,直接把他的CODE编译成一个标准的VC++动态库就可以了,时间花不了一天可以完成(不过我当时却花了四天时间),这样的好处有:
1、DLL具有独立的内存分配机制,由OS来来管理,你根本不用理会怎么分配,怎么读写,而且是REALMAGIC提供的,我想兼容性,效率等都不是一般程序员能评价的。
2、弄出来DLL以后,不管你用什么语言开发都通用,甚至最近我全用FLASH来实现了所有控制DVD卡的功能(通过DLL),所以具有很好的移值性,以后升级你的程序也简单得多了,甚至你喜欢的话完全可以用JAVA或什么东西写一个应用
3、把解压部分放到DLL里就可以脱离你的程序,尽管你的程序里有BUG,或者别的什么影响效率的执行代码也不会直接影响文件的播放,多好!
4、如果你只是想演示一下你的界面而不想把完整的代码全给人家做演示用,可以把DLL里的函数全部换成信息显示窗口,尽管人家把你的软件注册部分解密了也等于是垃圾,人家要是给你钱,就把真正的DLL发给他,完事。
当然,DLL也有不少不足,不过我还是喜欢DLL!本人愚见,高手莫笑,欢迎探讨!
 
顶部