D7下可以的代码XE2下无效
procedure TForm1.btn1Click(Sender: TObject);
var
h:HWND;
cmd:string;
cpd : COPYDATASTRUCT;
begin
h := FindWindow('ACG!',nil);
cmd := 'snapshot';
cpd.cbData := Length(cmd)+1;
cpd.lpData := PChar(cmd);
SendMessage(h,WM_COPYDATA,$12,Lparam(@cpd));
end;
这段代码我再D7下执行么问题,到XE2下执行能执行过去但是没效果,这个是什么原因。
[解决办法]
把PChar(cmd)替换成PAnsiChar(cmd)试试