标题:请教,修改日期后不即时显示的问题
只看楼主
丁春秋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.073731 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved