惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

宝玉的分享
宝玉的分享
NISL@THU
NISL@THU
E
Exploit-DB.com RSS Feed
L
LINUX DO - 热门话题
L
Lohrmann on Cybersecurity
K
Kaspersky official blog
Project Zero
Project Zero
Cisco Talos Blog
Cisco Talos Blog
T
The Exploit Database - CXSecurity.com
P
Palo Alto Networks Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
T
Threatpost
S
Schneier on Security
G
GRAHAM CLULEY
The Hacker News
The Hacker News
T
Threat Research - Cisco Blogs
Scott Helme
Scott Helme
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Privacy & Cybersecurity Law Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
Cyberwarzone
Cyberwarzone
C
CERT Recently Published Vulnerability Notes
T
Tor Project blog
AWS News Blog
AWS News Blog
Simon Willison's Weblog
Simon Willison's Weblog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
爱范儿
爱范儿
P
Privacy International News Feed
云风的 BLOG
云风的 BLOG
P
Proofpoint News Feed
S
Securelist
G
Google Developers Blog
The Last Watchdog
The Last Watchdog
Google Online Security Blog
Google Online Security Blog
美团技术团队
F
Fortinet All Blogs
小众软件
小众软件
Recorded Future
Recorded Future
V
Visual Studio Blog
B
Blog RSS Feed
H
Help Net Security
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Google DeepMind News
Google DeepMind News
Blog — PlanetScale
Blog — PlanetScale
博客园 - 聂微东
Stack Overflow Blog
Stack Overflow Blog
Martin Fowler
Martin Fowler
Latest news
Latest news
Spread Privacy
Spread Privacy
H
Heimdal Security Blog

博客园 - 不明飞行物

Symbian OS 开发初级手册 (8) 多线程 Symbian OS 开发初级手册 (7) Descriptors - 不明飞行物 Symbian OS 开发初级手册 (6) CleanupStack and Two-phase Symbian OS 开发初级手册 5 - Leave Symbian OS 开发初级手册 (4) mmp, pkg 文件 和 makesis 工具 Symbian OS 开发初级手册 (3)GUI程序中的4个基本类 Symbian OS 开发初级手册 (2)基本数据类型 Symbian OS 开发初级手册 (1) Introduction 利用JavaMail收/发Gmail邮件(SSL) Tapestry4在提交前判断checkbox是否没有一个被选中 - 不明飞行物 - 博客园 恢复windows的引导程序 在页面中插入Windows Media Player播放器 - 不明飞行物 Java中Set的深入研究 - 不明飞行物 - 博客园 Hibernate和Spring的延迟加载和DAO模式 用spring管理hibernate事务时,lzay="true"不能用的解决方法 java中List和Set对象的互换 Tapestry4.0中取得页面request - 不明飞行物 - 博客园 Logout in tapesty4.0 - 不明飞行物 validators里自定义错误信息 - 不明飞行物 - 博客园
磨刀不误砍柴工-打造超级Symbian开发环境
不明飞行物 · 2006-06-02 · via 博客园 - 不明飞行物

转载于:http://www.sf.org.cn/Article/lumen/200605/18518.html

在开发Symbian C++程序的时候,一个很重要的环节就是选择和配置IDE,当前可供选择的IDE也比较多,例如Microsoft Visual C++ 6.0, CodeWarrior, Borland C++Builder X, Borland C++Builder 6.0, Microsoft Visual Studio .NET 2003。至于选择哪个IDE,主要看个人习惯和你的开发应用领域,这里没有绝对的谁好谁坏,至于如何配置这些IDE,很多Symbian入门帖子都对此进行了讨论。本文主要说一下如何在VC++6.0下,使你的IDE更好用和更有效率。

    作为一个老牌的C++集成开发环境,在开发Symbian应用程序的时候,VC6.0的用户还是很多的,但是如果不自己动手为VC6.0添加点东东,那么就直接使用它则是一个很失败的选择。下面就逐一说明之。

<1>VC6.0在调试Symbian ++程序的时候不能查看描述符变量的数据。解决办法:添加以下内容到你的Microsoft Visual Studio\Common\MSDev98\Bin\AUTOEXP.DAT

//-------添加部分------------------------

/;add parts in order to debug for Symbian S60
TDesC16=$ADDIN(ShowDes.dll,TDesC16_View)
TDesC8=$ADDIN(ShowDes.dll,TDesC8_View)

TInt64 =low=<iLow> high=<iHigh>
TDateTime =day(zero based)=<iDay> mth=<iMonth> yr=<iYear> hr=<iHour> min=<iMinute> sec=<iSecond>.<iMicroSecond>
CActive= iIsActive=<iActive>
CArrayFixBase= iCount=<iCount>
CArrayVarBase= iCount=<iCount>
CBase= <,t>
RHandleBase= <iHandle,x> <,t>
RRegion= Rects=<iCount> Err=<iError> iTl.iX=<iRectangleList->iTl.iX> iTl.iY=<iRectangleList->iTl.iY> iBr.iX=<iRectangleList->iBr.iX> iBr.iY=<iRectangleList->iBr.iY>
TChar=<iChar> <iChar,c>
TLex8= iNext=<iNext,s>
TLex16= iNext=<iNext,su>
TPoint= iX=<iX> iY=<iY>
TRect= iTl.iX=<iTl.iX> iTl.iY=<iTl.iY> iBr.iX=<iBr.iX> iBr.iY=<iBr.iY>
TRegion= numRects=<iCount> Err=<iError>
TRequestStatus= <iStatus>
TSize= iWidth=<iWidth> iHeight=<iHeight>
TTime= iLow=<iTime.iLow,x> iHigh=<iTime.iHigh,x>
TTimeIntervalBase= <iInterval,d> <,t>
TUid= iUid=<iUid>
TStreamId= iVal=<iVal>
TMargins= iLeft=<iLeft> iRight=<iRight> iTop=<iTop> iBottom=<iBottom>
TPageSpec= iOrientation=<iOrientation>
TRgb= R=<iValue&0xff> G=<iValue/256%256)> B=<iValue/65536>
TPointerEvent=iType=<iType>, iPos.iX=<iPosition.iX>, iPos.iY=<iPosition.iY>
TCellRef=iRow=<iRow>, iCol=<iCol>
TRangeRef=iFrom.iRow=<iFrom.iRow>, iFrom.iCol=<iFrom.iCol>, iTo.iRow=<iTo.iRow>, iTo.iCol=<iTo.iCol>
CCoeControl= iPosition=(<iPosition.iX>,<iPosition.iY>) iSize=(<iSize.iWidth>,<iSize.iHeight>)

; Symbian Strings & Descriptors
TDes16=<,t> length=<iLength> max=<iMaxLength>
TDesC16=<,t> length=<iLength>
TPtr=length=<iLength> max=<iMaxLength> ptr=<iPtr+2,su>
TPtr16=length=<iLength> max=<iMaxLength> ptr=<iPtr+2,su>
TPtrC=length=<iLength> ptr=<iPtr,su>
TPtrC16=length=<iLength> ptr=<iPtr,su>
TBuf<*>=length=<iLength> max=<iMaxLength> buf=<iBuf,su>
TBufC<*>=length=<iLength> buffer=<iBuf,su>
HBufC16=length=<iLength> buffer=<iBuf,su>
TLitC<*>=length=<iTypeLength> buf=<iBuf,su>
TDes8=<,t> length=<iLength> max=<iMaxLength>
TDesC8=<,t> length=<iLength>
TPtr8=length=<iLength> max=<iMaxLength> ptr=<iPtr,s>
TPtrC8=length=<iLength> ptr=<iPtr,s>
TBuf8<*>=length=<iLength> max=<iMaxLength> buffer=<iBuf,s>
TBufC8<*>=length=<iLength> buffer=<iBuf,s>
HBufC8=length=<iLength> buffer=<iBuf,su>
TLitC8<*>=length=<iTypeLength> buffer=<iBuf,s>
TFileName= <iBuf,su>
TFullName= <iBuf,su>

<2>VC6.0不支持Symbian的关键字突出显示。解决办法:到www.newLC.com上面搜索USERTYPE.dat这个东东,下载后粘贴在\Microsoft Visual Studio\Common\MSDev98\Bin\下。(当然你也可以打开此文件,添加你想让编译器突出显示的任何类型)。

<3>VC6.0很容易和金山词霸发生冲突导致内存泄漏,从而导致你的VC6.0没有响应。解决办法:到http://www.kingsoft.com/download/36/228.shtml下载金山词霸的补丁,然后安装;或者关闭词霸的屏幕取词。

<4>由于Symbian中的类的名字都比较长,编程时全部用手输入类名或函数名时是一件很费时且效率低的事情。解决办法:下载安装Visual Assist X 插件(找破解版的,否则使用Visual Assist X 有时间限制,很不爽!)

<5>为你的VC6.0打上补丁包,至少sp3吧,否则有时会出现莫名其妙的错误。

<6>在模拟器上调试程序时,有时会碰到这样的错误“Programe Closed xx”,如果没有适当的提示信息,调试这类错误是很麻烦和费力的。解决办法:在epoc32\wins\c\System\Bootdata目录下新建一个ErrRd的文件(无文件名后缀);这样就可以在“Programe Closed ”的下发显示出错误的类型,然后到SDK的Developer Library » API Reference » System panic reference查找对应的错误原因,呵呵,再来调试就轻松多了。

<7>待续.....

呵呵,等你完成以上设置后,再打开你的VC看看,会有另外一番感受的,至少我是这样。^_^!