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

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

   火... [复制链接]
发表于 2013-3-9 10:50:00 | 显示全部楼层
定时提醒pecmd命令里面可以执行 load 脚本名吗?怎么不执行啊
回复

使用道具 举报

 楼主| 发表于 2013-3-9 10:50:24 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 10:21 发表

我将你的命令写到a.wcs里面
我在cmd里面执行pecmd load a.wcs会让cmd失去焦点


我试了试,正常。(WIN764)
刚开始 cmd失去焦点 。 这个正常。windows cmd就这样。运行calc也这样。
点击获得焦点后,虽然没5秒写一次。 cmd 不是去焦点了, 输入正常。
打开记事本,长时间用也正常。如图。

、、、、
XP32下也正常。

[ 本帖最后由 mdyblog 于 2013-3-9 11:02 编辑 ]
Snap1xxx.gif
Snap2xxx.gif
回复

使用道具 举报

 楼主| 发表于 2013-3-9 11:15:45 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 10:50 发表
定时提醒pecmd命令里面可以执行 load 脚本名吗?怎么不执行啊


如果脚本 不会阻塞, 可以 直接【LOAD D:\atimer.wcs】
Snap1.gif
回复

使用道具 举报

发表于 2013-3-9 12:06:08 | 显示全部楼层
好奇怪哦,定时提醒用load 文件名 无法获得函数变量 用exec pecmd load 能正常获得函数变量
定时提醒8.wcs.zip没有这个问题

[ 本帖最后由 2011hwo1 于 2013-3-9 12:22 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2013-3-9 12:24:04 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 12:06 发表
好奇怪哦,定时提醒用load 文件名 无法获得函数变量 用exec pecmd load 能正常获得函数变量
定时提醒8.wcs.zip没有这个问题


这是因为 FORCELOCAL 禁止环境变量。
下载最新的 定时提醒9.wcs.zip。
在执行 定时命令时,临时 关闭 FORCELOCAL。
定时提醒10(9)(8).wcs.zip : 命令中 支持环境变量

[ 本帖最后由 mdyblog 于 2013-3-9 12:50 编辑 ]
回复

使用道具 举报

发表于 2013-3-9 12:33:31 | 显示全部楼层
到期时间好像不是起始时间当前时间可能才是起始时间吧?
理论来说起始时间是0点 间隔6分钟的话应该是正点+6分钟*n 是任务执行时间,而实际上却不是.修改任务或者启动定时提醒时,任务的首次执行时间应该是:当前时间+间隔时间-(当前时间-起始时间)%间隔时间
回复

使用道具 举报

发表于 2013-3-9 12:37:52 | 显示全部楼层
首次任务执行后才应该是间隔指定时间执行任务的
回复

使用道具 举报

 楼主| 发表于 2013-3-9 12:55:44 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 12:33 发表
到期时间好像不是起始时间当前时间可能才是起始时间吧?
理论来说起始时间是0点 间隔6分钟的话应该是正点+6分钟*n 是任务执行时间,而实际上却不是.修改任务或者启动定时提醒时,任务的首次执行时间应该是:当前时 ...


对 到期 定时器:
启动时如果没过期,将在 指定的 时间第一次启动。
否则,按后续 定时 计算, 并减去 相应个 间隔周期。
当前 时100秒。
定时 80秒, 间隔8秒, 无限次。
则 在 80+8*3=104秒处。
回复

使用道具 举报

发表于 2013-3-9 13:36:10 | 显示全部楼层
原帖由 mdyblog 于 2013-3-9 12:55 发表


对 到期 定时器:
启动时如果没过期,将在 指定的 时间第一次启动。
否则,按后续 定时 计算, 并减去 相应个 间隔周期。
当前 时100秒。
定时 80秒, 间隔8秒, 无限次。
则 在 80+8*3=104秒处。

计算公式应该是: 当前时间+间隔时间-(当前时间-起始时间)%间隔时间    计算起始时间时不能忽略起始时间!
如起始时间是:2013-03-09-0:0:0转换成 gmt时间是 1362758400秒
   当前时间是:2013-03-09-13:5:20转换成 gmt时间是 1362805520秒
   间隔时间是:360秒
计算结果是:1362805520+360-(1362805520-1362758400)%360=1362805560秒
   转换成*local0时间后得到 首次执行任务时间是: 2013-3-9-13:6:0.0
   首次定时时间是: 360-(1362805520-1362758400)%360=40
  也就是40秒后首次执行任务

[ 本帖最后由 2011hwo1 于 2013-3-9 13:47 编辑 ]
回复

使用道具 举报

发表于 2013-3-9 13:39:36 | 显示全部楼层
原帖由 mdyblog 于 2013-3-9 12:55 发表


对 到期 定时器:
启动时如果没过期,将在 指定的 时间第一次启动。
否则,按后续 定时 计算, 并减去 相应个 间隔周期。
当前 时100秒。
定时 80秒, 间隔8秒, 无限次。
则 在 80+8*3=104秒处。

计算为  8-(100-80)%8=4
首次执行时间是4秒后

[ 本帖最后由 2011hwo1 于 2013-3-9 13:47 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2013-3-9 14:02:29 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 13:36 发表

计算公式应该是: 当前时间+间隔时间-(当前时间-起始时间)%间隔时间    计算起始时间时不能忽略起始时间!
如起始时间是:2013-03-09-0:0:0转换成 gmt时间是 1362758400秒
   当前时间是:2013-03-09-13:5:20转 ...


对,就是这个公式。
回复

使用道具 举报

发表于 2013-3-9 14:06:31 | 显示全部楼层
原帖由 mdyblog 于 2013-3-9 14:02 发表


对,就是这个公式。

但是怎么定时提醒的起始时间是错误的,是不是还没有用这个公式啊?
回复

使用道具 举报

发表于 2013-3-9 14:22:36 | 显示全部楼层
DATE  *local:0 &&utc0 utc
这行是什么意思?
回复

使用道具 举报

 楼主| 发表于 2013-3-9 14:24:54 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 14:06 发表

但是怎么定时提醒的起始时间是错误的,是不是还没有用这个公式啊?


时这个公式。
函数  UpDateTimer
IFEX $%left% > 0,!  //过期
下面就是。

你设为整分,如14:20:00, 间隔 60 秒, 无限次, 到期 类型。
在 30秒左右启动,    看是否在总是在整分 提示。

注意不是 间隔定时器, 这样 到期时间 不理的。
回复

使用道具 举报

 楼主| 发表于 2013-3-9 14:26:50 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 14:22 发表
DATE  *local:0 &&utc0 utc
这行是什么意思?


以前gmt时间是用的。
现在基本不用。
表示一个无效时间。
回复

使用道具 举报

发表于 2013-3-9 15:01:56 | 显示全部楼层
原帖由 mdyblog 于 2013-3-9 14:26 发表


以前gmt时间是用的。
现在基本不用。
表示一个无效时间。

在定时提醒里面就有那一段是不是写错误了,请检查:
其位置在下面的函数里面:
_SUB InitVar
    SET &CMDMSG=1
    SET &CMDMUSIC=2
    SET &CMDRUN=3
    SET &CMDIN=4
    SET &CMDMAX=4
    SET &CMDTXT[1]=文本
    SET &CMDTXT[2]=音乐
    SET &CMDTXT[3]=运行程序
    SET &CMDTXT[4]=PECMD命令

    SET &TIMERINTER=1  //间隔
    SET &TIMERTO=2     //到期
    SET &TIMERMAX=2     
    SET &TIMERTXT[1]=间隔
    SET &TIMERTXT[2]=到期
    CALC &&S60=60000 * 10000000 //60秒 utc
    SET &MSUTC=10000  //ms utc
    SET &SUTC=10000000  //s utc

    SET &Count=0
    ENVI  
    SET &PLAYER=%ProgramFiles%\Windows Media Player\mplayer2.exe
    IFEX %PLAYER%,! FORX %ProgramFiles%\Windows Media Player\*player*.exe,&&f,1,SET  PLAYER=%f%
    DATE  *local:0 &&utc0 utc
    SET &Count=0
    READ %CONFIG%,*r,&&sCONFIG
    FORX *NL &sCONFIG,&&line, CALL * InitVarLine
    ENVI  &sCONFIG=  //Clear
_END
回复

使用道具 举报

发表于 2013-3-9 15:29:51 | 显示全部楼层
原帖由 mdyblog 于 2013-3-9 14:24 发表


时这个公式。
函数  UpDateTimer
IFEX $%left% > 0,!  //过期
下面就是。

你设为整分,如14:20:00, 间隔 60 秒, 无限次, 到期 类型。
在 30秒左右启动,    看是否在总是在整分 提示。

注 ...

经过测试,能够在整分附近提示.有点小误差

建议修改增加任务和编辑任务的界面修改为:
选择间隔时禁止修改到期时间,也就是到期时间忽略.

[ 本帖最后由 2011hwo1 于 2013-3-9 15:47 编辑 ]
回复

使用道具 举报

发表于 2013-3-9 15:36:36 | 显示全部楼层
DATE   &&utc0 utc怎么得到的是2^64的计算结果
回复

使用道具 举报

 楼主| 发表于 2013-3-9 16:31:37 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 15:36 发表
DATE   &&utc0 utc怎么得到的是2^64的计算结果

是UINT64的值。
回复

使用道具 举报

发表于 2013-3-9 16:43:30 | 显示全部楼层
我用定时提醒来load 脚本就不产生窗口闪动,如果用其他的定时器来启动脚本就会闪动不知道是怎么回事
回复

使用道具 举报

 楼主| 发表于 2013-3-9 17:12:31 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 15:29 发表

经过测试,能够在整分附近提示.有点小误差

建议修改增加任务和编辑任务的界面修改为:
选择间隔时禁止修改到期时间,也就是到期时间忽略.

一更新 #5003
回复

使用道具 举报

发表于 2013-3-9 17:52:21 | 显示全部楼层
左键点击托盘图标出现的是被最小化后的窗口,能让他出现正常的窗口吗
回复

使用道具 举报

 楼主| 发表于 2013-3-9 18:00:09 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 16:43 发表
我用定时提醒来load 脚本就不产生窗口闪动,如果用其他的定时器来启动脚本就会闪动不知道是怎么回事

//////////////////////////////////////////////// 试试

备份方竹数据库.zip

647 Bytes, 下载次数: 8

回复

使用道具 举报

 楼主| 发表于 2013-3-9 18:09:51 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 17:52 发表
左键点击托盘图标出现的是被最小化后的窗口,能让他出现正常的窗口吗

#5003 已更新
回复

使用道具 举报

发表于 2013-3-9 19:34:35 | 显示全部楼层
原帖由 mdyblog 于 2013-3-9 18:00 发表

//////////////////////////////////////////////// 试试

这个怎么就不闪了,是因为什么原因引起的
回复

使用道具 举报

发表于 2013-3-9 19:46:58 | 显示全部楼层
是#code=936引起的吗
回复

使用道具 举报

 楼主| 发表于 2013-3-9 19:49:14 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 19:34 发表

这个怎么就不闪了,是因为什么原因引起的

ENVI &&&EnviMode=1
ENVI &&&FORCELOCAL=1   


这是按照 定时提醒.wcs 改的。
1. 禁止了环境变量, 全用 PE 变量。 // ENVI &&&FORCELOCAL=1

2. 禁用 了Envi兼容 4.0 的兼容方式。 (这可能是关键。) //ENVI &&&EnviMode=1
   定时提醒.wcs 设置 了 ENVI &&&EnviMode=1。 LOAD 你的脚本, 继承了 该设置。

你原来为什么闪烁。 得来看 LOGS 文件才知道。
是不是有奇怪的文件名。
【ENVI &&&EnviMode=1】 可以防止 某些 奇怪的 环境变量问题,同时可以加速。

你的程序, 如果碰到 a.*  a1.*  a2.*  P0.*  P2.*  t1.*  SU.*  aa2.* 的文件名,可能出问题。 只是可能。 没深入分析。

用PE变量,就不会出这些奇怪的,说不清的问题。 【ENVI &&&EnviMode=1】 大概也可以防止。

新写的程序。 都应该 加上 【ENVI &&&EnviMode=1】,反正没坏处。

[ 本帖最后由 mdyblog 于 2013-3-9 20:02 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2013-3-9 19:51:14 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 19:46 发表
是#code=936引起的吗


【#code=936】 不影响逻辑。
这只是保证, 你的这个脚本文件, 到了台湾,美国,希腊, 还能正常运行和显示。
回复

使用道具 举报

发表于 2013-3-9 20:24:04 | 显示全部楼层
托盘图标怎么会变化,才开始是个圈圈图标后来就成了pecmd的图标了
回复

使用道具 举报

 楼主| 发表于 2013-3-9 22:06:20 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-9 20:24 发表
托盘图标怎么会变化,才开始是个圈圈图标后来就成了pecmd的图标了


下载 PECMD2012.1.75.1-130308-4.多窗口线程孵化版_win32_64.sfx
内涵 定时提醒14.wcs。zip

TIPS* 动态更新时, 可以更新时图标可为**, 图标不变。

评分

参与人数 1无忧币 +10 收起 理由
2011hwo1 + 10

查看全部评分

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-9-10 08:58

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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