无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: mdyblog
打印 上一主题 下一主题

[更新376#2825]PECMD2012.1.80.13_Win32_64.多窗口多线程.裸机系统2.3.3.1+18M酷M...

    [复制链接]
10891#
发表于 2015-9-25 12:16:01 | 只看该作者
mdyblog 发表于 2015-9-25 11:28
接着加强了, 加上了自动编号:递加, 时间

效果:

再修改尺寸,适合平板电脑.
圆满了!

_SUB WIN1,W535H220,截图,
    LABE -VCENTER -RIGHT LABE1,L10T38W60H24,延时(秒):,,
    EDIT -VCENTER -3D -RIGHT Delay,L72T38W40H24,0,,
    SPIN SPIN1,L114T39W18H22,:0:100,,0x80,0x80
    LABE -VCENTER -RIGHT LABE2,L143T38W40H24,对象:,,
    EDIT -VCENTER -3D wWid,L185T38W45H24,%wid%,,
    LABE -VCENTER -RIGHT LABE3,L250T38W58H24,保存类型:,,
    LIST lEXT,L315T40W55H20,PNG|BMP|JPG|GIF|TIFF,OnEXT,%ext%,
    LABE -VCENTER LABE4,L10T90W90H30,保存位置及文件,,
    EDIT -VCENTER -3D wFN,L105T90W380H30,%&capd%\%fn%.%ext%,NAME fn=%wFN%,
    ITEM ITEM2,L490T89W25H30,>>,OnBrow,
    ITEM ITEM1,L220T130W80H50,抓图, OnCap,
    ENVI @wFN.MSG=0x02A1: Mouse_In 文件名模板,####为自动编号\n$H $M $D $H $N $S 依次为年月日时分秒
    ENVI @wFN.MSG=0x02A3: TIPS *
    LABE -VCENTER -RIGHT LABE5,L375T38W50H24,编号:,,
    EDIT -VCENTER -3D -RIGHT wFID,L430T38W40H24,,%fid%,
    SPIN SPINFID,L472T39W18H22,:0:100:%fid%,,0x80,0x80
_END

点评

楼上附件更新了。  详情 回复 发表于 2015-9-25 13:09
回复

使用道具 举报

10892#
发表于 2015-9-25 12:23:34 | 只看该作者
本帖最后由 huaqingyuan 于 2015-9-25 12:25 编辑

请教,关于网路通讯.wcs,默认的协议是TCP。按照说明,我修改为UDP。收不到信息。修改地方主要为以下位置

    SOCK sk;;;17   //监听
    SOCK sr;;;17  //接收
    SOCK sc;;;17   //发送

    ENVI @sc.sock=&&err;;;17

总之我觉得需要修改的地方都修改了,但是TUP还是不能通讯。

网路通讯.wcs:
LOGS *E:\X.LOG
ENVI$ NL=0d 0a
ENVI  &::SO_REUSEADDR=4     //允许重新监视地址
CALL @WIN1

_SUB WIN1,W494H442,新窗口1,CALL OnQuit,
    SOCK sk   //监听
    SOCK sr  //接收
    SOCK sc   //发送
    EDIT &TOIP,L112T18W86H32,127.0.0.1,,
    EDIT &TOPORT,L212T18W60H30,6001,,
    EDIT &MYIP,L109T178W88H30,0.0.0.0,,
    EDIT &MYPORT,L212T180W58H30,6001,,
    MEMO &RMSG,L57T55W381H94,,,0x40
    MEMO &SMSG,L64T218W366H132,HELLO%NL%,,
    ITEM &ITEM8,L208T368W60H30,发送,CALL OnSend,
    ENVI &&OldMYIP=%&MYIP%
    ENVI &&OldMYPORT=%&MYPORT%
    ENVI &&OldTOIP=
    ENVI &&OldTOPORT=
    ENVI &&bListen=0
    ENVI$ &&BRMSG=*4096 0 //接收缓冲取
    ENVI @this.MSG=#1: CALL OnRecv
    ENVI @this.MSG=#2: CALL OnServer
    //CALL OnServer
    ITEM &BUTLISTEN,L375T182W60H30,监听,CALL OnListen,
    EDIT &MYIP2,L276T181W88H30,,,
    EDIT &TOIP2,L275T20W86H30,,,
    LABE LABE4,L58T19W43H30,对方:,,
    LABE LABE5,L59T178W44H30,本方:,,
_END
_SUB OnRecv
    ENVI @&RMSG=%&RMSG%%&BRMSG%
_END

_SUB OnQuit
    ENVI &bListen=-1
    ENVI @sk.close=
    ENVI @sr.close=
    ENVI @sc.close=
_END

_SUB OnListen
    IFEX $ 0 > %&bListen%, EXIT _SUB  
    FIND $ 0 = %&bListen%, TEAM CALL OnServer| EXIT _SUB
    TEAM ENVI &bListen=0| ENVI @sk.close=| ENVI @sr.close= //连接断开,会自动连上。
    //ENVI @&BUTLISTEN.Enable=0  //禁止
_END
_SUB OnServer
    IFEX $ 0 > %&bListen%, EXIT _SUB  
    ENVI @sk.sock=&&err
    ENVI#$ &&v=1   
    ENVI @sk.setsockopt=&&err;;%&SO_REUSEADDR%,&v  //允许重新监视地址
    ENVI &OldMYIP=%&MYIP%
    ENVI &OldMYPORT=%&MYPORT%
    ENVI @sk.bind=&&err;%&MYIP%;%&MYPORT%
    ENVI @sk.listen=&&err;1
    ENVI @WIN1=%&OldMYPORT%/%&OldMYIP%
    ENVI &bListen=1
    ENVI @&BUTLISTEN=监听中
    THREAD* CALL  Server
_END

_SUB OnCLient
    ENVI @sc.shutdown= //友好关闭
    WAIT 30
//    MESS ---wait 111
    ENVI @sc.sock=&&err
    ENVI @sc.connect=&&err;%&TOIP%;%&TOPORT%
    ENVI &OldTOIP=%&TOIP%
    ENVI &OldTOPORT=%&TOPORT%
_END

_SUB OnSend
    //ENVI  &&bOld=0
    //FIND $%&OldTOIP% = %TOIP%,!!  FIND $%&OldTOPORT% = %TOPORT%,!! ENVI  &&bOld=1
    //FIND $  0 = %bOld%,   CALL  OnCLient
    CALL  OnCLient
    ENVI &&Len=0
    ENVI &&MSG=%&SMSG%
    ENVI @sc.write=&&err;&Len;&MSG
_END

_SUB Server
    LOOP # %&bListen% = 1,
    {
    ENVI &=&bListen=%&bListen%
        ENVI @sk.fd=&&fd
        ENVI &&err=0
        ENVI &&Len=0
        //MESS -- accept
        ENVI @sr.accept=&&err;%&&fd%
        ENVI @sr.getname=;0;&&ip1  //本地实际IP
        ENVI @&MYIP2=%&ip1%  
        ENVI @sr.getname=;1;&&ip2  //对方实际IP
        ENVI @&TOIP2=%&ip2%  
        ENVI &&OK=1
        LOOP $ 11 = %&bListen%%&OK%,
        {
            ENVI &err=0
            ENVI @sr.read=&err;&Len;&BRMSG
            IFEX $ %&Len% > 0,  ENVI @WIN1.SENDMSG=#1 //OnRecv
            IFEX $ %&Len% <= 0, ENVI &OK=0
            WAIT 1
            //MESS --  &Len[ %&Len%]   &bListen[%&bListen%]  &OK[%&OK%] &err[%&err%]
        }
        WAIT 2
    }
    ENVI @&BUTLISTEN=监听
    //MESS  监听结束
    //  IFEX $ %&bListen% = 0,  ENVI @WIN1.SENDMSG=#2 //OnServer
_END


   


点评

UDP 无连接。 不需要listen 和accept。 建好就可以收发。  详情 回复 发表于 2015-9-25 12:57
回复

使用道具 举报

10893#
 楼主| 发表于 2015-9-25 12:57:19 | 只看该作者
huaqingyuan 发表于 2015-9-25 12:23
请教,关于网路通讯.wcs,默认的协议是TCP。按照说明,我修改为UDP。收不到信息。修改地方主要为以下位置
...

UDP 无连接。 不需要listen 和accept。
建好就可以收发。

回复

使用道具 举报

10894#
 楼主| 发表于 2015-9-25 13:09:40 | 只看该作者
2012qnmd 发表于 2015-9-25 12:16
再修改尺寸,适合平板电脑.
圆满了!

楼上附件更新了。
回复

使用道具 举报

10895#
 楼主| 发表于 2015-9-25 13:50:51 | 只看该作者
本帖最后由 mdyblog 于 2015-9-25 13:52 编辑
mdyblog 发表于 2015-9-25 11:28
接着加强了, 加上了自动编号:递加, 时间

效果:


huaqingyuan
我在win7系统下测试,文件没有被保存   发表于 半小时前
>>>>>>>>>>>>>>>>>
我用HHHH3的7PEX86, 可以保存的。
注意, 有的系统不会自动刷新,看不见文件, 刷新下桌面就出来了。

点评

确实版本问题,  详情 回复 发表于 2015-9-25 15:43
回复

使用道具 举报

10896#
发表于 2015-9-25 13:54:50 | 只看该作者
他可能PECMD版本问题.要最新版.

WIN10,86,64 都没问题
回复

使用道具 举报

10897#
发表于 2015-9-25 15:43:09 | 只看该作者
mdyblog 发表于 2015-9-25 13:50
huaqingyuan
我在win7系统下测试,文件没有被保存   发表于 半小时前
>>>>>>>>>>>>>>>>>


确实版本问题,新版本没问题了!
回复

使用道具 举报

10898#
发表于 2015-9-25 16:16:19 | 只看该作者
本帖最后由 小絔小小小 于 2015-9-25 16:37 编辑

我希望使用FORX全盘搜索到文件后获取文件所在盘符 请问该用什么命令从FORX赋予的路径变量中取到盘符呢

---
好吧 看了几个截取字符串的命令 用MSTR搞定了
然后还发现了FDRV...
回复

使用道具 举报

10899#
发表于 2015-9-25 18:02:33 | 只看该作者
请教如何调用DLL的函数,比如调用wimgapi.dll,很多WIM的处理都能实现,

点评

[attachimg]228015[/attachimg] 比如: CALL $SHELL32.DLL,DllInstall,#1,U  详情 回复 发表于 2015-9-25 18:11
回复

使用道具 举报

10900#
 楼主| 发表于 2015-9-25 18:11:07 | 只看该作者
huaqingyuan 发表于 2015-9-25 18:02
请教如何调用DLL的函数,比如调用wimgapi.dll,很多WIM的处理都能实现,



比如:
CALL $SHELL32.DLL,DllInstall,#1,U   

点评

能不能写一个调用调用wimgapi.dll解压或者压缩的列子  发表于 2015-9-26 09:55
回复

使用道具 举报

10901#
 楼主| 发表于 2015-9-27 00:16:48 | 只看该作者
本帖最后由 mdyblog 于 2015-9-27 08:36 编辑

SCRN  -capgui    //可简化为SCRN  -gui









内置图片浏览器
IMAG -gui  [文件名|目录名]
回复

使用道具 举报

10902#
发表于 2015-9-27 08:26:39 | 只看该作者
最新版,和上个版本,区别只是截图吗?

最新版, 使用窗口,区域,几次后, 就无法再截图了,可能代码部分有问题.

原来那个代码,改了几个文字, 加了个"退出"  .   平板电脑,点" X " 时,比较困难, 太小, 有时多次才能点中.

//IFEX X.LOG, LOGS * X.LOG
SET &capd=%DeskTop%
FIND $%capd%=, SET capd=%CurDir%
SET &fn=屏幕截图####
SET &wid=0:0
set &ext=PNG
SET &fid=1
//系统设置大字体时缩小界面字体
TEAM ENVI &Font_Size=| REGI #HKCU\Control Panel\Desktop\WindowMetrics\AppliedDPI,&&Font_Size
IFEX $%&Font_Size%=0x78, ENVI &&Font_Size=7! ENVI &&Font_Size=9  // 0x60为100%,0x78为125%,0x90为150%
ENVI &&Font_Cmd=IFEX %windir%\fonts\simsun*, ENVI @this.Font=%&Font_Size%:simsun! ENVI @this.Font=%&Font_Size%
CALL @WIN1

_SUB WIN1,W535H225,截图,
    %&Font_Cmd%
    LABE -VCENTER -RIGHT LABE1,L12T38W60H24,延时(秒):,,
    EDIT -VCENTER -3D -RIGHT Delay,L74T38W40H24,0,,
    SPIN SPIN1,L116T39W18H22,:0:100,,0x80,0x80
    LABE -VCENTER -RIGHT LABE2,L150T38W40H24,对象:,,
    EDIT -VCENTER -3D wWid,L192T38W50H24,%wid%,,
    LABE -VCENTER -RIGHT LABE3,L267T38W58H24,保存类型:,,
    LIST lEXT,L326T40W55H20,PNG|BMP|JPG|GIF|TIFF,OnEXT,%ext%,
    LABE -VCENTER LABE4,L12T90W90H30,保存位置及文件,,
    EDIT -VCENTER -3D wFN,L107T90W380H30,%&capd%\%fn%.%ext%,NAME fn=%wFN%,
    ITEM ITEM2,L492T89W25H30,>>,OnBrow,
//    ITEM ITEM1,L224T131W80H50,截图, OnCap,
    ITEM ITEM1,L160T130W80H50,截图, OnCap,
    ENVI @wFN.MSG=0x02A1: Mouse_In 文件名模板,####为自动编号\n$H $M $D $H $N $S 依次为年月日时分秒
    ENVI @wFN.MSG=0x02A3: TIPS *
    LABE -VCENTER -RIGHT LABE5,L386T38W50H24,编号:,,
    EDIT -VCENTER -3D -RIGHT wFID,L457T38W40H24,,%fid%,
    SPIN SPINFID,L499T39W18H22,:0:100:%fid%,,0x80,0x80
    ITEM ITEM3,L300T130W80H50,退出, kill @WIN1
_END
回复

使用道具 举报

10903#
发表于 2015-9-27 08:28:37 | 只看该作者
IMAG -gui
只使用它, 只出个界面. 如果当图片浏览工具,如何打开其它图片? 或者自动关联图片,用这个打开?

点评

后面接 文件名或目录名。 否则, 读取配置信息 %CurFile%.ini 还可以 右键菜单修改  详情 回复 发表于 2015-9-27 08:35
回复

使用道具 举报

10904#
 楼主| 发表于 2015-9-27 08:35:34 | 只看该作者
2012qnmd 发表于 2015-9-27 08:28
IMAG -gui
只使用它, 只出个界面. 如果当图片浏览工具,如何打开其它图片? 或者自动关联图片,用这个打开?

后面接 文件名或目录名。
否则, 读取配置信息 %CurFile%.ini
还可以 右键菜单修改
回复

使用道具 举报

10905#
发表于 2015-9-27 08:41:20 | 只看该作者
那个错误,无法截图,具体提示:
获取剪贴板数据出错!

其它工具也无法使用.2003下

点评

奇怪, SCRN -gui 抓图和剪切板无关啊。  详情 回复 发表于 2015-9-27 09:16
回复

使用道具 举报

10906#
发表于 2015-9-27 08:52:40 | 只看该作者
内置图片浏览好像有问题. 正常显示左边那样.

未命名.JPG (109.93 KB, 下载次数: 104)

未命名.JPG

点评

1:改了, 新界面 [attachimg]228094[/attachimg] 自动判断,有画笔才显示。 2:现在显示原始大小。不缩放了。 [attachimg]228095[/attachimg]  详情 回复 发表于 2015-9-27 11:41
这个是自动缩放的。 吧窗口缩小点就可以了。  详情 回复 发表于 2015-9-27 09:13
回复

使用道具 举报

10907#
 楼主| 发表于 2015-9-27 09:13:28 | 只看该作者
2012qnmd 发表于 2015-9-27 08:52
内置图片浏览好像有问题. 正常显示左边那样.

这个是自动缩放的。
吧窗口缩小点就可以了。
回复

使用道具 举报

10908#
 楼主| 发表于 2015-9-27 09:16:03 | 只看该作者
2012qnmd 发表于 2015-9-27 08:41
那个错误,无法截图,具体提示:
获取剪贴板数据出错!

奇怪, SCRN -gui 抓图和剪切板无关啊。
回复

使用道具 举报

10909#
 楼主| 发表于 2015-9-27 11:41:11 | 只看该作者
2012qnmd 发表于 2015-9-27 08:52
内置图片浏览好像有问题. 正常显示左边那样.


1:改了, 新界面


自动判断,有画笔才显示。

2:现在显示原始大小。不缩放了。

点评

下对齐:  详情 回复 发表于 2015-9-27 17:40
回复

使用道具 举报

10910#
 楼主| 发表于 2015-9-27 11:44:43 | 只看该作者
hhh333 发表于 2015-9-25 10:16
将抓图的脚本改成了这个样子:

新版
TIPS -dummy  ?R-20B-20
这样只对WIN10以上才有效
配置版本乱了也不怕。
回复

使用道具 举报

10911#
发表于 2015-9-27 17:40:30 | 只看该作者
mdyblog 发表于 2015-9-27 11:41
1:改了, 新界面

下对齐:

1.png (31.56 KB, 下载次数: 102)

1.png

点评

更了: [attachimg]228135[/attachimg]  详情 回复 发表于 2015-9-27 20:08
回复

使用道具 举报

10912#
 楼主| 发表于 2015-9-27 20:08:11 | 只看该作者

更了:

点评

mdyblog老师! !中秋快乐^^  详情 回复 发表于 2015-9-27 20:21
回复

使用道具 举报

10913#
发表于 2015-9-27 20:21:33 | 只看该作者

mdyblog老师! !中秋快乐^^

点评

谢谢! 也祝你中秋快乐!  详情 回复 发表于 2015-9-27 20:45
回复

使用道具 举报

10914#
发表于 2015-9-27 20:25:38 | 只看该作者
窗口截图,还有问题,平板电脑,无法完成截图。
选定窗口后,不执行。鼠标,好像放开左键
平板电脑,手离开,不行。

但是,其它截图软件可以。
其实,这个可以考虑只截图活动窗口,点抓图后,再点的第一个活动窗口,象截屏键那样,抓一个完整的活动窗口。

全屏,局部,都没问题了,就差活动窗口了

点评

鼠标和手,操作差那么一点. 鼠标, 移动鼠标,会出现窗口"框" ,点左键,截图. 手, 必须触摸到屏幕( 相当于点住左键) ,滑动,出现"框" , 因为相当于"点住左键" , 抬手不会截图. 其实,移动鼠标时,一般会出现,当  详情 回复 发表于 2015-9-28 07:33
回复

使用道具 举报

10915#
 楼主| 发表于 2015-9-27 20:45:13 | 只看该作者
LVBABA 发表于 2015-9-27 20:21
mdyblog老师! !中秋快乐^^

谢谢!
也祝你中秋快乐!
回复

使用道具 举报

10916#
发表于 2015-9-28 07:33:10 | 只看该作者
2012qnmd 发表于 2015-9-27 20:25
窗口截图,还有问题,平板电脑,无法完成截图。
选定窗口后,不执行。鼠标,好像放开左键
平板电脑,手离 ...

鼠标和手,操作差那么一点.

鼠标, 移动鼠标,会出现窗口"框" ,点左键,截图.

手, 必须触摸到屏幕( 相当于点住左键) ,滑动,出现"框" ,  因为相当于"点住左键" , 抬手不会截图.


其实,移动鼠标时,一般会出现,当前窗口," 上"  "中" "下" ,或者"全部"窗口
通常"全部"才是我们要的. 局部,可以用区欲选项, 这个是一样的操作, 点左键,拖出个"框" , 松开,截图.

如果窗口截图,简化为:当前活动窗口,  点抓图,再点的第一个窗口,沿迟一下,截图.  截取当前活动窗口.

点评

区域抓图,能工作吗?  详情 回复 发表于 2015-9-28 09:44
回复

使用道具 举报

10917#
 楼主| 发表于 2015-9-28 09:44:13 | 只看该作者
本帖最后由 mdyblog 于 2015-9-28 09:45 编辑
2012qnmd 发表于 2015-9-28 07:33
鼠标和手,操作差那么一点.

鼠标, 移动鼠标,会出现窗口"框" ,点左键,截图.


区域抓图,能工作吗?
这个 需要, 按下鼠标--开始拉框;再弹起鼠标------选好区域。

点评

区域抓图,这个正常! 只窗口,平板下,不行.  详情 回复 发表于 2015-9-28 09:47
回复

使用道具 举报

10918#
发表于 2015-9-28 09:47:36 | 只看该作者
mdyblog 发表于 2015-9-28 09:44
区域抓图,能工作吗?
这个 需要, 按下鼠标--开始拉框;再弹起鼠标------选好区域。

区域抓图,这个正常!

只窗口,平板下,不行.

点评

区域抓图,这个正常! 只窗口,平板下,不行. 很奇怪啊, 区域抓图 需要2个事件:左键按下,左键抬起 窗口抓图 需要1个事件:左键按下 不过 窗口抓图 需要捕鼠器, 难道是:平板上 捕鼠器 不能正常工作。 那就需  详情 回复 发表于 2015-9-28 10:18
回复

使用道具 举报

10919#
发表于 2015-9-28 09:52:32 | 只看该作者
本帖最后由 2012qnmd 于 2015-9-28 09:55 编辑

FSCapture,这个工具正常.

1.
我在鼠标下测试发现, 选择窗口时, 不按鼠标左键,可以选,点左键,抬起,截图.
2.
按左键也可以选,抬左键,截图. (平板下,需要这样)
回复

使用道具 举报

10920#
发表于 2015-9-28 09:57:10 | 只看该作者
也就是说,"左键" 抬起,才截图.

左键,是否按下,都可以选.


现在问题好像简单了

你的: 安左键,截图.  就差这里
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-17 17:42

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表