本帖最后由 dcl1214 于 2025-8-23 20:34 编辑

  1. (setq rtn nil)
  2. (setq wjm "acad.exe")
  3. (setq port "80")      ;everything【选项】>>【http服务器】界面勾选“启用http服务器”,该界面偏上位置端口
  4. (setq f "?search=")      ;启用http服务器界面上有一个接口填写,如果不填写,默认为 ?search=
  5. (setq ip "127.0.0.1")      ;如果想搜索其他人电脑(国外远程服务器也可以)的话,这里填写别人的电脑ip即可
  6. (setq url (strcat "http://" ip ":" port  "/" f wjm "&format=json")
  7. )
  8. (setq http (vlax-create-object "MSXML2.XMLHTTP"))
  9. (vlax-invoke http 'open "GET" url 0)
  10. (vlax-invoke http 'send)
  11. (if (= (vlax-get http 'status) 200)
  12.   (progn
  13.     (setq rtn (vlax-get http 'responseText))
  14.   )
  15.   (princ
  16.     (strcat "HTTP错误: " (itoa (vlax-get http 'status)))
  17.   )
  18. )
  19. (vlax-release-object http)
  20. (alert rtn)



网友答: 本帖最后由 panliang9 于 2025-8-18 13:42 编辑

目标电脑(你想搜索的那台电脑,无论是你自己还是别人的)必须满足以下所有条件:
  • 安装了 “Everything” 软件:必须安装 [color=var(--color-accent-fg)]voidtools 的 Everything
  • 启用了 “Everything” 的 HTTP 服务器:

    • 在Everything软件中,点击菜单栏的【工具】->【选项】。
    • 在选项窗口中,切换到【HTTP服务器】标签页。
    • 勾选 “启用HTTP服务器”。
    • 记下端口号:界面上会显示一个端口号(默认可能是80),你的Lisp代码中的 port 变量必须和这个值完全一样。
    • 检查接口:该界面上有一个“URL语法”或类似设置,确认搜索的参数名是否为 search(即URL中表现为 ?search=)。一般默认就是这个,无需修改。
  • 防火墙放行:

    • 目标电脑的Windows防火墙或其他安全软件,必须允许来自外部的对你设定的端口(如80端口)的访问。
    • 如果是在公司或家庭局域网内,通常只需要在Windows防火墙添加入站规则即可。
    • 如果要通过互联网搜索别人的电脑,对方除了要设置防火墙,还必须在他的路由器上做端口转发 (Port Forwarding),将公网IP的这个端口映射到他电脑的局域网IP上。这是一个有安全风险且较为复杂的操作。



网友答: (setq rtn (vlax-get http 'responseText)) 请问下,这行代码改成(setq rtn (vlax-get http 'ResponseBody)) 是否可行,有没有办法解决,能帮忙研究一下么?,目前中望CAD 获取这个ResponseBody是没有问题的

网友答:
被承包的东子 发表于 2025-8-18 08:56
(setq rtn (vlax-get http 'responseText)) 请问下,这行代码改成(setq rtn (vlax-get http 'ResponseBody) ...

body可以转换的,你自己转换

网友答: 不会是已经试验成功了吧?

网友答: 我硬盘的小姐姐都要被你搜到了

网友答: 需要有小姐姐的电脑打开everything的http服务

网友答: 这么容易把小姐姐给泄漏了

网友答: 这种操作,是不是带有不文明的色彩?

网友答: 果然大佬都有几个不良嗜好

网友答: 我想搜共享盘的资料,咋操作
  • 上一篇:entmake 之插入文件名
  • 下一篇:没有了