首页
社区
课程
招聘
[讨论]小白的Windows Mobile 之旅
2009-5-14 15:27 17399

[讨论]小白的Windows Mobile 之旅

2009-5-14 15:27
17399
上次和斑竹加百列 以及热心的小金等人热心相助;
现在说说这几天遇到的一些感受:

1 安装vs2008 后 确实默认自带.net cf 2.0 以及 .net cf 3.5 两个版本,
   在看了刚买的Microsoft Windows Mobile 开发后,知道在机器区域集成了
  .net cf 2.0 ,和wm 5.0 smartphone sdk,还有wm 5.0 pocket pc phone sdk

   在实际使用的时候部署模拟器的时候,确实smartphone和pocket pc phone 差别,控件上 都有不同.
   首先关键的就是触摸屏部分,可以类似winfrom下开发,上手很快,而且经过简单测试,为mobile开发的程序在win下也可以正常执行,除了界面难看些,也许就是.net的功劳吧.

2 支持touch,支持手机按键事件编程,这 这都是后来才发现的,虽然让我感叹不已,有意思!一句hello,world,在一个按钮事件上很容易就出现了.

3 还有一个不知道算不算问题的问题,vs2008用vb.net,c#做移动设备开发都可以,但选择 Visual C++为移动设备做开发,无论是MFC应用程序还是ATL等等,虽然有选项,但实际生成模板实例却总是无法生成,也没报错. 大家遇到没有呢?

4 现在感觉加百列斑竹和小金的话,确实未来smartphone和ppc将来会走在一起,有按键,有触摸,所以选择专业版SDK.

5 下一步,我想要做什么?
   一步步熟悉进程,线程,文件,网络,邮件,通讯,消息等等.

[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

收藏
点赞0
打赏
分享
最新回复 (46)
雪    币: 164
活跃值: (10)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
NETTF小金 2 2009-5-14 15:41
2
0
汗,你不会以为手机编程仍然是复杂的ARM编写吧。一切都跟你在win32下写程序类似了,很简单的。

另外VC的实例应该是能生成的,你是不是装了什么IE7之类的,有冲突了,自己百度下修复方法
雪    币: 2604
活跃值: (64)
能力值: (RANK:510 )
在线值:
发帖
回帖
粉丝
加百力 12 2009-5-14 15:46
3
0
恭喜noid取得的进展!

会不会是安装VS2008过程中,在安装VC时没有选择“智能设备开发”这样的选项?(大概是这样的名字)

我的感觉是API(如果你走.NET CF路线就是各种类库)很重要!
因为我们做软件开发无非是写程序使用系统提供的基本功能,实现我们要做的工作。所以我们需要有扎实的基础能够自如的应用这些系统基本功能。

文件、进程、线程、注册表、窗体等等是最基础的。
要深入还有:电话、短信、GPS、蓝牙、套接字、WinINet等等。

慢慢来,逐步深入。
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-14 15:50
4
0
我默认安装的是IE8,有点奇怪,只能先搜索一下看看
目前我安装的VS是定制安装的(个人习惯),基本上都安装齐全了,
目前只支持vb.net/c# ,visual c++选择了移动开发,然后选好sdk和.net
点完成,只有轻微的一声,这个生成画面就重新刷新一下,没有进入编辑状态.
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-14 15:54
5
0
确实对智能设备本身一些特有功能还不是太熟悉,我先将windows开发的一些经验在wm开发上先熟悉,然后看看能否自己尝试将这些功能一一封装成自己的功能类,将来之需要维护好这个类就可以了.
蓝牙,短信,等等,我现在正在搜索资料和参考熟悉,尽可能的话,先了解,熟悉,最后再封装成类调用.
雪    币: 164
活跃值: (10)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
NETTF小金 2 2009-5-14 15:55
6
0
你是走.net/C#的路还是VC的路,两套路下的方式是不同的。
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-14 15:58
7
0
平时用的很多的就是纯SDK编程,为了快速开发和更好的支持,我想还是先走c#,当用c#熟悉了wm系统后,根据需求采用vc或者c#都可以,主要是看那个方便了;
有了c#的开发基础和知识积累后,再用VC开发,我觉得上手就容易多了.
雪    币: 2604
活跃值: (64)
能力值: (RANK:510 )
在线值:
发帖
回帖
粉丝
加百力 12 2009-5-14 16:01
8
0
我个人感觉: 如果时间充足的话,从VC/API路线走比较好。

掌握C/C++可以对底层了解更深入一些。后面再学习.NET也比较容易.

而且有些最新的API不会马上封装到.NET类库中.
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-14 16:04
9
0
斑竹,我不用MFC的,我不是MFC的支持者,咨询一下,WM下 除了MFC做界面,还有纯SDK,C#,还有没有其他的Form可视化编程?
雪    币: 2604
活跃值: (64)
能力值: (RANK:510 )
在线值:
发帖
回帖
粉丝
加百力 12 2009-5-14 16:05
10
0
根据在公司看到的情况,如果一开始使用Java和C#这样比较高阶的语言和类库再转C/C++会比较难适应.

因为很多底层的工作,系统帮你作了.当需要你自己做得时候会不太适应.
雪    币: 2604
活跃值: (64)
能力值: (RANK:510 )
在线值:
发帖
回帖
粉丝
加百力 12 2009-5-14 16:09
11
0
请看清楚我的帖子.我可一个字都没有提MFC的.

我一般比较支持在初学是走C/C++调用API路线,后面基础扎实了学学MFC或者.NET都可以,也很容易.

不要把VC和MFC混为一谈.

C/C++和VC也不是一回事.
雪    币: 164
活跃值: (10)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
NETTF小金 2 2009-5-14 16:13
12
0
嘿嘿,我走VB.Net和C的SDK,经常用SDK写些底层导出dll,再用VB.Net做界面配合快速开发。

C做完整个界面的事情我也弄过,为了写个托盘程序,结果折腾了两天才出来个简单界面,我用SDK写的,MFC编译的代码太大了,SDK写的才8KB,MFC起码200KB。
雪    币: 2604
活跃值: (64)
能力值: (RANK:510 )
在线值:
发帖
回帖
粉丝
加百力 12 2009-5-14 16:14
13
0
据我所知一些大型的WM厂商比如HTC(在大陆这边多普达比较为人所知),在开发时只用C/C++调API,而不用MFC,更不会用.NET.包括UI都是只用SDK开发的.

其实使用C/C++调API也不难.同桌面平台类似.
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-14 16:14
14
0
mfc我一直很不喜欢用,所以关于gui方面的,几乎都用delphi来做,
c语言虽然快捷,但自己积累了很多功能函数不想做成函数的方式,
还是c++做起来最好,自己积累一个功能类,方面到处使用和维护.
因为目前不知道为什么我的编译环境vc++不支持驱动设备开发,所以
就先用c#上手试试.
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-14 16:17
15
0
关于纯SDK开发ui,我想也是;
不过这样一来,所以的消息都要自己去处理,
我有个疑问,smartphone和ppc屏幕都是一定的吗?
雪    币: 2604
活跃值: (64)
能力值: (RANK:510 )
在线值:
发帖
回帖
粉丝
加百力 12 2009-5-14 16:21
16
0
确实是这样.
虽然麻烦但是对系统的控制会更好.当然这要综合考虑开发速度的问题.

什么叫"屏幕都是一定的"?问题不清楚.
雪    币: 164
活跃值: (10)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
NETTF小金 2 2009-5-14 16:23
17
0
SP有160X120屏幕称为QQVGA,320X240称为QVGA,基本就这两种,VGA的少见。
PPC是320X240起步QVGA,然后640X480是VGA,还有WVGA啥的不标准分辨率,通常你考虑QVGA和VGA就行了。
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-14 22:41
18
0
谢谢加百列版主,热心的小金.
确实因为采用SDK做的话,需要考虑两种设备屏幕的分辨率;
其次考虑是否支持Touch功能,我这样的想法,不知道可行不可行,我先找找资料
雪    币: 164
活跃值: (10)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
NETTF小金 2 2009-5-15 01:19
19
0
你还得考虑一种情况:横屏和竖屏。

必须在启动和OnSize里获取当前屏幕宽高比并并处理它们,否则会很难看,Windows不会自动帮你调整的。
上传的附件:
雪    币: 2604
活跃值: (64)
能力值: (RANK:510 )
在线值:
发帖
回帖
粉丝
加百力 12 2009-5-15 08:10
20
0
小金说的非常正确!

去年我们做WM开发时,开始就没有注意到横屏问题。结果到快交货时才发现这个问题,赶紧加班加点重做了一套横屏的UI。后面做开发的朋友要小心了。
雪    币: 104
活跃值: (68)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
刘国华 2009-5-15 08:44
21
0
我喜欢用PellesC做Windows mobile的程序,小巧方便,呵呵
雪    币: 2604
活跃值: (64)
能力值: (RANK:510 )
在线值:
发帖
回帖
粉丝
加百力 12 2009-5-15 09:00
22
0
PellesC是什么系统?不太了解,请介绍一下。
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-15 10:11
23
0
这是十分宝贵的经验,多亏小金无私的奉献,来古月人家喝女儿红 ^^
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-15 10:13
24
0
这是一个基于LCC的免费编译器.功能强大,速度极快,可定制,比较方便
支持插件化.一般可以制作win32及控制台应用程序,而且可以导入vc或嵌入式vc程序
可以制作pocket pc及wince应用程序,功能可谓相当强大,比dev c++有过之而无不及
支持各种资源的编辑
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
noid 2009-5-15 10:13
25
0
lcc 啊,非常小巧,编译出来的程序也小巧,我记得以前用的时候是参考点普的几个扫描器的例子
,好像不支持类?
游客
登录 | 注册 方可回帖
返回