当设置在设置窗口中移动鼠标时,我想在安装程序中创建一个页面,这里是SendMessage文档:http://msdn.microsoft.com/en-us/library/windows/desktop/ms644950(v=vs.85).aspx 问题是我需要MAKELPARAM实现来设置x,y位置。 有人可以帮我这么做吗?
答案 0 :(得分:1)
在Inno Setup Pascal Script中,根据SDK的消息参数宏可以写成:
[Code]
type
LONG_PTR = LongInt;
LRESULT = LONG_PTR;
WPARAM = UINT_PTR;
LPARAM = LONG_PTR;
function MakeLong(A, B: Word): LongInt;
begin
Result := A or B shl 16;
end;
function MakeWParam(L, H: Word): WPARAM;
begin
Result := WPARAM(DWORD(MakeLong(L, H)));
end;
function MakeLParam(L, H: Word): LPARAM;
begin
Result := LPARAM(DWORD(MakeLong(L, H)));
end;
function MakeLResult(L, H: Word): LRESULT;
begin
Result := LRESULT(DWORD(MakeLong(L, H)));
end;
但我建议您不要使用消息发送来模拟用户的输入。我个人会使用SendInput
函数来使用更可靠的方法。我在this post
中做了一些基本的例子。