乐筑天下

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

[编程交流] 限制对跑步的访问

[复制链接]

2

主题

9

帖子

7

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 06:37:12 | 显示全部楼层 |阅读模式
嘿,伙计们,正如标题所示,我需要限制对我们正在测试的特定Lisp的访问,以便在整个办公室中使用。然而,在这个“测试”阶段,只有某些用户被允许运行这个例程。目前,在下面发布的代码中(我是“ajr”),它在用户检查中不断传递错误值。我认为我在正确的轨道上,但我不明白为什么我仍然得到一个错误的值。有什么想法吗?我们将一如既往地感谢您的帮助,并提前表示感谢。
 
  1. (defun c:lolwat (/ X blk )
  2. (cond (= "ajr" (getvar "loginname"))
  3. (initget 1 "Yes NO")
  4. (setq ansr (getkword "\nIs this a UT Job? <Yes or NO>:"))
  5. (cond (= ansr "NO")
  6. (GON)  
  7. (GFRS)
  8. (command "qsave" )
  9. (GON)                                   ;FOR UT JOBS ONLY PER TLD REQUEST
  10. (GDSTRY)                                ;FOR UT JOBS ONLY PER TLD REQUEST
  11. );;cond
  12. (GON)  
  13. (GFRS)
  14. (command "qsave" )
  15. ;(GON)                                   
  16. ;(GDSTRY)                                
  17. (foreach x
  18. (mapcar 'cadr (ssnamex (ssget "_X" '((0 . "INSERT") (410 . "MODEL")))))
  19. (setq blk (cdr (assoc 2 (entget x))))
  20. (if (assoc 1 (tblsearch "block" blk)) (command "_.xref" "_bind" blk))
  21. );;; end foreach
  22. (princ)
  23. (command "-layer" "s" "0" "")
  24. (command "-purge" "all" "" "N" "")
  25. (command "audit" "y")
  26. (command "zoom" "e")
  27. (PDF)
  28. (command "saveas" "" (strcat "c:\\Record_Drawings\" (getvar "dwgname")))
  29. (prompt "\n Drawings Prepared. Check Output Folder.")
  30. (princ)
  31. );;; cond
  32. (prompt "\n Are you sure you should be using this?")
  33. (prompt "\n Access Denied.")
  34. (princ)
  35. );;defun
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 06:43:51 | 显示全部楼层
loginname区分大小写,因此例如Ajr与Ajr不同。除此之外,您需要为cond函数再添加一个paren,当然不需要
忘记在正确位置关闭此栏
 
  1. (cond [color=red][b]([/b][/color](= "ajr" (getvar "loginname"))
回复

使用道具 举报

2

主题

9

帖子

7

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 06:46:35 | 显示全部楼层
哼!哇,我真该看看。这么简单的事情。。。谢谢你,我的好先生。
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

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

铜币
438
发表于 2022-7-6 06:48:26 | 显示全部楼层
那么,如果用户说是的话,会发生什么事情吗?
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 06:53:18 | 显示全部楼层
不客气
回复

使用道具 举报

2

主题

9

帖子

7

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 06:55:22 | 显示全部楼层
 
 
说得好。还没有试过。我知道我错过了更多。天哪,这太草率了。这是对我已经做的常规的肮脏改编,显然比我最初想象的要脏得多。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 06:57:47 | 显示全部楼层
 
那个家伙(gosh函数)做什么?
回复

使用道具 举报

2

主题

9

帖子

7

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 07:01:12 | 显示全部楼层
它允许用户为客户端快速归档文件和PDF。它去除图形上的任何油脂,绑定所有外部参照、清除、审核,并执行另存为和PDF图形。
 
现在我有了这种工作,我注意到我无法得到不显示错误答案的真实场景。例如,如果您查看原始帖子中的代码,即使满足条件,它也始终显示拒绝消息。我知道这是因为defun的退出paren在它之后,但是,我不知道在哪里放置拒绝消息,如果条件为true,它将不会显示。
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

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

铜币
438
发表于 2022-7-6 07:06:22 | 显示全部楼层
 
 
  1. (defun c:test (/ ansr)
  2. (if (= "ajr" (getvar "loginname"))
  3.    (progn
  4.      (initget 1 "Yes No")
  5.      (setq ansr (getkword "\nIs this a UT Job? [Yes/No]:"))
  6.      (cond ((eq ansr "No")
  7.             ;; DO STUFF
  8.            )
  9.            ((eq ansr "Yes")
  10.             ;; DO STUFF
  11.            )
  12.      )
  13.    )
  14.    (princ "\n Are you sure you should be using this?\n Access Denied.")
  15. )
  16. (princ)
  17. )
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 07:08:03 | 显示全部楼层
也许这会更准确,因为它是区分大小写的。
 
  1. (= (strcase "ajr") (strcase (getvar "loginname")))
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-10 15:53 , Processed in 0.428548 second(s), 72 queries .

© 2020-2025 乐筑天下

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