自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

form表单乱码问题

引用内容accept-charset="GB2312"onsubmit="if(isIE)document.charset='GB2312'"跨编码页面传值的时候,很郁闷的.虽然html里面form标签有个accept-charset属性,可以帮助我们解决这个问题,可惜的是IE浏览器虽然认得accept-charset,却并不买它的帐。IE的表单提交的时候使用什么编码是完...

2009-03-31 16:58:00 56

CIDR详解

现行的IPv4(网际协议第4版)的地址将耗尽,这是一种为解决地址耗尽而提出的一种措施。它是将好几个IP网络结合在一起,使用一种无类别的域际路由选择算法,可以减少由核心路由器运载的路由选择信息的数量。  CIDR(无类型域间选路,Classless Inter-Domain Routing)是一个在Internet上创建附加地址的方法,这些地址提供给服务提供商(ISP),再由ISP分配给...

2009-03-30 14:18:00 568

学习windows网络命令之:route命令小档案

route命令主要用来管理本机路由表,可以查看,添加、修改或删除路由表条目。该命令在win2000以上操作系统都可使用。  命令格式如下:  ROUTE [-f] [-p] [command] [destination] [MASK netmask] [gateway] [METRIC metric] [IF interface]  带方括号的参数可以省略。  各参数含义如下:...

2009-03-30 10:37:00 167

IP分组头部结构

IPv4首部一般是20字节长。在以太网帧中,IPv4包首部紧跟着以太网帧首部,同时以太网帧首部中的协议类型值设置为080016。 IPv4提供不同,大部分是很少用的选项,使得IPv4包首部最长可扩展到60字节(总是4个字节4个字节的扩展)0481216192431版本首部长度服务类型长度认证标志段偏移量TTL...

2009-03-27 14:01:00 1799

DHCP详解

DHCP是Dynamic Host Configuration Protocol的缩写,它是TCP/IP协议簇中的一种,主要是用来给网络客户机分配动态的IP地址。这些被分配的IP地址都是DHCP服务器预先保留的一个由多个地址组成的地址集,并且它们一般是一段连续的地址。 理解DHCP服务 使用DHCP时必须在网络上有一台DHCP服务器,而其他机器执行DHCP客户端。当DHCP客户端程序发...

2009-03-26 15:01:00 101

ARP详解

我们知道,当我们在浏览器里面输入网址时,DNS服务器会自动把它解析为IP地址,浏览器实际上查找的是IP地址而不是网址。那么IP地址是如何转换为第二层物理地址(即MAC地址)的呢?在局域网中,这是通过ARP协议来完成的。ARP协议对网络安全具有重要的意义。通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞。所以网管们应深入理解ARP协议。一、什么是A...

2009-03-26 11:51:00 114

brew接口内存布局

在第一次接触brew时,我就在疑问:“brew中的接口是个什么概念啊!”,而且发现它里面就没有数据,只有一个指针。后来慢慢才熟悉和明白了brew的接口的实质和内存布局。 如果你要揪跟问底,那你可以跟踪到其定义的头文件中看看究竟。那我就以IFileMgr为例子来看看究竟!(别的都类似) 当我跟踪进去后,我发现头文件#defineVTBL(iname)iname##Vtbl#de...

2009-03-25 11:43:00 64

深入玩BREW---从任务角度看BREW

首先要明确一个概念, 手机软件不只是只有BREW而已。任何嵌入式软件都必须要有他的操作系统,在高通平台上,这个操作系统就式REX。 REX管理着一些TASK--任务(UI TASK,CMTASK,CAMERA TASK,FILE SYSTEM TASK)等等。早前,由于WEB BROWSER由于占用资源过多也曾被单独做成一个TASK,但是任务间通信比APP间通信麻烦的多,后来也就...

2009-03-24 21:38:00 74

JPCAP监听原理

三.使用JPCAP实现监听  1.监听原理   在详细说用JPCAP实现网络监听实现前,先简单介绍下监听的原理。  局域网监听利用的是所谓的“ARP欺骗”技术。在以前曾经一段阶段,局域网的布局是使用总线式(或集线式)结构,要到达监听只需要将网卡设定为混杂模式即可,但现在的局域网络普遍采用的是交换式网络,所以单纯靠混杂模式来达到监听的方法已经不可行了。所以为了达到监听的目的,我们需要“欺骗”路由器、...

2009-03-23 20:09:00 88

JPCAP机制

一.JPCAP简介  众所周知,JAVA语言虽然在TCP/UDP传输方面给予了良好的定义,但对于网络层以下的控制,却是无能为力的。JPCAP扩展包弥补了这一点。  JPCAP实际上并非一个真正去实现对数据链路层的控制,而是一个中间件,JPCAP调用wincap/libpcap,而给JAVA语言提供一个公共的接口,从而实现了平台无关性。在官方网站上声明,JPCAP支持FreeBSD 3.x, L...

2009-03-23 20:02:00 117

WinPcap 结构

WinPcap是一个Win32平台的,用于捕获数据包和进行网络分析的体系结构。它包括了一个内核级的数据包过滤器,一个低层动态链接库(packet.dll),一个高层的,依赖于系统的库(wpcap.dll)。 为什么我们使用术语"体系结构"而不是"库"呢?因为数据捕获是一个低层的行为,它需要和网络适配器,及操作系统的信息交换,特别是网络的实现。所以,一个简单的库是实现不了的。 以...

2009-03-23 19:30:00 310

VS2005 C++ 项目怎样添加“依赖”、“库目录”和“包含目录”

1. 添加编译所需要(依赖)的 lib 文件 [解决方案资源管理器]“项目->属性->配置属性->连接器->输入->附加依赖项”里填写“winsock.lib”,多个 lib 以空格隔开。 (等同于“#pragma comment(lib, "winsock.lib") ”语句) 2. 添加库(Libs)文件目录 方法 1:[解决方案资源管理器]...

2009-03-23 10:33:00 85

BREWing with C++

By Murray Bonner<!--content_start-->In this article, we'll investigate the fundamentals of C++ programming for the BREW platform. This time out, you'll learn the fundamental struc...

2009-03-18 10:40:00 93

VS错误error C3872: '0x3000': this character is not allowed in an identifier

error C3872: '0x3000': this character is not allowed in an identifier中文解释 error C3872: “0x3000”: 此字符不允许在标识符中使用这主要出现在从文档中拷贝程序代码时,由于含有了中文字符空格而造成的。解决方法,检查出现错误的行数的这一行和前后的一行,删除所有的空格,并确保输入法状态在英文状态,...

2009-03-18 10:15:00 62

nohup命令详解

Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用 & 在程序结尾来让程序自动运行。比如我们要运行mysql在后台:/usr/local/mysql/bin/mysqld_safe --user=mysql &但是加入我们很多程序并不象mysqld一样做成守护进程,可能我们的程序只是普通程序而已,一般这种程序使用 & 结尾,但是...

2009-03-17 14:14:00 62

Deferred Lighting翻译后记【三】——从DS到技术

最近看了看星际争霸2的技术白皮书,感觉有块石头落了地:暴雪使用了Deferred Shading,就表明这个技术的性能和表现是绝对没问题的,暴雪一向的风格都是适应性最好的技术(这其中,性能是一个重要的指标)实现在此适应性上,最好的效果。看来Deferred Shading正好是这样一种选择——对于星际2和暗黑3这种风格的游戏而言。实用的就是好的,AO很好,可惜不实用,于是就有了SSAO,滋...

2009-03-14 22:48:00 47

Brew ARM makefile 经验

这篇是基于QC的Brew平台编译其ARM版target的makefile的经验:1.在AMOI的ADS1.2的基础上,请确认系统环境变量中存在以下变量(否则手工添加): ARMHOME c:/apps/ads120 ARMDLL c:/apps/ads120/bin ARMCONF c:/apps/ads120/bin ARMINC c:/apps/ads120/includ...

2009-03-13 21:54:00 71

让Subversion和Visual Studio 2005一起工作

工具准备:VS2005.Subversion,撰写此文时的最新版本是1.4.2,官方网站http://subversion.tigris.orgTortoiseSVN,撰写此文时的最新版本是1.4.1.7992,官方网站http://tortoisesvn.net,该软件有中文汉化包VisualSVN,让VS2005支持SVN的插件。该软件必须和TortoiseSVN配套使用。...

2009-03-11 10:18:00 71

Gamer Class的Deferred Shading截图

用Gamer Class完成的Deferred Shading截图,512个物体,每个600面,32光源)。接下来开始编辑器了。

2009-03-10 21:38:00 55

深入BREW接口机制

初学Brew时,最烦人的就是接口的定义了,一大堆的宏,让人不知所云。这里,将以helloworld为例,我们一步一步揭开它的神秘面纱。1.helloworld:typedef struct _helloworld { AEEApplet a ; //第一个成分必须是 AEEApplet AEEDeviceInfo DeviceInfo; // 设...

2009-03-10 17:20:00 49

BREW 记录器(Logger)

与BREW应用程序下载工具一样,BREW记录器也是一个BREW设备与PC连接的工具。BREW记录器的作用是获取在BREW设备中运行的应用程序的调试信息,这些调试信息是通过BREW助手函数DBGPRINTF输出的。通过BREW记录器我们可以捕获应用程序在运行时所输出的调试信息,这些信息在模拟器环境下开发时,也会从Visual Studio的输出窗口中输出。这些输出的信息会以记录的形...

2009-03-10 11:27:00 52

BREW 应用程序下载器

在模拟器中开发完成应用程序并生成可以在设备上运行的二进制(.mod)文件之后,我们需要一种能够将应用程序下载到BREW设备中去测试的工具。这个工具就是BREW Application Loader,也就是应用程序下载器。 为了使用BREW应用程序下载器,我们需要首先从高通网站获取一个签名文件,这个签名文件通常以(.sig)作为扩展名。当我们安装小程序的时候,我们将需要将...

2009-03-10 11:20:00 50

BREW 设备文件编辑器

BREW模拟器通过模拟设备文件来模拟真实的应用程序运行的硬件平台和软件平台环境,之所以能够实现这种模拟方式的关键在于设备文件的存在。而编辑设备文件的工具就是BREW Device Configuratior,也就是设备文件编辑器。通常情况下设备文件编辑器只对OEM用户提供安装和下载,设备文件则是通过OEM设备生产厂商提供给BREW应用程序开发者。这样可以保证每个模拟设备的信息是准确...

2009-03-10 11:10:00 54

BREW模拟器

BREW模拟器用于模拟选定的BREW设备,使得我们可以加载BREW环境下开发的测试小程序和类。模拟的BREW设备可以使用各种屏幕、字体、键盘、可用内存量、支持的语言和其它参数。在模拟过程中,模拟器将在PC显示器上打开设备的图像。通过点击对应设备按键的图像区域,可以对要模拟的Applet提供按键输入,同时Applet生成屏幕输出显示在设备图像的屏幕区域。BREW模拟器还可以通过鼠标事件模拟触...

2009-03-10 10:43:00 103

BREW 资源文件编辑器

BREW资源编辑器允许我们创建应用程序中使用的对话框、字符串、二进制数据以及文件对象。我们还可以使用资源编辑器创建控件,如:菜单、列表、日期选择器以及计时器等。 如果创建的应用程序需要在不同语言的BREW设备上运行,这种资源文件的管理方式将十分有用。资源文件编辑器的操作界面如图7.5所示。图7.5 资源文件编辑器 字符串资源元素是一个字符数组,这些字符可以是Unicode...

2009-03-10 10:02:00 70

BREW MIF编辑器

每一个BREW应用程序(准确地说是每一个模块)都有对应的MIF文件,用来描述该模块中每一个应用程序的信息,如Class ID、图标、名称等等,MIF编辑器就是用来编辑MIF文件中这些内容的。在BREW MIF编辑器中可以创建MFX和MIF文件,MFX是开发 MIF 过程中使用的XML格式的中间文件。MIF是一种从MFX文件编译而成的特殊类型的BREW资源文件,其中包含有关BREW模块 ...

2009-03-09 20:42:00 105

BREW接口

与大多数面向对象的平台一样,BREW平台中的各种接口均继承自一个通用的接口。图7.2 列举出了一部分BREW接口的继承关系:图7.2 BREW接口继承关系 图7.2中列出了BREW接口中一部分具有继承关系的接口,这些列出来的接口只是BREW众多接口中的一小部分,不过确是最常用的一部分接口。从图的左边到右边,按照箭头方向依次是从基类接口到派生接口。派生接口的实例可以调用其...

2009-03-09 20:13:00 59

BREW事件

通常,在我们的应用程序中必须处理以下的几个事件: 1、EVT_APP_START事件。在应用程序启动时,我们在应用程序中注册的事件捕获函数将会接收到这个事件,这表示我们的应用程序已经开始运行了。在我们的应用程序中,可以在这个事件中进行创建接口,或者分配内存空间等操作。 2、EVT_APP_STOP事件。在我们的应用程序结束时将接收到这个事件,表示应用程序已经停止运行了。我们应该在应用...

2009-03-09 20:09:00 48

brew真机测试

乍一看来,在一个BREW设备上运行我们的应用程序是一件十分浪费时间的事情,但是在一个真实的硬件环境中运行我们的应用程序是十分重要的,因为这样做可以让我们检测到应用程序在模拟器中没有遇到的错误,尤其是在我们自然不自然的使用Visual Studio库函数的时候。不过不幸的是,让我们的应用程序运行在一个BREW设备上,并不是一件轻松的事情,因为我们必须联系高通公司的工程师去获得我们所需要的BRE...

2009-03-09 20:04:00 53

BREW环境

BREW是一个可扩展的、面向对象的应用程序开发和执行环境,它使用C/C++语言进行开发。同时,BREW还被设计成了一个所见即所得开发系统。BREW支持应用程序和共享模块,应用程序和模块做为独立的DLL开发,运行时由模拟器载入。共享模块中可以包含功能模块,例如开发游戏时,可以将增强功能的图形接口进行重新封装,做为应用开发中的接口使用,这些扩展接口可以同BREW标准接口一样在应用程序中使用。...

2009-03-09 11:29:00 56

BREW SDK的目录结构

BREW目录根目录SDK下主要包含以下几个文件夹: 1、bin。在此目录下包含了BREW在Windows环境下运行的可执行文件和数据文件。在子目录“bin/DataFiles”下,包含了BREW模拟器使用的声音文件和声调数据库。在“bin/en”目录下包含了BREW系统本身在英文模式下所使用的资源文件,我们还可以指定其他语言的资源文件。这些资源文件根据所模拟的实际BREW设备的不同,而有...

2009-03-09 10:14:00 81

BREW SDK的组成

BREW SDK中包含了一组工具和组件,应用程序开发者可以通过这些工具和组件高效、快速的开发出多种多样的应用程序,这些工具和组件包括: 1、BREW AEE。BREW AEE是一个可扩展的面向对象的应用程序开发和执行环境,它提供了一个使用C/C++开发应用程序和共享模块的平台,同时它采用了类似Windows等操作系统的事件驱动程序运行方式。 2、BREW模拟器(Emulator)。B...

2009-03-09 10:01:00 61

BREW设备系统架构

BREW设备是整个BREW产业链中的终点,为整个产业输送资金血液,整个产业的生存都取决于BREW设备。BREW设备是BREW的运行平台,这个平台的核心是BREW Porting Kit,也就是支持BREW应用程序运行的软件库和资源的集合,是BREW赖以生存的土壤。BREW设备的系统架构如图5.3所示:图5.3 BREW设备系统架构 在BREW内部,分为OEM和AEE层。AEE层是...

2009-03-09 09:31:00 50

BDS系统

BREW三要素之间,BDS处于中心地位,而且也承担了许多关于BREW的幕后工作。BDS主要是由运营商主导的一个BREW下载的控制中心,其主要的任务是维持整个BREW产业生态链的生存环境。虽然BDS对于BREW技术本身没有多大的意义,但是,它确是BREW产业生存的核心内容。通过对它的了解,我们可以知道BREW的地位和用途,这样也可以反过来影响我们对BREW的理解。现在我们就来看看BDS系统的内...

2009-03-09 09:22:00 710

BREW系统的组成

整个BREW系统由开发平台、运行平台和服务器三个要素组成。开发平台就是我们所使用的BREW SDK,用来在PC端开发可以在运行平台运行的程序。运行平台就是指可以运行BREW应用程序的移动通讯设备上的BREW运行环境,它的核心是BREW的Porting Kit。服务器是连接开发和运行平台的一个“连接器”,开发平台所开发出的BREW应用程序放在服务器上,以便于运行平台的用户通过无线通讯网络下载应...

2009-03-09 09:18:00 178

Make File符号说明

关键词用途define定义一个“数据包”,是用enddef做结尾,可以包含多行的命令。ifeq/ifneq条件判断,可以搭配else使用,endif结尾。原型:ifeq(Arg1,Arg2)。ifdef/ifndef变量是否定义的条件判断,可以搭配else使用,endif结尾。原型:ifd...

2009-03-09 08:34:00 94

Deferred Shading翻译后记【二】

本周四,跟同事们讨论的时候,大概说了一下Deferred Shading的一些基本细节,以及与我们项目的关系。我对Unreal3没有全面支持Deferred Shading至今耿耿于怀,甚至有时候让一部分同事产生了对Unreal3的不信任感。其实,我最想表达的,是这个Blog一贯以来的主题:没有最好的技术,没有最坏的技术,没有有用的技术,没有没用的技术,没有正确的技术,没有错误的技术——技术就是技...

2009-03-09 02:03:00 67

Deferred Shading翻译(Shawn Hargreaves 2004 GDC的经典文章)

唉,吭哧吭哧半天,终于翻译完了,郁闷,要是两年前,十几篇这样的文章都搞定了,最近的状态需要振作了!不多说了,比较大,找不到地方放,放到了CSDN的下载里。http://download.csdn.net/source/1084504原文可见:http://www.talula.demon.co.uk/里的http://www.talula.demon.co.uk/Def...

2009-03-08 23:46:00 51

C语言的宏定义

写好C语言,漂亮的宏定义很重要,使用宏定义可以防止出错,提高可移植性,可读性,方便性 等等。下面列举一些成熟软件中常用得宏定义:1,防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H //头文件内容 #endif 2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。 typedef un...

2009-03-08 22:17:00 38

浅谈C中的malloc和free

在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的malloc()和free()两个函数的了解甚少,只知道大概该怎么用——就是malloc然后free就一切OK了。当然现在对这两个函数的体会也不见得多,不过对于本文章第三部分的内容倒是有了转折性的认识,所以写下这篇文章作为一个对知识的总结。这篇文章之所以命名中有个“浅谈”的字眼,也就是这个意思了!希望对大家有一点帮助!...

2009-03-08 15:57:00 46

空空如也

空空如也

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

TA关注的人

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