请教高人,调用vlax-invoke的问题
请教高人,在子函数调用(vlax-invoke wsh 'run "cmd.exe /c time 14:30:00" 0)
后,函数是立即返回还是等系统时间设置完成后返回;
如果是立即返回,如何确认系统时间设置已经完成,因为后边影响到接着要保存文件的时间;
下面是一个比较高级的更改时间的办法:
(vl-load-com)
(defun C:CDT (/ item WMI COM SYS)
(setq WMI (vlax-create-object "WbemScripting.SWbemLocator"))
(setq COM (vlax-invoke WMI 'ConnectServer))
(setq SYS (vlax-invoke COM 'ExecQuery "Select * from Win32_OperatingSystem"))
(vlax-for item SYS
(vlax-invoke item 'SetDateTime "20111012183508.000000+480") ;UTC时间格式 (例如:2011-10-12 18:25:08 UTC+08:00)
)
(vlax-release-object COM)
(vlax-release-object SYS)
(vlax-release-object WMI)
(princ)
)这样可以不必担心DOS下的Command命令跟LISP不同步。
本帖最后由 jack093 于 2012-10-23 12:30 编辑
谢谢版主,就是说时间改完后才退出函数,是吗?
谢谢; 错误: SWbemObjectEx: 访问遭到拒绝
是ie的问题吗
本帖最后由 jack093 于 2012-10-23 12:38 编辑
我一直在用一种笨的办法,实现保存刚刚修改dwg文件但是不改变文件时间:
读文件时间
设置系统时间
保存文件
改回系统时间
有时候出错,或者保存后的文件时间被改了,有时候系统时间没有正确地改回来
谁有更好的办法实现层盘不改变时间?
页:
[1]