procedure ShowMsg(sMsg:string);
begin
ShowMessage(sMsg);
end;var hThread:THandle;
threadID:DWORD;
sParam:string;
begin
sParam:='how are you';
hThread:=CreateThread(nil,0,ShowMsg,@sParam,0,threadId);
end;创建线程这一行报 Not Enough Actual Parameters,请指教
begin
ShowMessage(sMsg);
end;var hThread:THandle;
threadID:DWORD;
sParam:string;
begin
sParam:='how are you';
hThread:=CreateThread(nil,0,ShowMsg,@sParam,0,threadId);
end;创建线程这一行报 Not Enough Actual Parameters,请指教
而且在线程里不能调用ShowMessage,会造成阻塞。
Upstairs, I can't agree with you More!
改成PChar试试
procedure ShowMsg(sMsg:pchar); stdcall; // 参数类型为pchar,并加上stdcall
begin
ShowMessage(sMsg);
end;var hThread:THandle;
threadID:DWORD;
sParam:pchar;
begin
sParam:='how are you';
hThread:=CreateThread(nil,0,@ShowMsg,sParam,0,threadId); // 注意参数
end;