请教,如何过程函数返回的指针,取得值

未解决  未打赏  
如虹 如虹  悬赏: 5 金币
发布:2017-07-08 08:44:19编辑:2017-07-08 10:35:53 分类:问答
import console;
import process;
var startExe=process("C:\Windows\System32\calc.exe");
console.varDump(startExe.handle);
console.pause();

startExe.handle得到的是一个指针,如何得到句柄值?谢谢
  • 蓝颜妖精 蓝颜妖精    
    Time:2017-07-08 09:01:21
    注意下组织语言,看不太懂你在说什么,如果是需要查找外部程序窗口的句柄,可以用以下示例源码:
    import console; 

    import winex;
    import process;

    process("C:\Windows\System32\calc.exe");

    //查找指定的主窗口
    窗口句柄,线程ID,进程ID = winex.find("CalcFrame","计算器" )

    console.log("窗口句柄=",窗口句柄);
    console.log("线程ID=",线程ID);
    console.log("进程ID=",进程ID);

    console.pause(true);

  • 如虹 如虹    
    Time:2017-07-08 09:24:45
    先谢谢。
    本来我是想取得句柄,然后给窗口置顶的。之前我也用了win.find()函数。
    但是有时候这个功能并不成功,我想是不是process没有启动完就执行后面的代码,没有得到“窗口句柄”导致置顶无效。
    import win;
    import winex;
    import process;

    process("C:\Windows\System32\calc.exe");

    //查找指定的主窗口
    窗口句柄,线程ID,进程ID = winex.find("CalcFrame","计算器" ) ;
    win.setTopmost(窗口句柄);

  • vaidurya vaidurya    
    Time:2017-07-08 10:35:05
    import win.ui;
    import winex;
    import process;
    /*DSG{{*/
    var winform = win.form(text="简码编辑 jianma123.com";right=390;bottom=244)
    winform.add(
    button={cls="button";text="运行并置顶指定程序";left=122;top=165;right=261;bottom=209;z=1};
    edit={cls="edit";left=37;top=29;right=346;bottom=145;edge=1;multiline=1;z=2}
    )
    /*}}*/

    winform.button.oncommand = function(id,event){

    var exepath = "C:\Windows\system32\calc.exe";
    process.execute(exepath)

    //等待指定的窗口
    窗口句柄, ,线程ID,进程ID = winex.wait( "计算器",,"CalcFrame","CalcFrame" );
    winform.edit.printf("窗口句柄=%s 线程ID=%s 进程ID=%s",窗口句柄,线程ID,进程ID);
    win.setTop(窗口句柄);

    }

    winform.show()
    win.loopMessage();
  • Admin Admin    
    Time:2017-07-08 10:59:25
    process运行程序,成功则返回进程对象,再利用此对象取出窗口句柄、线程ID、进程ID即可:
    import win.ui;
    import winex;
    import process;
    /*DSG{{*/
    var winform = win.form(text="简码编辑 jianma123.com";right=390;bottom=244)
    winform.add(
    button={cls="button";text="运行并置顶指定程序";left=122;top=165;right=261;bottom=209;z=1};
    edit={cls="edit";left=37;top=29;right=346;bottom=145;edge=1;multiline=1;z=2}
    )
    /*}}*/

    winform.button.oncommand = function(id,event){

    //process运行程序,成功则返回进程对象
    var startExe = process("C:\Windows\System32\calc.exe");//

    窗口句柄 = winex.find(null,null,startExe.id);
    线程ID = startExe.tid;
    进程ID = startExe.id;

    winform.edit.printf("窗口句柄=%s 线程ID=%s 进程ID=%s",窗口句柄,线程ID,进程ID);
    win.setTop(窗口句柄);

    }

    winform.show();
    win.loopMessage();

  • 如虹 如虹    
    Time:2017-07-10 09:58:08
    谢谢两位热心回答,不过两们的代码的测试没有成功。

    我只好转个思路。代码如下
    import win;
    import process;
    process("C:\Windows\System32\calc.exe");
    if(not t){
    win.msgboxTimeout("启动文件不成功或错误","提示",3000)
    return ;
    }
    var hwnd="";
    do{
    hwnd=win.find(,"计算器")
    }while(! hwnd)
    win.setTopmost(hwnd);
  • 如虹 如虹    
    Time:2017-07-10 09:59:25
    import win;
    import process;
    var startExe=process("C:\Windows\System32\calc.exe");
    if(not startExe){
    win.msgboxTimeout("启动文件不成功或错误","提示",3000)
    return ;
    }
    var hwnd="";
    do{
    hwnd=win.find(,"计算器")
    }while(! hwnd)
    win.setTopmost(hwnd);

  • Danboy Danboy    
    Time:2017-08-25 10:55:57

    prcs.handle是进程句柄不是窗口句柄

[ 发单/接单 ]
换IP投票软件
PC蛋蛋自动挂机投注
新浪微博发微博显示尾巴的方法,比如显示来自iphone 7
百度文库批量自动上传软件
一点资讯app刷阅读量/评论/收藏/订阅功能/手机号注册
定做一个阿迪达斯官网注册器(需要破点击文字式验证码)
定制人人网自动注册/修改资料/采集/私聊软件
酷狗繁星直播网页协yi
YY多功能刷订阅刷粉丝
滑块验证码本地识别
狼人杀POST QQ登录注册 获取金币数量
做个贴吧发发帖的软件懂的来
今日头条账号保存cookie
抖音粉丝软件定做,只要粉丝
百家号自媒体发文软件定制
哔哩哔哩播放量
读取TB某个商品上架时间和相关信息
网易博客软件定制
定制天涯论坛发帖软件
定制今日头条批量自动发私信软件
[ 站内搜索 ]
[ 最近热帖 ]
万能助手 -- 扩展库大全集 13744
用aardio创建web工程图文讲解(1) 12827
电脑编程入门自学:Fiddler https 抓包时提示创建根证书不成功问题彻底解决(https插件dll方式) 11734
aardio绘图演示 11405
通过chrome.dll中间件控制外部chrome浏览器 10117
我常用的aardio技巧 9767
《边学C语言边赚钱——简码编程入门教程》系列集合 9610
aardio使用http或whttp进行get/post请求时经常cookies失效怎么办?__电脑计算机编程入门教程自学 9318
[源码下载]简码视频加密解密播放工具个人版v1.0发布,永久免费开源的知识变现神器 8553
python人工智能爬虫系列:怎么查看python版本_电脑计算机编程入门教程自学 8045
编程入门教程:aardio批量上传文件并显示进度条 7878
aardio调用nodejs的ws模块做一个简单的聊天通信示例 7032
电脑计算机编程入门教程自学:原生JavaScript判断字符是否为A-Za-z英文字母 6903
电脑计算机编程入门教程自学:腾讯tx或极验geetest滑块按住拖动完成拼图验证成功破解思路及源码 6498
乐玩插件AARDIO调用 6080
[ 近期热答 ]
电脑计算机编程入门教程自学:什么是buffer缓冲区? 1
aardio_代码编辑框书签管理器开源 1
aardio_怎么用ide库从代码编辑框中取出指定行的源码? 1
aardio_codepage代码页编码乱码暴力猜解工具 1
aardio内嵌echarts图表添加鼠标事件响应功能 2
aardio列表框listbox_模糊查找和精确查找 1
8亿QQ绑定手机泄露:通过腾讯QQ号查询QQ绑定的手机号码漏洞! 1
carl listviewex调用例子----------源码搬运工 2
Aardio内嵌Electron浏览框怎么正确添加启动参数? 1
Aardio取汉字的字节数或字符数 1
怎么实现mssql图片数据的读写 2
aardio_从49个数字里选六个和值为150的不重复的数字 1
在嵌入wps的时候,多了一个 透明的边框,这个怎么消除它 1
万能助手入门帮助教程:学会科学地管理工作文件 1
Aaardio开发内嵌Electron浏览框放服务器上无法下载组件的解决办法 1