你先尝试一下将一个string类型直接作为参数:Dim x as string*256
dim i as longi = 256
mciSendString "...",x,i,...其中...是另外的参数。 应该是可以的。如果不可以。试一下将参数lpstrReturnString 定义为Long类型的:
Public Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As Long, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
这样返回的是指向字符串的指针。另外参数uReturnLength 应该是返回的返回字符串的长度,你可以利用API函数Copymemory将lpstrReturnString 指向的uReturnLength 长度的字符串拷贝到程序的字符串中。注意Copymemory的定义,源应该定义为Byval ...Long类型的,目标定义为Byval...String类型的。
dim i as longi = 256
mciSendString "...",x,i,...其中...是另外的参数。 应该是可以的。如果不可以。试一下将参数lpstrReturnString 定义为Long类型的:
Public Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As Long, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
这样返回的是指向字符串的指针。另外参数uReturnLength 应该是返回的返回字符串的长度,你可以利用API函数Copymemory将lpstrReturnString 指向的uReturnLength 长度的字符串拷贝到程序的字符串中。注意Copymemory的定义,源应该定义为Byval ...Long类型的,目标定义为Byval...String类型的。
解决方案 »
- vb重命名文件报错:在重命名时不能指定别的文件夹或磁盘
- 利用combo和text控件输入内容,通过ADO进行查询!救急了,谢谢!
- 如何在VB和ASP.NET之间传递参数
- 用VB如果获取当前某个进程占用的内存大小
- 扩充话题五个角,也散点分!
- 朗读发票金额的问题
- ▲.关于内部程序访问网络的问题 !
- [url=http://www.studydown.com/bbs/z_adv_get.asp?get=5229]学习资料下载网[/url]
- 高手:Garfield(猫仔|别忘了结帖,同志),帮帮忙吧!webbrowser的问题!
- 如何和Server通讯??server是c写的,我发送的是一个结构??怎么发??、
- 怎样取得本地和远程计算机的名字,IP和端口号
- access 可以双重索引么
这个问题我下午就解决拉
其实应该按你所说
只要用 dim xx as string*128就行啦128和你设定的文本缓冲大小有关
光用string是没法获取的
但我还是搞不懂string*128shi是什么意思?
就是定义一个长度为128字节的字符串,如果不定义*128的话,系统不会为字符串分配存储空间。