zoukankan      html  css  js  c++  java
  • 也谈vs2017手工新建ObjectARX2019项目

    新建MFC Dll项目

    选择使用共享MFC

    右键项目属性

    选择所有配置,所有平台,修改目标扩展名为.arx

    选择调试,在命令中浏览或编辑acadexe路径

    选择链接器 ,找到输出文件地址,复制备用

    回到调试在命名参数添加小写/LD+输出文件路径 /ld "$(OutDir)$(TargetName)$(TargetExt)"

    应用设置

    配置Win32平台,

    保存选择所有配置不变,平台改为win32,选择c++目录,添加包含ARXSDK路径

    添加库目录

    应用设置

    配置x64平台

    保存选择所有配置不变,平台改为x64,选择c++目录添加ARXSDK路径

    添加库目录,应用设置,

    修改添加代码

    打开afxStd.h文件,添加include #include "arxheaders.h"

    打开def文件,添加

    acrxEntryPoint PRIVATE 
    acrxGetApiVersion PRIVATE 
    

    新建cpp文件


    粘贴如下代码

    #include "stdafx.h" 
    // #include <aced.h>  
    // #include <rxregsvc.h>  
    void initApp();
    void unloadApp();
    void helloWorld();
    void initApp()
    {
    	// register a command with the AutoCAD command mechanism 
    	acedRegCmds->addCommand(_T("HELLOWORLD_COMMANDS"),
    		_T("Hello"),
    		_T("Bonjour"),
    		ACRX_CMD_TRANSPARENT,
    		helloWorld);
    }
    void unloadApp()
    {
    	acedRegCmds->removeGroup(_T("HELLOWORLD_COMMANDS"));
    }
    void helloWorld()
    {
    	acutPrintf(_T("
    Hello World!")); //实现本程序的具体功能
    }
    extern "C" AcRx::AppRetCode
    acrxEntryPoint(AcRx::AppMsgCode msg, void* pkt)
    {
    	switch (msg)
    	{
    	case AcRx::kInitAppMsg:
    		acrxDynamicLinker->unlockApplication(pkt);
    		acrxRegisterAppMDIAware(pkt);
    		initApp();
    		break;
    	case AcRx::kUnloadAppMsg:
    		unloadApp();
    		break;
    	default:
    		break;
    	}
    	return AcRx::kRetOK;
    }
    

    编译生成测试成功。

    根据cad版本,这里是64位cad,需要更改平台为x64

    开始调试

    提示点是


    调试acad点是

    正常情况下回启动cad,自动加载arx,输入命令hello,helloworld成功

  • 相关阅读:
    css学习之LInk & import
    用javascript制作2048游戏的思路(原创若 转载请附上本链接)
    Sublime Text2中的快捷键一览表(Sublime 键盘快捷键大全 )
    《Scrum实战》第1次课课后任务
    反省读经教育理论的误区 ——关于十三岁之前理解的问题
    王守仁的学前教育思想
    孙氏太极拳--无极桩
    秘静克老人的站桩
    敏捷领域学习规划
    同侪隐修录 (2016-12-25 23:10:21)转载▼
  • 原文地址:https://www.cnblogs.com/edata/p/14759087.html
Copyright © 2011-2022 走看看