求xaudio.dll的vb函数声明以及相关的const和type

subzero 2003-10-01 02:01:56
如题,如果有例子代码最好了
...全文
53 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainstormmaster 2003-10-02
  • 打赏
  • 举报
回复
xaudio.pas看过了吗?

还是你想了解解码的原理?
subzero 2003-10-02
  • 打赏
  • 举报
回复
问题已经解决,感谢大家

发现一个新问题,虽然解决,不过不太明白,大家讨论讨论,如下:
c原型函数
typedef struct{
...
}decoderinfo;
int decoder_new(decoderinfo **decoder);
代码:
decoderinfo *decoder;
decoder_new(&decoder);

我转移到vb:
declare function decoder_new(byval decoderpointerpointer as long) as integer
代码:
dim d as decoderinfo
dim dp as long
dp=varptr(d)
decoder_new(varptr(dp))
这样应该是正解吧?
不过不对,d的指针变了,但是c函数还是把数据填写到以前的地址去,很奇怪呀!
只好这样了
copymemory varptr(d),dp,lenb(d)
才解决

我猜想应该是decoder_new函数创建一个decoderinfo指针,付给decoder。
但是在vb里面调用,为何好象结果是函数创了一个指针,但是值都是0,反而把值写到以前的地址去了,真的是很奇怪呀!!

那位明白是啥道理???
subzero 2003-10-02
  • 打赏
  • 举报
回复
感谢rainstormmaster
不过他的代码是已经封装低层的player,我想要的是解码相关的函数说明,主要是指针参数转换比较麻烦,那位有研究?
CHKK 2003-10-02
  • 打赏
  • 举报
回复
在VC中 中的指针数值等VB中一律用LONG就可以
VC中的字符串,在VB中用STRING*(字符数)
一般就可以了
rainstormmaster 2003-10-02
  • 打赏
  • 举报
回复
参考:
http://expert.csdn.net/Expert/FAQ/FAQ_Manage.asp?id=153832&topicid=1214768
rainstormmaster 2003-10-01
  • 打赏
  • 举报
回复
http://www.planet-source-code.com/vb/scripts/ShowZip.asp?lngWId=7&lngCodeId=10&strZipAccessCode=tp%2FC105667

里面有你需要的东西,不过是delphi代码

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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