明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2677|回复: 3

[函数] 如何利用DynamicWrapperX注册和使用API里的GetCursorPos函数并转换为CAD坐标

[复制链接]
发表于 2011-8-20 12:18 | 显示全部楼层 |阅读模式
5明经币
请教大家如何利用DynamicWrapperX插件注册和使用API里的GetCursorPos函数并转换为CAD坐标?

最佳答案

查看完整内容

(vl-load-com) (defun c:test(/ dx lpoint retval PointX PointY curPos) (setq DX (vlax-create-object "DynamicWrapperX")) (vlax-invoke DX 'Register "MSVCRT" "calloc" "i=ll" "r=l") (vlax-invoke DX 'Register "MSVCRT" "free" "i=l" "r=l") (vlax-invoke DX 'Register "USER32" "SetCursorPos" "i=ll" "r=l") (vlax-invoke DX 'Register "USER32" "GetCursorPos" "i=l" "r=l") (setq lPoint (vlax- ...
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2011-8-20 12:18 | 显示全部楼层
(vl-load-com)

(defun c:test(/ dx lpoint retval PointX PointY curPos)
  (setq DX (vlax-create-object "DynamicWrapperX"))
  (vlax-invoke DX 'Register "MSVCRT" "calloc" "i=ll" "r=l")
  (vlax-invoke DX 'Register "MSVCRT" "free" "i=l" "r=l")
  (vlax-invoke DX 'Register "USER32" "SetCursorPos" "i=ll" "r=l")
  (vlax-invoke DX 'Register "USER32" "GetCursorPos" "i=l" "r=l")

  (setq lPoint (vlax-invoke DX 'calloc 2 4))
  (setq retval (vlax-invoke DX 'GetCursorPos lPoint))
  (setq PointX (vlax-invoke DX 'NumGet lPoint 0))        ; GetCursorPos 中的X位置
  (setq PointY (vlax-invoke DX 'NumGet lPoint 4))        ; GetCursorPos 中的Y位置
  (setq CurPos (GRREAD T 15 0))                           ; 在CAD中的位置
  (vlax-invoke DX 'free lPoint)                         ; 释放内存
  (vlax-release-object DX)
  (princ)
)
回复

使用道具 举报

 楼主| 发表于 2011-8-21 11:18 | 显示全部楼层
(vlax-invoke wrap 'Register "user32.dll" "SetCursorPos" "i=ll" "f=s" "r=l")
SetCursorPos函数能轻松注册,却不明GetCursorPos为何注册不了,求高手能出来帮忙解决,谢谢。
回复

使用道具 举报

 楼主| 发表于 2011-8-21 12:53 | 显示全部楼层
highflybird 发表于 2011-8-20 12:18
(vl-load-com)

(defun c:test(/ dx lpoint retval PointX PointY curPos)

非常感谢你的答案,要不我的程序无法继续写下去。
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-6-2 06:26 , Processed in 0.140325 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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