窗口句柄不正确

function 关闭窗口(){ var wk=CreateObject("kwps.application"); wk.visible=true; const {FindWindowW} = ffi.LoadLibrary('user32', { FindWindowW:{returnType:"uint32",parameters:[ "pointer", "pointer"]}, }) var s=3;//加入断点便于窗口加载完毕。 var h0=FindWindowW(null,s_p("WPS Office").p)//查找的句柄不正确 var s=3;//加入断点便于观察h0的值。 } function s_p(str){ var a=ffi.Struct([ {name:"u",type:"u16string"}, {name:"p",type:"pointer"}]) var b=new a(); return (b.u=str,b); } 仅加载框架时,查找该框架窗口句柄从正确,不知什么原因?
安徽省
浏览 413
收藏
6
分享
6 +1
6
+1
全部评论 6
 
wils
wils Lv.2 潜力创作者

Lv.2潜力创作者

不该用Struct,返回的也不是字符串的指针 这里其实不需要s_p方法 FindWindowW:{returnType:"uint32",parameters:[ "u16string", "pointer"]}, 然后直接 FindWindowW(null,"WPS Office")
· 海南省
回复
叶定伟
感谢指点。经测试:FindWindowW(null,"WPS Office")直接这样用会报错。
· 安徽省
回复