找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 571|回复: 5

[分享]:VC++2005

[复制链接]
发表于 2006-5-19 23:04:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
最近为了完成毕业设计,我选用了VC++2005  + ObjectARX2007 对AutoCAD2007进行二次开发,而手头的资料也很有限,只有ObjectARX2000和2006两份资料,VC++方面用的最高版本也是VC++2003,而VC++2005又有很多地方都有变化,所以在开发的过程中确实遇到了很多麻烦!后来经过自己的一些摸索和努力,也发现了一些变化,解决了一些问题,现在把它写下来,和有这方面需要的人一起分享!

acutPrintf ("")    要变成      acutPrintf (_T(""))

MessageBox ("")或MessageBox (S"")    都必须变为     MessageBox ( _T("") )

还有类似要用到 " "  的函数都要用 _T(" ")

char 和 char *    变为    TCHAR 和  TCHAR *    还有 ACHAR 和 WCHAR ,不过一般都用做 TCHAR 就可以了,不需要用ACHAR或WCHAR

strcmp 用做 _tcscmp

strcpy  用作  StrCpy

还有VC++2005的一个大变化,就是控件的名称可以用中文的,之前的版本不支持,只能是英文字符,否则会说是无效字符

恩,暂时发现这些,和大家分享,大家要是也发现一些变化的话,也希望能发布出来,一起分享!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-5-20 11:11:11 | 显示全部楼层
恩,越来越标准化了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-5-20 11:36:08 | 显示全部楼层
在调试程序过程中发现,CAD2007中全用UINCODE了。在工程开始时要设置字符集(老程序升级要注意)
  我的程序中自已实现一个从CControlBar z派生的DOCKBAR,在VC2005 + ARX2007 编译通过了,用UNICODE字符集编译链接就能正常加载运行,用mul-charsetldnd encoding也能编译链接,但加载后运行总提示一个内存读取错误!!后来在一直跟踪到CControlBar :: OnCreate(...)中发现在后一种情况下,m_pDockSite 和m_pDockContext不能正常初始化,据估计CAD2007中的核心部份是用Unicode 编译的!!

抛砖引玉,请多指教!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-5-20 15:49:19 | 显示全部楼层
谢谢,正需要。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-5-21 19:53:23 | 显示全部楼层
objectarx2007文档清楚写明,ARX  API 接口函数的字符(串)参数都使用UNICODE,你自己的程序可使用其他编码,但在传给ARX前必需转换为UNICODE
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-22 07:52:10 | 显示全部楼层
最初由 CXWCN 发布
[B]随机文档清楚写明,所有得ARX  API 接口函数都使用UNICODE,你自己得程序可使用其他编码,但在传给ARX前必需转换为UNICODE [/B]


我只知道VC++2005是要求用UNICODE,然后就使用UNICODE的标准来编程!像这样说,可以在开始的时候不采用UNICODE的标准,而使用其他的来编程,那么自己的程序编好了要怎样再转换成UNICODE呢?怎样实现呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-12 05:51 , Processed in 0.453860 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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