有关MCISendString函数的问题(50分)

  • 主题发起人 主题发起人 iren_cui
  • 开始时间 开始时间
I

iren_cui

Unregistered / Unconfirmed
GUEST, unregistred user!
我在使用
function mciSendString(lpstrCommand, lpstrReturnString: PChar;
uReturnLength: UINT;
hWndCallback: HWND): MCIERROR;
stdcall;
时总是出现Incompatible types:'String'and'PChar'的错误提示,请问
如何定义PChar类型的变量
 
用pchar必须先分配内存的
var s:pchar;
begin

getmem(s,100);
//分配100个字节
s:='asdfsdf';

end;


另外的办法
var s:array[0..100] of char;
//这样也可以
begin

s:='asdfsdf'
end;
 
我都是这么用的,
PChar(aString);
但被 cAkk 数落了一通, 还是不改.
 
SuperMMX的用法很对。
 
多谢各位的答案,待我试试再送分.
 
我是这样作了一个小程序学习这个函数的
var
errcode:integer;
begin

MCICommand:=Edit1.Text;//命令语句
errcode:=mciSendString(MCICommand,retstring,128,0);
在执行时出错的地方是变量retstring,我用 SuperMMX和yoller的方法定义了之后还是出同样的错,是不是还有永别的问题呢??多谢指教.
 
同意SuperMMX的用法

 
var
mci:string;
mciid:integer;
begin

mciid:=mcigetdeviceid(nil);
mci:='setaudio '+inttostr(mciid)+ ' off';
mcisendstring(pchar(mci),0,nil,0);
end;




 
接受答案了.
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部