中国协议分析论坛's Archiver

comboycdm 发表于 2007-1-12 02:00

一篇不错的关于win-ce文章

Windows CE 编程的十点忠告
第一类函数可用来对字符串进行比较,不参考当地(Locale)或外文字符。如果你永远不想支持外文,或者你仅仅想测试一下两个字符串的内容是否相同,这类函数非常好用。

  第二类函数使用现有的当地设置(current locale settings)(系统设置,除非你在字符串比较函数之前调用了wsetlocale()函数)来比较两个字符串。这些函数也能正确分类外文字符。如果当地的字符"C"("C" locale)被选定,这些函数与第一类函数就具有了相同的功能。

  第三类函数是Win32函数CompareString()。这个函数类似于第二类函数,但是它允许你指定当地设置(the locale)作为一个参数,而不是使用现有的当地设置(current locale settings)。CompareString()函数允许你选择性地指定两个字符串的长度。你可以将第二个参数设置为NORM_IGNORECASE,从而使函数比较字符串时不比较大小写。

  通常,即使不将第二个参数设置为NORM_IGNORECASE,CompareString()函数也不用来区分大小写。我们经常用wcsncoll()函数来区分大小写,除非使用当地的字符"C"("C" locale)。所以,在我们的代码中,不使用CompareString()函数来区分大小写,而用wcsncoll()函数来区分大小写

7. 不要使用相对路径

  与Windows NT不一样,Windows CE没有当前目录这个概念,因此,任何路径只是相对于根目录而言的。如果你的软件给文件或目录使用相对路径,那么你很可能把它们移到别的地方了。例如,路径".\abc"在Windows CE中被当作"\abc"看待。

8.移走了对calloc()和 time()函数的调用

  C运行库中的calloc()函数不能使用,但是malloc()函数可以代替calloc()函数。并且不要忘记,calloc()函数初始化时分配的内存为零,而malloc()函数不一样。同样,time()函数也不能使用,但你可以使用Win32函数GetSystemTime()函数代替time()函数。

  经过以上的警告后,你会高兴地学习最后令你惊讶的两点忠告。

9. 不需要改变Win32 输入/输出(I/O)文件的调用

  Win32的输入输出函数,Windows CE也支持。允许你象访问Win32文件系统那样访问对象。CreateFile()函数在Windows CE中不能辩认标志FILE_FLAG_RANDOM_ACCESS,但是这个标志仅用作可选的磁盘访问,并且不影响函数调用的功能。

10. 不要担心字节的状态

  当我们把应用程序写入Windows CE时,有了一个美好的发现,那就是Windows CE的数字数据类型的字节状态与Intel结构的字节状态一样,在所有的处理器上,Windows CE均支持。

  几乎象所有的数据库引擎一样,Raima数据库管理器在数据库文件中以二进制形式保存数字数据。这就意味一个记录无论何时写入数据库或从数据库读出,均被当作一系列的字节来处理,不管它域的内容。只要数据库文件不要传给别的任何系统,数字数据的字节状态问题就解决了。如果数据库文件被一个来自原始系统且带有不同字节状态的处理器访问,数字数据将被误解。

  无论何时,当你在拥有不同处理器的机器上传输文件时,就会出现这个问题。在这个问题上,值得高兴的是所有类型的处理器都使用相同的字节状态。

  在使用Windows CE时,这10点忠告应该引起你足够的重视,避免学习时走弯路。

codemagic 发表于 2007-2-12 13:54

3x

jaytin 发表于 2007-3-17 09:00

不错,你太有才拉,帮了大家不少的忙,谢谢!!

hoozh 发表于 2007-3-21 13:44

呵呵

韦锋 发表于 2007-3-24 15:02

kingrongserver 发表于 2007-4-13 11:22

学习。。感谢!~收藏了。。顶个!~

d..kill 发表于 2007-5-4 20:13

楼主真是急大家所急啊:handshake

187132547 发表于 2007-6-30 15:09

ding

民乐立立 发表于 2007-6-30 20:10

:victory: :victory: :handshake

36204889 发表于 2007-7-7 16:25

感谢!~收藏了

laobeii 发表于 2007-8-1 12:34

好文章

focker 发表于 2007-8-3 10:58

看过一次,还是觉得不错

sunshine217 发表于 2007-8-7 10:04

ddddddddddddddddddd

mycode 发表于 2007-8-17 10:50

可以看看

可以看看

吉姆才点 发表于 2007-9-12 17:32

学习。。感谢

★幸福麦兜★ 发表于 2007-9-17 22:23

楼主真是急大家所急啊

雨泪 发表于 2007-9-20 12:22

谢谢楼主分享~~~~

chairmankfo 发表于 2008-2-26 19:28

回复 1楼 的帖子

谢谢楼主了

liulynx 发表于 2008-3-31 21:35

谢谢分享

分开家 发表于 2008-4-7 16:27

我正在学习这个,谢谢了

如烟 发表于 2008-4-20 20:58

我也看看了

春天的花 发表于 2008-4-21 15:08

学习了,谢谢啊

gongren 发表于 2008-4-22 22:45

好东西 啊

buzhunbeidong 发表于 2008-5-12 11:40

 与Windows NT不一样,Windows CE没有当前目录这个概念

shichao 发表于 2008-5-13 11:02

好好好

yitchi001 发表于 2008-6-18 12:52

谢谢

页: [1]

Powered by cnpaf.net 6.1.0  © 2001-2007 中国协议分析网