ARX给CAD发送命令的五种方法
2017-12-17 18:10
429 查看
参考文章地址:http://blog.csdn.net/pangshaohua/article/details/5274137
在其基础上自己做了一些验证,如有不妥之处,还望留言批评指正。
ads_queueexpr( _T("(command/"_POINT/" /"1,1,0/")") );cad2007版本时该函数还未公开,2010版本就有了,在帮助文件中搜索即可,是ads全局函数之一,使用时提前声明下就可以了,例如,extern "C" int ads_queueexpr( ACHAR *)。
acDocManager->sendStringToExecute(curDoc(), _T("_POINT 2,2,0 "));作为下一个命令执行。
acedCommand(RTSTR, _T("_POINT"), RTSTR,_T("5,5,0"), RTNONE);立即执行。与上一个方法一样,该方法也不能执行有用户交互的命令。
Windows API 方法
void SendCmdToAcad(ACHAR *cmd)
{
COPYDATASTRUCT cmdMsg;
cmdMsg.dwData = (DWORD)1;
cmdMsg.cbData = (DWORD)(_tcslen(cmd) + 1) * sizeof(ACHAR);
cmdMsg.lpData = cmd;
::SendMessage(adsw_acadMainWnd(), WM_COPYDATA, NULL, (LPARAM)&cmdMsg);//acedGetAcadFrame()->m_hWnd
}
Com 方法
void SendCommandTest(void)
{
LPDISPATCH pDisp = acedGetAcadWinApp()->GetIDispatch(TRUE);
IAcadApplication *acadApp = NULL;
pDisp->QueryInterface(IID_IAcadApplication,(LPVOID*)&acadApp);
IAcadDocument *pDoc = NULL;
acadApp->get_ActiveDocument(&pDoc);
pDoc->SendCommand(_T("_POINT 4,4,0 "));
}
记得添加头文件acadi.h与"acadi_i.c"。
在其基础上自己做了一些验证,如有不妥之处,还望留言批评指正。
ads_queueexpr( _T("(command/"_POINT/" /"1,1,0/")") );cad2007版本时该函数还未公开,2010版本就有了,在帮助文件中搜索即可,是ads全局函数之一,使用时提前声明下就可以了,例如,extern "C" int ads_queueexpr( ACHAR *)。
acDocManager->sendStringToExecute(curDoc(), _T("_POINT 2,2,0 "));作为下一个命令执行。
acedCommand(RTSTR, _T("_POINT"), RTSTR,_T("5,5,0"), RTNONE);立即执行。与上一个方法一样,该方法也不能执行有用户交互的命令。
Windows API 方法
void SendCmdToAcad(ACHAR *cmd)
{
COPYDATASTRUCT cmdMsg;
cmdMsg.dwData = (DWORD)1;
cmdMsg.cbData = (DWORD)(_tcslen(cmd) + 1) * sizeof(ACHAR);
cmdMsg.lpData = cmd;
::SendMessage(adsw_acadMainWnd(), WM_COPYDATA, NULL, (LPARAM)&cmdMsg);//acedGetAcadFrame()->m_hWnd
}
Com 方法
void SendCommandTest(void)
{
LPDISPATCH pDisp = acedGetAcadWinApp()->GetIDispatch(TRUE);
IAcadApplication *acadApp = NULL;
pDisp->QueryInterface(IID_IAcadApplication,(LPVOID*)&acadApp);
IAcadDocument *pDoc = NULL;
acadApp->get_ActiveDocument(&pDoc);
pDoc->SendCommand(_T("_POINT 4,4,0 "));
}
记得添加头文件acadi.h与"acadi_i.c"。
相关文章推荐
- ARX给CAD发送命令的五种方法
- ARX给CAD发送命令的五种方法
- ARX给CAD发送命令的五种方法
- 【转载】ARX给CAD发送命令的几种方法
- ObjectARX给CAD发送命令的几种方法
- PHP实现连接设备、通讯和发送命令的方法
- ARX及DLL程序随CAD自动启动的方法
- 打开word时,出现“向程序发送命令时出现问题”的解决方法
- CAD常用命令和快捷键的设置方法
- Word提示:“向程序发送命令时出现问题”解决方法
- WIN7中OFFICE2007出现“向程序发送命令时出现问题”的解决方法
- Linux命令发送Http的get或post请求(curl和wget两种方法)
- CAD中批量导入坐标和点号的方法命令
- STM32F407单片机SDIO接口卡在SDIO_STA_CMDACT上无法发送命令的解决方法
- linux mail命令发送附件的方法
- WIN7里使用msg命令发送消息的方法
- excel2003出现“向程序发送命令时出现错误”解决方法
- Shell.Application执行命令的五种方法小结
- SecureCRT同时向多个session发送相同命令的方法
- 发送命令给AutoCAD的方法,比如Cancel命令