标题:请教,修改日期后不即时显示的问题
取消只看楼主
丁春秋yxp
Rank: 4
等 级:贵宾
威 望:10
帖 子:239
专家分:287
注 册:2017-10-31
结帖率:76.47%
已结贴  问题点数:20 回复次数:4 
请教,修改日期后不即时显示的问题
程序因需要系统日期和实际日期绝对一致,不一致时提供使用 RUN/N CONTROL timedate.cpl 来修改系统日期。

问题是运行后明明已经修改系统日期成功了,可显示的日期不能及时刷新。

请问如何解决。

(附件已重新上传)

ccc.rar (1.15 KB)


[此贴子已经被作者于2023-4-21 09:46编辑过]

搜索更多相关主题的帖子: 系统 日期 修改 显示 一致 
2023-04-20 13:13
丁春秋yxp
Rank: 4
等 级:贵宾
威 望:10
帖 子:239
专家分:287
注 册:2017-10-31
得分:0 
以下是引用吹水佬在2023-4-20 14:08:34的发言:

文件不全

就是只有表单文件2个啊
2023-04-20 14:37
丁春秋yxp
Rank: 4
等 级:贵宾
威 望:10
帖 子:239
专家分:287
注 册:2017-10-31
得分:0 
附件已重新上传,谢谢各位。
2023-04-21 09:46
丁春秋yxp
Rank: 4
等 级:贵宾
威 望:10
帖 子:239
专家分:287
注 册:2017-10-31
得分:0 
以下是引用吹水佬在2023-4-21 10:24:53的发言:

是异步打开control,想要修改完确定关闭control才生效就要同步执行control

谢谢版主,这个如何操作,我还是搞不定。
2023-04-21 11:46
丁春秋yxp
Rank: 4
等 级:贵宾
威 望:10
帖 子:239
专家分:287
注 册:2017-10-31
得分:0 
以下是引用吹水佬在2023-4-21 12:37:17的发言:


最好不要用control.exe来调用shell32.dll的timedate功能,因control.exe是调用rundll32.exe来运行shell32.dll的timedate,否则获取rundll32.exe进程句柄有点麻烦。


DECLARE long CreateProcess       IN kernel32 long,string,long,long,long,long,long,long,string@,string@
DECLARE long WaitForSingleObject IN kernel32 long,long
si = BINTOC(68,"4rs") + REPLICATE(0h00,64)
pi = REPLICATE(0h00,16)
CreateProcess(0,"rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0",0,0,0,0,0,0,@si,@pi)
WaitForSingleObject(CTOBIN(LEFT(pi,4),"4rs"), -1)
? DATETIME()

十分感谢吹版,这段代码非常完美的解决了问题,虽然我这辈子都不可能读懂它了。
2023-04-21 13:28



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-511976-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.116041 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved