标题: [其他] ConsExt .exe 1.1(批处理界面工具) [打印本页]
作者: czl1378 时间: 2009-7-8 16:45 标题: ConsExt .exe 1.1(批处理界面工具)
http://bcn.bathome.net/s/tool/index.html?key=ConsExt
抱歉,来晚了.这2天在家里把ConsExt.exe重写了一遍.
这个是1.1的版本,与"小强系统优化工具4.0"(以下简称 小强4.0)里面的ConsExt.exe不能混用.
取消了dc画图,就是小强4.0里面的焦点矩形.优化了代码.调用方式更规范,更人性化.
压缩包里面附带了使用方法,这里就不再说明了.
推荐大家去看defanive的 第三方命令行工具编程:Http://Console.Dec.Cn 自己做的命令永远是最合适的.
祝大家早日做出自己的命令行.
ConsExt.exe,批处理界面工具。 版本:1.1
/? 显示帮助。
/echo 输出一行字符串。
/window 显示一个窗口。
/box 显示一个矩形框。
/button 显示一个按钮。
/msg 显示一个消息框。
/prog 显示一个进度框。
/listbox 显示一个列表框。
/fillrect 用指定颜色填充一片矩形区域。
/showtime 显示时间。
/sleep 延时。
/event 获取键盘鼠标事件。
/flashwindow 使窗口闪烁。
/crv 隐藏/显示插入符。
/pos 设置插入符位置。
/close 关闭窗口,并退出由start "NewThread" /b 方式调用的程序 。
/ptinrect 检测一个点是否在矩形区域内。通常配合ConsExt /event检测鼠标是否点击到某
块区域。
具体用法请输入/参数 /?查看。
说明:程序中“窗口”、“按钮”、“消息框”、“进度条”等均是采用字符表示。
★"ConsExt用法演示"勘误:
1.获取mouseY值的错误(感谢网友ZJHJ发现此错误.):
键盘鼠标事件演示里的代码:- ConsExt /event
- set /a ret=%errorlevel%
- if %ret% geq 1000 (
- set /a "mouseY=ret%1000"
- set /a "mouseX=(ret-mouseY-1000)/1000"
- echo 鼠标点击在!mouseX!,!mouseY!。
- ) else (
- if %ret% equ 27 echo 你按下了返回键。
- if %ret% equ 37 echo 你按下了左键。
- if %ret% equ 38 echo 你按下了上键。
- if %ret% equ 39 echo 你按下了右键。
- if %ret% equ 37 echo 你按下了下键。
- if %ret% equ 13 echo 你按下了回车键。
- echo 键盘码:%ret%
- )
- pause
复制代码
其中 set /a "mouseY=ret%1000" 应该是 set /a "mouseY=ret%%1000" 才对.
2.待发现...
作者: defanive 时间: 2009-7-8 17:00
下载地址?有这个我就懒得自己写了
作者: czl1378 时间: 2009-7-8 17:51
晕..刚刚不是放附件里面了么..
作者: czl1378 时间: 2009-7-8 18:04 标题: 回复 2楼 的帖子
还不是你那个cext老不更新,把俺逼急了就自己写了个.
作者: tireless 时间: 2009-7-8 18:17
如果开启了“cmd属性→快速编辑模式”,鼠标左键会无法点击
作者: BAT1 时间: 2009-7-8 22:18
/event 获取键盘鼠标事件。
鼠标的左键没问题,右键按下去没反应啊。
作者: czl1378 时间: 2009-7-9 11:53
只支持键盘按下和左键单击.不过说来右键事件好像没什么用.后面的版本会慢慢完善的.
作者: BAT1 时间: 2009-7-9 22:30
鼠标总共才两个键,把右键事件放进去应该难不倒楼主吧?
另外,是否支持同时按下键盘的几个按键?就像CTRL+ALT+DEL这种
因为XP既然设计出这个功能
就说明总有他存在的道理……
作者: defanive 时间: 2009-7-9 23:31
8L如果单纯需要支持鼠标多键的话可以看看Cmos2.0b,http://bbs.bathome.net/thread-3148-1-1.html
作者: czl1378 时间: 2009-7-10 10:10 标题: 回复 8楼 的帖子
额。。下一版一定加入。感谢使用。
作者: ZJHJ 时间: 2009-7-11 23:18
如果和C系列相比,我感觉ConsExt .exe占用CPU较小
作者: czl1378 时间: 2009-7-12 09:44
ConsExt主要是为界面而写的.
虽然很多人反对这种"华而不实"的东东.但是像这种存在交互类的批处理,我一直对要求输入"1,2,3....a,b,c..."之类的很反感..
我不觉得这种效果多"华",而且也不见得不"实".
你要与用户互动,必然是想给他更好的体验.我只是这样做了.
希望大家不要再对这种涉及到第三方程序的批处理存在任何反感.各有所需而已.
作者: ZJHJ 时间: 2009-7-14 09:01
请问 [楼主]
简单说,我想用“输出一行字符”的功能,输出多行字符(界面功能表)。就是界面功能表是多行多列,如何用鼠标获取指定行列??以便GOTO标签执行程序???
(看重优点:占用CPU很小)
[ 本帖最后由 ZJHJ 于 2009-7-14 09:19 编辑 ]
作者: czl1378 时间: 2009-7-14 09:16
结合ptinrect来检测指定点是否在一个区域内,如果是则返回1,否则返回0.具体用法请输入ConsExt /ptinrect /?查看.
作者: ZJHJ 时间: 2009-7-14 11:58
就是界面功能表是多行多列,如何用鼠标点击操作?
作者: ZJHJ 时间: 2009-7-14 16:29
@echo off
setlocal ENABLEDELAYEDEXPANSION
ConsExt /event
set /a ret=%errorlevel%
if %ret% geq 1000 (
set /a "mouseY=ret%1000"
set /a "mouseX=(ret-mouseY-1000)/1000"
echo 鼠标点击在!mouseX!,!mouseY!。
) else (
if %ret% equ 27 echo 你按下了返回键。
if %ret% equ 37 echo 你按下了左键。
if %ret% equ 38 echo 你按下了上键。
if %ret% equ 39 echo 你按下了右键。
if %ret% equ 37 echo 你按下了下键。
if %ret% equ 13 echo 你按下了回车键。
echo 键盘码:%ret%
)
为什么!mouseX!正确 ,为什么 !mouseY!=0 ??????
------------------------
以上问题我已经坚决了,X Y 我用变量截取。也取消了setlocal
[ 本帖最后由 ZJHJ 于 2009-7-17 06:55 编辑 ]
作者: czl1378 时间: 2009-7-15 18:59
因此贴词不答意,已删除.
[ 本帖最后由 czl1378 于 2009-7-16 15:44 编辑 ]
作者: czl1378 时间: 2009-7-16 15:22 标题: 回复 16楼 的帖子
不好意思,昨天没翻到第2页.没看到你16楼的帖子.只看到了15楼的.
set /a "mouseY=ret%%1000"才对.
记住哦,2个百分号.
作者: czl1378 时间: 2009-7-16 15:42
因为最近在找工作,所以ConsExt一直没更新.不好意思.
作者: ZJHJ 时间: 2009-7-17 07:20
建议取消延迟变量(获取键盘鼠标事件),因为有多处goto者可能会带来麻烦
作者: 2oo9 时间: 2009-8-16 21:15
嗯,不错,很好很强大。谢谢LZ了。
作者: Seter 时间: 2009-8-17 09:42
我想来小水一下...
首先果然是恐怖的小强...
还有DEF你的C系列很受欢迎么...那个大杂烩啥时发出啊..
还有啊,console.dec.cn你哪里弄来的,我去看www,dec,cn是痔疮网站....
作者: defanive 时间: 2009-8-17 10:34
不受欢迎,因为有点占CPU。。。
那个域名是在www.meibu.com上注册的。。。
dec.cn是旗下的一个域名,可以注册二级。。。
其实以前还有个console.cn.ms,结果外国那烧饼网站不开了。。。
作者: huangmin1111 时间: 2009-8-19 02:19
这个很强大。不错。下载收藏。
作者: HAT 时间: 2009-8-29 15:07
ConsExt图形界面及鼠标坐标获取应用演示.bat复制代码
转自:http://www.cn-dos.net/forum/viewthread.php?tid=46783
作者: czl1378 时间: 2009-9-13 18:10
太好了。楼上好人
作者: ZJHJ 时间: 2010-5-21 11:11
非常很希望 czl1378 [楼主] 能够放一个单独的 体积很小的 CMD鼠标获取程序。
以下这个体积很小,但是启用的ntvdm.exe占用cpu太高(几呼100%),操作中非常卡。[楼主] 原来的ConsExt.exe很好用,启用的ntvdm.exe不占用cpu,但是,200Kb实在太大,不能用debug-dw装入bat(极限值2.5K)
@echo off
title 鼠标三方演示批处理
(chcp 437 &graftabl 936)>nul
SET SYB=A100;0AEB 3030 3020 2030 3030 2420 00B8 CD00;B833 0001 33CD 05B8 CD00 A933 0007 F674;E086 300D A330 0102 C889 08B3 18E8 A300;0105 D089 08B3 0EE8 A300 0108 09B4 02BA;CD01 B421 CD4C F621 08F3 74E4 FE02 FEC0;88C0 B1C4 D204 25E8 0F0F 300D 3C30 7639;0402 8007 39FC 0376 C480 C307 ;
SET V=;RCX;006C;N mouse.com;W;Q
(ECHO.%SYB:;=&ECHO.DW %&ECHO.%V:;=&ECHO.%)|DEBUG>NUL
:lp
cls
echo.
echo 鼠标点击窗口
echo. 点击这里关闭窗口
echo. 查看代码
echo.
echo X %X% Y %Y%
for /f "tokens=1-3" %%1 in ('mouse.com') do (set /a X=0x%%2,Y=0x%%3)
if %X% GTR 51 if %X% LSS 65 if %Y% EQU 03 goto we
if %X% GTR 29 if %X% LSS 36 if %Y% EQU 04 goto ck
goto :lp
:ck
start mrt.exe %0
goto :lp
:we
Exit
作者: cyxgg 时间: 2011-4-23 18:21
看看。。。
作者: cyxgg 时间: 2011-4-23 18:21
看看。。。
作者: 598782168 时间: 2012-7-13 20:41
本帖最后由 598782168 于 2017-2-1 17:11 编辑
..........
作者: 一马平川_陈 时间: 2012-12-30 20:51
支持支持个
作者: tengqisz 时间: 2013-3-7 23:43
据说win7会报错,LZ有没有更新的打算啊。。
作者: zhangzsky 时间: 2015-3-15 10:14
回复 1# czl1378
win@7提示停止,uac或权限不足?
望更新
作者: 墨雪SEED 时间: 2015-7-24 15:59
希望能开发一个不需要net3.5的版本出来
作者: wikou 时间: 2015-10-3 00:43
ConsExt .exe不知道用来干嘛的
作者: 188001025 时间: 2016-7-20 16:47
怎么弄按钮啊?会闪退啊!
作者: aswasw 时间: 2017-9-21 14:38
一直很喜欢这个,只是突然发现win8~win10的cmd用不了,,会报错,,能更新一下吗?
作者: 1055367558 时间: 2017-9-21 17:55
感觉mouseX跟ckey好像
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |