cad.grx 入门篇,从安装到放弃?

安装vs2010+sp1补丁;

安装浩辰2008(64位版本);

下载浩辰Grx开发SDK., 解压到E盘目录下, E:\grxsdk  在他们的官方用户群下载,搜sdk, 找到grxsdk2018版本1月.zip

浩辰的sdk压缩包的名字有点乱七八糟的,下载之后记得检查里面他txt...

 

 

说实话,他们的开发文档可能自己都没有试过...或者太乱七八糟了,在移植的那本写了的内容,在mfc的写了的内容,但是最基础的hello world却是漏写了.....

为了大家,为了我自己....我决定把这个流程一步步写下去...

正式的来了...

启动vs2010

 

  

对着项目右击,添加一个cpp,不然属性不出现c/c++的选项!!(下面有截图)

 

再右击项目,点添加-新建项

 

 

添加一个cpp,不然属性不出现c/c++的选项!!(下面有截图) 

什么都不写,再右击项目,点属性.

开始进入配置:

 

 

新建一个64位的工程…因为我用的是浩辰的64位版本,如果是多个浩辰的版本,就要这里加多一个配置.

 

 

  

e:\grxsdk\inc\arx

 

 改Debug配置

 

_TOOLKIT_IN_DLL_  

如果弹出保存就点保存

 

 

 改Release配置

 

 

然后点确定,生成一次..没错就继续…

  

 

 

再点到项目的属性

 

e:\grxsdk\lib-x64

 

e:\grxsdk\lib-x86

 

 

e:\grxsdk\inc\arx\RxExport.def

如果是成功编译,但是无法加载,请检查这个位置是不是设置错了!!

 

 grxport.lib;Td_Root.lib;Td_DbRoot.lib;Td_Db.lib;Td_Ge.lib;Td_Gi.lib;Td_Gs.lib;gcad.lib;gcap.lib;gcdb.lib;gced.lib;gcgs.lib;gcut.lib;gcui.lib

 

在这里,大家就已经配置好了开发环境了,可以再试试加入代码到cpp内,然后重新生成,如果没好,看看下面…

 

一些配置的错误提示: 

error LNK2038:

检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(FuckCAD.obj 中)

表示了[c/c++]/ [预处理器]/[预处理器定义],没有删掉_DEBUG

  

 

.CPP内加的hello world 代码: 

#include <arxHeaders.h>
#include <tchar.h>

void initApp();
void unloadApp();
void HelloWorld();


/// <summary>
/// 注册命令
/// </summary>
void initApp()
{
    //register a command with the GstarCAD command mechanism
    acedRegCmds->addCommand(_T("HELLOWORLD_CMDS"), _T("Hello"), _T("Hello"), ACRX_CMD_TRANSPARENT, HelloWorld);
}

/// <summary>
/// 卸载命令
/// </summary>
void unloadApp() 
{
    acedRegCmds->removeGroup(L"HELLOWORLD_CMDS");
}


/// <summary>
/// 发送文字到命令栏
/// </summary>
void HelloWorld()
{ 
    acutPrintf(L"\nHello World!");
}


// 按着C的规则去翻译相应的函数名而不是C++的 
extern "C" AcRx::AppRetCode acrxEntryPoint(AcRx::AppMsgCode msg,void *pkt)
{
    switch(msg)
    {
    case AcRx::kInitAppMsg:
        acrxDynamicLinker->unlockApplication(pkt);
        acrxDynamicLinker->registerAppMDIAware(pkt);
        initApp();
        break;
    case AcRx::kUnloadAppMsg:
        unloadApp();
        break;
    default:
        break;
    }
    return AcRx::kRetOK;
}
View Code

 

记得不要加载错了,32位和64位,debug,和release的位置各不相同......但是每次开cad很麻烦,怎么办?

 

调试部分:

 

 

然后每次按F5调试,就会自动加载这个grx文件,嘻嘻

 

直接输入命令,不用ap来加载grx了.

 

猜你喜欢

转载自www.cnblogs.com/JJBox/p/10961690.html