找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1221|回复: 0

[每日一码] WbemScripting获取属性值函数

[复制链接]

已领礼包: 19个

财富等级: 恭喜发财

发表于 2018-2-25 11:35:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
  1. (defun _WbemGet ( class props / locator service query temp result )

  2.     (vl-catch-all-apply 'eval
  3.        '(   (vlax-for x
  4.                 (setq query
  5.                     (vlax-invoke
  6.                         (setq service
  7.                             (vlax-invoke
  8.                                 (setq locator (vlax-create-object "WbemScripting.SWbemLocator"))
  9.                                 'ConnectServer "." "root\\cimv2" nil nil nil nil nil nil
  10.                             )   
  11.                         )
  12.                         'ExecQuery
  13.                         (strcat "SELECT * FROM " class)
  14.                     )
  15.                 )                          
  16.                 (setq temp
  17.                     (cons
  18.                         (mapcar
  19.                             (function (lambda (p) (vl-catch-all-apply 'vlax-get (list x p))))
  20.                             (if (listp props) props (list props))
  21.                         )
  22.                         temp
  23.                     )
  24.                 )      
  25.             )      
  26.         )
  27.     )

  28.     (foreach x (mapcar 'list (list query service locator))
  29.         (vl-catch-all-apply 'vlax-release-object x)
  30.     )
  31.    
  32.     (foreach l temp
  33.         (or
  34.             (null (apply 'or l))
  35.             (member l result)
  36.             (setq result (cons l result))
  37.         )
  38.     )        

  39.     (if (listp props) result (mapcar 'car result))
  40.    
  41. )


(_WbemGet "Win32_Process" '(Name ExecutablePath CommandLine))
(_WbemGet "Win32_Process" '(Name ProcessID))
(_WbemGet "Win32_Process" 'Name)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-27 00:30 , Processed in 0.242795 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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