乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 49|回复: 6

[编程交流] 通过AutoLISP关闭文件夹

[复制链接]

91

主题

428

帖子

326

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
474
发表于 2022-7-6 09:34:21 | 显示全部楼层 |阅读模式
各位成员好,
我在这里找到了Lee Mac的代码,用AutoLISP打开了一个文件夹。
代码如下:
  1. (defun MT-Explore (Directory / Shell result)
  2.    (setq Shell (vla-getInterfaceObject (vlax-get-acad-object)
  3.                                        "Shell.Application"
  4.                )
  5.    )
  6.    (setq result
  7.             (vl-catch-all-apply 'vlax-invoke (list Shell 'Explore Directory))
  8.    )
  9.    (vlax-release-object Shell)
  10.    (not (vl-catch-all-error-p result))
  11. )

有人知道如何关闭打开的文件夹吗?
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 09:46:38 | 显示全部楼层
我唯一想到的是终止脚本,但如果终止错误的进程,这种方法是危险的,所以要小心。
 
  1. (defun LM:Terminate ( process / wmi server query name )
  2. (vl-catch-all-apply
  3.    (function
  4.      (lambda ( / name )
  5.        (setq process (strcase process)
  6.              wmi     (vlax-create-object "WbemScripting.SWbemLocator")
  7.              server  (vlax-invoke wmi 'connectserver nil nil nil nil nil nil nil nil)
  8.              query   (vlax-invoke server 'execquery "Select * from Win32_Process")
  9.        )
  10.        (vlax-for item query
  11.          (if
  12.            (and
  13.              (setq name (vlax-get item 'commandline))
  14.              (vl-string-search process (strcase name))
  15.            )
  16.            (vlax-invoke item 'terminate)
  17.          )
  18.        )
  19.      )
  20.    )
  21. )
  22. (foreach object (list wmi server query)
  23.    (if (and object (not (vlax-object-released-p object)))
  24.      (vlax-release-object object)
  25.    )
  26. )
  27. )

 
用进程名称调用以终止,例如:
 
  1. (LM:Terminate "Excel.exe")
回复

使用道具 举报

44

主题

542

帖子

502

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
220
发表于 2022-7-6 10:02:46 | 显示全部楼层
但是,这是如何工作的,即据我所知,文件夹没有自己的进程,而是在资源管理器下。exe进程。终止该操作将关闭任务栏和所有其他文件夹功能,而不仅仅是一个文件夹。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:13:19 | 显示全部楼层
说得好,丁克——那么我对这件事没有什么想法了
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
438
发表于 2022-7-6 10:15:11 | 显示全部楼层
单击窗口右上角的小“X”或键入ALT+F4或CTRL+W有多难?
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 10:34:10 | 显示全部楼层
 
没错,但我确信同样的论点可以应用到我们编写代码的许多任务中——我相信你会同意,看看是否可以通过编程实现某些事情通常很有趣。
 
然而,在这种情况下,我怀疑会找到一种编程方法。
 
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
438
发表于 2022-7-6 10:42:38 | 显示全部楼层
有点同意。
 
在这种情况下,我不明白这怎么可能。即使可以隔离活动的windows资源管理器窗口,如果打开了多个窗口,您将如何隔离特定的窗口。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-7 02:05 , Processed in 0.471325 second(s), 77 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表