明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4329|回复: 3

请教高人,调用vlax-invoke的问题

[复制链接]
发表于 2012-10-23 09:56:25 | 显示全部楼层 |阅读模式
请教高人,在子函数调用
(vlax-invoke wsh 'run "cmd.exe /c time 14:30:00" 0)
后,函数是立即返回还是等系统时间设置完成后返回;
如果是立即返回,如何确认系统时间设置已经完成,因为后边影响到接着要保存文件的时间;

发表于 2012-10-23 10:05:48 | 显示全部楼层
下面是一个比较高级的更改时间的办法:

  1. (vl-load-com)
  2. (defun C:CDT (/ item WMI COM SYS)
  3.   (setq        WMI (vlax-create-object "WbemScripting.SWbemLocator"))
  4.   (setq COM (vlax-invoke WMI 'ConnectServer))
  5.   (setq SYS (vlax-invoke COM 'ExecQuery "Select * from Win32_OperatingSystem"))
  6.   (vlax-for item SYS
  7.     (vlax-invoke item 'SetDateTime "20111012183508.000000+480")          ;UTC时间格式 (例如:2011-10-12 18:25:08 UTC+08:00)
  8.   )
  9.   (vlax-release-object COM)
  10.   (vlax-release-object SYS)
  11.   (vlax-release-object WMI)
  12.   (princ)
  13. )
这样可以不必担心DOS下的Command命令跟LISP不同步。
 楼主| 发表于 2012-10-23 12:17:20 | 显示全部楼层
本帖最后由 jack093 于 2012-10-23 12:30 编辑

谢谢版主,就是说时间改完后才退出函数,是吗?
谢谢; 错误: SWbemObjectEx: 访问遭到拒绝
是ie的问题吗

点评

可能是  发表于 2012-10-23 13:36
 楼主| 发表于 2012-10-23 12:28:52 | 显示全部楼层
本帖最后由 jack093 于 2012-10-23 12:38 编辑

我一直在用一种笨的办法,实现保存刚刚修改dwg文件但是不改变文件时间:
读文件时间
设置系统时间
保存文件
改回系统时间

有时候出错,或者保存后的文件时间被改了,有时候系统时间没有正确地改回来
谁有更好的办法实现层盘不改变时间?

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-9-26 03:20 , Processed in 0.201642 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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