自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 Symbian OS v9.x SIS 文件格式说明书

介绍 目的和范围本文档描述Symbian OS v9.1版本重新设计和重新组织的SIS文件格式。SIS文件是设备部署所需的文件包,用手机安装程序解析。除了简单的打包文件的功能外,SIS文件还可以包含影响安装过程的条件判断,比如设备相关的安装,语言相关的安装、用户可选的组件。 Symbian OS v9.1包含了新的设备安全策略,所以不再支持以前的版本。另外,设备上的安装程序在安装成功前监督

2011-06-10 16:13:00 625

原创 观察者模式的理解

class A 调用 class B.在class B实现了某个功能后想回调class A中的成员函数进行处理,这时就可使用观察者模式。使用方法:1、定义一个观察者类class MBObserver,在其中定义一些纯虚函数,如 virtual void function1()=0;2、在class B中定义一个成员变量MBObserver* iObserver,在初始化的时候要对其初始化;3、class A公有继承class MBObserver,实现其纯虚函数void function1();4、clas

2011-05-11 11:37:00 362

原创 获取安装程序的信息

使用RSisRegistrySession类可以获取所安装的sis/sisx包的详细信息。需要注意的是,该类是symbian的内部类,需要购买。购买成功后,可在namespace Swi空间中看到其定义。故使用该类时,需先using namespace Swi

2011-05-11 11:16:00 678

转载 VC中使用CMarkup解析xml文件

<br />(一) 先讲一下XML中的物殊字符,手动填写时注意一下。<br />字符                   字符实体<br />&                       &或&#38;<br />'                       &apos;或'<br />>                       >或><br /><                       <或&<<br />"            

2011-04-28 15:49:00 531

原创 新添h/cpp的错误:unexpected end of file while looking for precompiled header directive

<br />是修改 VC 的编译参数,將 /Yu"stdafx.h" 移除即可:project setting->C/C++->project options:

2011-04-27 12:11:00 547

转载 关于static_cast dynamic_cast reinterpret_cast的使用方法和场合

<br />reinterpret_cast可以转换任意一个32bit整数,包括所有的指针和整数。可以把任何整数转成指针,也可以把任何指针转成整数,以及把指针转化为任意类型的指针,威力最为强大!但不能将非32bit的实例转成指针。总之,只要是32bit的东东,怎么转都行! <br />static_cast和dynamic_cast可以执行指针到指针的转换,或实例本身到实例本身的转换,但不能在实例和指针之间转换。static_cast只能提供编译时的类型安全,而dynamic_cast可以提供运行时类型安全

2011-04-26 14:57:00 369

原创 编写及使用lib

<br />1、制作lib:<br />新建工程,选择:Generic Symbian OS->Basic static library(LIB)即可。然后定义类、函数等。<br /> <br />2、使用lib:<br />在另一个项目中使用lib,首先在mmp文件中加入:STATICLIBRARY         YouLibName.lib<br />如需引用lib中的某个.h文件,则还应该在mmp中加入:<br />USERINCLUDE    /Symbian/Carbide/workspace/

2011-04-21 18:00:00 691

原创 控制台程序无图标问题

build->run后,仿真器启动后可能自动关闭控制台程序也可能一直显示控制台程序。但在模拟器上看不到控制台程序的图标。1. 因为控制台程序运行结束后退出了。2. 想要程序退出后还能看到模拟器,必须先启动模拟器,再从模拟器启动程序。3. 控制台程序默认无法从模拟器启动的,想要在模拟器程序列表中看到控制台程序方法一:给程序增加一个注册文件。增加一个yourapp_reg.rss: #include UID2 KUidAppRegistrationResourceFileUID3 0xE545A44

2011-04-14 13:59:00 702

原创 -46 error:平台安全问题

使用RProperty::Define时出现如下错误:*PlatSec* WARNING - Secure Id Check would have failed - Process Console[eaa429d8]0001 attempted an operation requiring the secure id: e3fbcccc.  Additional diagnostic message: Checked whilst trying to Define a Publish and Subscri

2011-04-14 11:31:00 426

转载 IMPORT_C and EXPORT_C

IMPORT_C 是一个宏,在 e32def.h 定义,意思是从 DLL 中导入函数。#define IMPORT_C __declspec(dllexport) 如果一个 DLL 函数要被导入到应用程序那么这个函数必须首先以 IMPORT_C 声明,告诉编译器,这个函数可以在 DLL 中找到。EXPORT_C 也是一个在 e32def.h 定义的宏,意思是从 DLL 中导出函数。#define EXPORT_C __declspec(dllexport)如果一个函数是 DLL API 的一部分, 并且要在

2011-04-13 12:20:00 373

转载 窗口事件:Window Server Events

Window Server中的Events(事件)被应用程序获取并处理。类似于微软Windows操作系统中的消息,事件通常源于用户的输入,由Wserv生成发送给客户端程序,如请求窗体重画。客户端程序通过WServ 会话来发送请求并获取事件。大部分事件(如键盘和鼠标事件)都封装为TWsEvent类。重画事件告诉应用程序屏幕的哪个区域需要重画,这类事件被封装在TWsRedrawEvent类中。事件类型Symbian OS 中的Window server有三种事件类型,通用事件、重画事件及优先键事件,它们分别封装

2011-04-12 11:51:00 657

转载 Symbian C/S 机制分析

以下分析基于:Platform :S60 3rd Edition, Feature Pack 2 SDKOperating System :Symbian OS v9.3为什么要使用Client/Server架构*在Symibian OS中所有的异步服务都是Server通过C/S架构来实现的。Client是利用Server提供的特定服务的程序,Server接受来至Client的请求消息并同步或异步的处理他们。C/S架构有如下的优点:可扩展性 有效性:相同的Server可以服务多个Client。 安全性:Se

2011-04-12 09:49:00 388

原创 ClientServer/simple有感

DescriptionThis pair of examples shows a simple use of the client server interface. The client, SimpleClient, has a single session with the server SimpleServer, implemented as a statically linked DLL.Build NotesThe server must be built before the client. T

2011-04-11 18:33:00 300

转载 Application closed: ncnlist KERN-EXEC 3

<br />当我们启动S60 3rd Edition, FP1 SDK模拟器时会出现"Application closed: ncnlist KERN-EXEC 3" 信息提示。当此提示消失后模拟器正常工作(只是我们所运行的程序被关了)。些问题的解决方法比较简单,我们只需要下载NCNList_fix.zip然后解压后覆盖原SDK目录目录下的EPOC32目录既可(不要删除原来的目录)<br /> <br />下载地址:http://wiki.forum.nokia.com/index.php/TSS00065

2011-04-11 16:45:00 419

原创 Symbian进程间通信介绍--收藏

<br /><br /><br />这里主要介绍了进程间传递请求和数据的术语和框架。主要有以下几个方面的API:<br />异步服务:提供了一个进程向其他进程请求服务的术语<br />C/S结构:提供了Symbian OS的客户端/服务器框架,一个程序可以通过该框架向多个程序提供服务<br />通告服务:提供了多种低水平服务,比如环境改变,进程消亡,向屏幕显示简单消息等。<br /> <br /><br />下面详细介绍这三种API:<br /><br />异步服务(Asynchronous Service

2011-04-11 14:00:00 371

原创 Invalid project description错误

<br />原因:mmp中的userinclude或者systeminclude中的目录或路径名错误<br /> <br />解决:1、将mmp的文件名和工程的目录名改成一样的,同时需要修改inf文件<br />   <br />         2、将mmp文件中的路径名进行修改。如:“.”改成“..”等。<br />

2011-04-11 11:35:00 426

原创 一个程序多个进程

<br />如何理解一个程序可以对应多个进程,一个进程也可以对应多个程序?<br /> 说白了就是,一个程序可以重复运行,开几个窗口,比如网游的“双开”,一个进程可以对应多个程序就是一个DLL文件可一被多个程序运用,比如DirectX9的动态链接库,就是,许多游戏都要有它才能运行。

2011-04-08 18:20:00 6163 1

转载 unhandled exception 错误

在对话框中添加一个编辑框IDC_EDIT2,然后给该控件添加一个CString类型的变量或者CEdit类型的变量,断点调试就出现该错误。错误可能的原因:该编辑框的ID错误

2011-04-08 10:37:00 3946

转载 symbian中文显示的两大解决方案:静态和动态

<br />字符串编码中文表示常用的有:GB2312,GBK,Unicode,UTF-8<br />其中GBK是GB2312的超集,也就是涵盖了GB2312编码的所有内容,<br />UTF-8是Unicode的在网络传输中的一种编码格式,<br />如果我们使用vc做为开发工具,在win下面进行开发,那么win<br />的默认字符集是 GBK的,而symbian系统默认的编码方式却是<br />Unicode,也就是说直接写在程序里面的汉字在手机上显示的时候,<br />就会变成乱码。<br /><br

2011-04-07 10:38:00 364

原创 java-类

<br />1、类声明部分<br />格式为:<br /> [修饰符] class 类名 [extends 父类名] [implements 接口名列表]<br />类的修饰符有private、public、abstract、final。一个类可以同时有多个修饰符,当有多个修饰符时这些修饰符没有先后顺序之分,可以按照任意顺序排列。<br />l         private(私有):被修饰的类只能被同一包中的类访问,这是Java默认的方式。<br />l         public(公共):被修饰的类能

2011-04-06 13:57:00 350

原创 java的基本概念

<br />1.类之间的关系:<br />use-a :依赖关系<br />has-a :聚合关系<br />is-a :继承关系--例:A类继承了B类,此时A类不仅有了B类的方法,还有其自己的方法.(个性存在于共性中)<br /> <br />2.包(package)Java允许把一个或多个类收集在一起成为一组,称作包,以便于组织任务,标准Java库分为许多包.java.lang java.util java.net等,包是分层次的所有的java包都在java和javax包层次内。<br /> <br /

2011-04-06 10:25:00 233

原创 android新建project

<br />Project Name :项目所在的文件夹名称<br />Application Name: 应用显示在屏幕上的标题  <br />Package Name:包名称,用来区分不同的类 例如:com.android.xxx<br /> <br />min sdk version 和选择android版本:<br />表示程序将运行在哪个系统版本之上,对应的数值关系如下:<br />  Android 1.5:Level API 3<br />  Android 1.6:Level API 4<b

2011-04-06 10:01:00 259

转载 Java和C、C++的区别

<br />对 于 变 量 声 明 、 参 数 传 递 、 操 作 符 、 流 控 制 等 ,Java 使用了 和 C、 C++相 同的 传 统 ,使 得 熟 悉 C、 C++的 程 序 员 能 很 方 便地 进 行 编 程 。 同 时,Java为 了 实 现 其简 单 、 鲁 棒 、 安 全 等 特性 ,也 摒 弃 了 C和 C++中 许 多 不 合 理 的 内容 。 <br /> <br />1.全 局 变 量 <br />Java程 序 中 ,不 能 在 所 有 类 之 外 定 义 全 局 变 量 ,

2011-04-02 16:07:00 366

转载 UML图制作工具:Rational Rose 2003下载及破解

<br />Uml工具Rational Rose 2003下载:http://tseg.org/~dxiao/SEPractice/Rational2003/RationalRoseEnterpriseEditionforWindows.2003.06.00.391.000.exe<br /><br />Rational Rose 2003安装破解文件:http://zixi.bokee.com/inc/sdasdas.rar<br />2003企业版的,破解可用<br />安装步骤:<br />1.双击启

2011-04-01 14:51:00 1589

转载 修改MFC程序图标

1、单击Workspace窗口的ResourceView标签,选中资源ID为IDR_MAINFRAME图标资源,然后按Delete键把它删除掉。注意:一定要把它删除才行。 2、从Developer Studio的Insert菜单中选择Resource,然后选择Icon,新建(New)一个新的图标或导入(Import)一个已有的图标。 3、把新图标的资源ID改为AFX_IDI_STD_MDIFRAME(如果是MDI应用程序)或改为

2011-04-01 11:30:00 1887

原创 打日志

<br />简单的使用RFileLogger类:<br />一、首先要在使用日志类的文件include "flogger.h",然后再加入flogger.lib文件<br />           类RFileLogger对应的头文件和库文件分别是flogger.h和flogger.lib<br />二、使用<br />1、在类的二阶段构造ConstructL()中加上下面代码:<br />//打开日志文件服务的连接 <br />RFileLogger iLog; <br />iLog.Connect();

2011-03-31 11:18:00 317

原创 Unresolved symbol的错误

在打日志的时候出现如下错误:Unresolved symbol: _ZN11RFileLogger11WriteFormatERK7TDesC16S2_16TFileLoggingMode11TRefByValueIK6TDesC8Ez解决一般有2个方面:1、少库文件。通过SDK查找上面错误的类,在mmp里面加上。2、发现mmp文件已经有此库文件了,但是还错误。就是SDK的本地include里面少头文件、真机编译的release里面少库文件。

2011-03-31 09:53:00 3290

原创 文件对比工具

<br />Beyond Compare 是一款不可多得的专业级的文件夹和文件对比工具。使用他可以很方便的对比出两个文件夹或者文件的不同之处。并把相差的每一个字节用颜色加以表示,查看方便。并且支持多种规则对比。

2011-03-31 09:49:00 414

转载 MFC绘图基础

<br />1 几何对象的结构和类<br />为了使用绘图函数,应该先了解绘图所用到的几种表示几何对象的结构和类。这些结构和类分别定义在头文件windef.h和afxwin.h中。<br /><br />1.点<br />1)点结构POINT<br />点数据结构POINT用来表示一点的x、y坐标:<br /> typedef struct tagPOINT { <br />    LONG x; <br />    LONG y; <br />} POINT;<br /><br /><br />2)点类C

2011-03-30 15:52:00 771

原创 symbian中动态数组CArrayX的使用

symbian中的动态数组有两大类:RArray和CArrayX。1、CArrayX(CArrayFixFlat,CArrayPakFlat,CArrayVarSeg,CArrayPtrFlat,...6个修饰元素:Fix[定长],Pak[压缩],Var[变长],Ptr[指针],Seg[段],Flat[平坦]其存储方式分为连续存储(Flat)和分段存储(Segmented buffer)两种。可以使用的CArray类型:名称 元素大小 缓冲器类型 用法 CArrayFixFlat 固定大小 平面 很少进行分

2011-03-30 15:03:00 381

转载 Symbian系统错误码的解释

Symbian 系统都会出现系统出错,其实解决的方法很简单: 新建一个名为“ErrRd”的空文本文件,放到C:systembootdata这个目录下,让系统在出错时能显示出错代码,这时我们就知道了这个错误代码的原因:系统错误-1-找不到指定文件系统错误-2-一般错误系统错误-3-操作被取消系统错误-4-内存 不足系统错误-5-不支持所要求的操作系统错误-6-错误要求系统错误-7-精确的失去总和系统错误-8-错误的物件系统错误-9-超出限定的界限系统错误-10-少于限定的界限系统错误-11-已经存在了系统错误

2011-03-30 10:17:00 362

转载 symbian错误码大全

一般错误KErrNone  0  KErrNotFound  -1 不能找到指定对象 KErrGeneral  -2 一般错误(不可预料) KErrCancel  -3 操作被取消 KErrNoMemory  -4 内存不足 KErrNotSupported  -5 该请求操作不被支持 KErrArgument  -6 错误请求 KErrTotalLossOfPrecision  -7 精度全损 KErrBadHandle  -8 错误对象 KErrOverflow  -9 上溢 KErrUnderflow

2011-03-30 10:12:00 4624

转载 MFC下拉列表框的用法

<br />Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。<br />1、定义控件对应变量<br />假定已经创建了一个Dialog,并且从控件工具箱将 Combo Box 控件拖放到上面。打开 Class Wizard,添加控件对应变量,如:CComboBox m_cb

2011-03-21 15:55:00 585

原创 字符串和二进制字符串问题以及读写二进制文件

 一般针对字符串使用CString和charCString没有长度限制,但字符串以'/0'为结束标志。故要对二进制字符串进行操作,则不能使用CString,而要用CByteArray和char。关于CString:1、是actual字符串,而不是字符串指针,不需要在定义的时候指定长度2、该类重载了+、-、=等运算符,故使用该类来对字符串进行操作比char数组要方便关于CByteArray:1、是比特流,可认为是byte数组,但比直接定义byte数组的操作要简单和方便2、实例化:    CByteArray

2011-03-16 12:02:00 3399

原创 sprintf函数

<br />函数原型:<br />intsprintf(char*buffer,constchar*format [,argument] ... );<br /><br />返回值:buffer中存储的字串长度<br />buffer:存储格式化的字符串<br /> <br />例子:<br />#include <stdio.h><br /><br />void main( void )<br />{<br />   char  buffer[200], s[] = "computer", c = 'l'

2011-03-15 15:28:00 383

原创 MFC文件打开/保存对话框:CFileDialog

<br /> CFileDialog<br />文件选择对话框的使用:首先构造一个对象并提供相应的参数,构造函数原型如下: <br />CFileDialog::CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, C

2011-03-15 13:48:00 810

原创 活动对象的使用

<br /><br />*活动对象的典型用法:在某个应用中处理一些事件(如按键事件、屏幕更新等),一般用于在某个单一线程中实现非抢先式多任务。一般线程中都装有一个活动调度器,在这种情况下,程序员可以立即使用活动对象。但是在可执行程序(.exe)中或创建自己的线程时,必须先安装AS,再使用AO.<br /> <br /> <br /> <br />AO的具体使用:<br />1、创建AO,并将其加入到AS中-----<br />MyActiveObject::MyActiveObject() : CActiv

2010-07-16 12:15:00 316

原创 在程序中添加并使用文件

<br />首先,把文件复制或创建到程序的某个目录下(data、group、gfx等)<br /> <br />其次,在pkg文件中添加相应的路径。<br />    如将file.txt文件复制到file程序的data目录下,希望编译运行后在手机的路径为c:/system/data/file/file.txt<br />    则应在pkg文件添加如下代码:<br />    "../data/file.txt" - "c:/system/data/file/file.txt"<br /> <br />此

2010-07-14 16:17:00 511

原创 使用TFileText按行读取文本文件

Symbian的文本文件通常都保存为Unicode格式。读写文本文件的常用api是TFileText,由于文本文件通常都为Unicode,所以TFileText api使用16位描述符作为参数。下面的函数演示了如何读取一个文本文件: static void ReadTextFileL(const TDesC& aFileName, TDes& aBuffer) {         RFile aFile;         User::LeaveIfError(aFile.Open(CCoeEnv::Stat

2010-07-14 15:54:00 677

原创 TBuf8向TBufC的转换

<br />TBuf8<256> buffer;<br />TBufC<256> KBuffer;<br />KBuffer.Des().Copy(buffer);<br /> <br />其他的转换可类似

2010-07-14 15:47:00 266

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除