乐筑天下

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

[编程交流] AutoCAD Security Lisp

[复制链接]

2

主题

9

帖子

7

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 10:52:01 | 显示全部楼层 |阅读模式
嘿,大家好,我是一个全新的创造线程,虽然我已经是一个论坛的球迷一段时间了,现在我已经收到了很多帮助。
 
这是我的第一个问题!Drumroll拜托?!
 
我对AutoLISP有点陌生,在过去的两周里,我每天都在深入学习AutoLISP将近8个小时。我决定没有更好的方法可以尝试,所以我想为我的AutoCAD创建一个安全宏。我可以开始,所有的好东西,所以我不关心帮助。我只需要知道代码和我做错了什么。
 
我想让它问用户一个问题。如果该点与某个坐标(0,0)匹配,则什么也不会发生。如果与点不匹配,AutoCAD将消亡。我会担心设置我想要的点和东西,我只需要知道我的代码发生了什么?!更有经验的用户可能更快地了解正在发生的事情。现在,不管我输入什么坐标,它都会死,*叹气*
 
  1. (defun C:security()
  2. (setq pass (getpoint "\nGet to the point already!"))
  3. (if (= pass '(0,0))(alert "Welcome Agent 31!")(command "quit" "y")
  4. )
  5. )
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 11:02:42 | 显示全部楼层
您应该使用等于比较列表:
 
但是我不确定你用它能得到什么。。。你知道一个简单的会跳过你的安全检查吗?!?
 
当做
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 11:06:44 | 显示全部楼层
欢迎来到论坛
 
一切都很顺利,但由于
quit命令
 
当做
塔瓦特
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 11:09:32 | 显示全部楼层
 
我很惊讶这不是真的-想法是如果通过测试,用户将收到欢迎消息,否则AutoCAD将关闭。
即使发出两条语句,AutoCAD也不会退出,直到警报框未关闭。
 
当做
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 11:15:01 | 显示全部楼层
 
对不起,我第一次不同意你的意见。。。。
尝试调用Lisp,您会发现不会有任何警报,因此只有一条消息来保存更改。。。。
 
当做
 
塔瓦特
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 11:20:05 | 显示全部楼层
 
没错,但这是因为OP的代码是错误的;这个测试永远不会通过——请看第2篇文章。
 
当做
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

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

铜币
438
发表于 2022-7-6 11:27:23 | 显示全部楼层
你错了。上述方法不起作用的原因是他的比较检查错误。
在警报调用完成之前,不会执行警报调用之后的任何操作。
 
如。
  1. (progn (alert "See") (command "_.quit"))
回复

使用道具 举报

2

主题

9

帖子

7

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 11:34:01 | 显示全部楼层
这真的帮了我的忙,谢谢。我知道它有几个缺点,但老实说,我只是想玩一些东西。这教会了我一件关键的事情,就是IF函数的错误以及如何输入坐标。我感谢你们俩。
 
请注意,“Y”不允许它要求您保存更改,
 
我真的非常感谢你们两位在这方面的帮助,我感谢你们这么快的回复时间。
 
当做
 
  1. 3
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 11:37:14 | 显示全部楼层
如果有人复制lisp文件并将其粘贴到Autocad的命令行中
并调用该程序,因此将被要求“已经切入要点”
如果键入0,则Autocad程序将顺利退出。。
 
试试看
当做
 
塔瓦特
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

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

铜币
438
发表于 2022-7-6 11:43:13 | 显示全部楼层
只是因为最初的评估是完全错误的,无论你做了什么,它永远不会做任何事情,但退出。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-6 16:52 , Processed in 0.333713 second(s), 72 queries .

© 2020-2025 乐筑天下

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