zhaoxt 发表于 2022-12-3 19:47:17

跨平台建立窗口或者外挂工具箱的一种思路

无论是DCL还是OPENDCL,设计窗口都不如vb或者c#之类的环境灵活,可以方便的设置窗口状态、背景、图片、颜色甚至透明度等等。而且都是在windows平台下的程序,所以通过window程序间通讯就完全能实现。我简单试了下。希望可以给大家多提供一种思路。

hhh454 发表于 2022-12-3 22:57:59

dcl比较简单一些,也不用加载其他的辅助库或程序,楼主的思路挺好的,要是能提供可视化操作最好。

ZYX2129 发表于 2022-12-4 10:24:46

玩得太高端了

Dani1988 发表于 2022-12-4 10:41:08

用其他语言做窗体exe,通过标准输入输出可以给lisp用,容易报毒,自用是没问题的

zhaoxt 发表于 2022-12-4 10:48:44

Dani1988 发表于 2022-12-4 10:41
用其他语言做窗体exe,通过标准输入输出可以给lisp用,容易报毒,自用是没问题的

不注入,其实就是获得当前cad活动窗口句柄,然后用sendmessage函数发送cad命令或者自定义的lisp函数的命令名字符给cad窗口,等同于键入这个命令,然后cad自己执行。

caoliu023 发表于 2022-12-4 14:51:24

楼主是用的什么语言写的

zhaoxt 发表于 2022-12-4 14:58:06

caoliu023 发表于 2022-12-4 14:51
楼主是用的什么语言写的

delphi,现在很少人用了。

caoliu023 发表于 2022-12-6 08:46:14

zhaoxt 发表于 2022-12-4 14:58
delphi,现在很少人用了。

建议楼主发个样例源码来学习学习,怎么通讯,能不能返回计算值

664571221 发表于 2022-12-6 09:59:39

兄弟加我扣扣3298554767

zhaoxt 发表于 2022-12-7 19:19:44

caoliu023 发表于 2022-12-6 08:46
建议楼主发个样例源码来学习学习,怎么通讯,能不能返回计算值

出差去了,发不了了。我这个比较简单,就是用 hw := WindowFromPoint(a)取得cad文档窗口的句柄,然后用sendmessage或者postmessage对cad窗口发生命令。这两个都是windows api函数,网上一搜就知道用法。我也刚刚学习,只是以前弄过windows简单编程所以想到了。不能双向通讯,要双向的话也可以,不就是用ACTIVE对象操作cad了吗,那就是arx编程了。我这个初衷是可以同时用这处理cad以外的对象,也可以对cad发送命令,类似综合外挂工具箱。然后有灵活定制的优点,只是提供一个思路。
页: [1] 2
查看完整版本: 跨平台建立窗口或者外挂工具箱的一种思路