Windows Mobile FAQ 2006.7.19

最近一直在忙着写程序,所以从MEDC后就没好好回答问题,BLOG上已经积攒了不少的问题,干脆在这里集中回答一下,大家也更方便来找。
如果回答得有什么不妥,请大家给予指正,谢谢。
如果这样效果好的话,我打算以后也这样做,把一段时间的问题汇总在一起。




藤条焖猪肉 发表于2006-07-04 11:07:00  IP: 61.144.207.*
1.要在任务栏中隐藏窗体标题一般都是
用ShowDialog时,把前一个窗体的标题设为空
用Show时,如果只标题设为窗框的话是不会隐藏的吧,只能把前一个窗体的引用传到新窗体中,再把窗体标题设为空。

对吧,但在使用CAB用MVC或MVP时,一般是不把前一个窗体的引用传到新的窗体的话,怎样在Show时把窗体标题在任务栏中隐藏呢?

2.当一个业务流程可能要显示很多的窗体,要想在最后业务时关于所有该流程的窗体该怎么做的呢?

3.关于Wince程序的自动升级问题,能不能告诉对于程序自动升级的方案呢:
我现在要考虑到自动升级是:
1.文件传送:
使用Http传送的话可行吗?在CDMA上测试一般下载速度平均只能到2-4KB。
用自己写的通过Tcp传送,速度可到10KB,比较理想,但是要部署服务器端(.net),在服务器端要使用其他操作系统,像Linux那样就不得不再写个c++或java版的。
你的方案中是一般是采用什么方式的呢?在传送速度与部署维护问题怎样考虑较好呢?

2. 当升级是使用部分文件升级时,怎样去处理跨版本的升级呢?在你的方案中升级的策略是怎样的呢?

谢谢,希望能详尽回答 :-)
PS: 终于在MEDC上见到你一面了, 当天的课算你讲得最不错了,顺便问问,MEDC上的所有培训课程的PPT在哪里可以下载到呢?

首先,CAB的问题我可能没有更好的答案,我也刚刚开始学习CAB,所以去问熟悉CAB的专家可能更好一些。
然后关于自动升级的问题,如果你用.NET CF的话,可以采用组件化方法来做这个事情,创建一个带Interface的DLL,部署到GAC中,其他的DLL实现该接口就可以被主程序调用。至于版本的问题,可能比较麻烦,Assbemly不支持卸载,你可以把DLL加载到AppDomain中,然后卸载AppDomain,但跨越AppDomain的对象传递也是很麻烦的事情。所以你可能无法支持动态的加载。
传输的问题,我建议你还是使用HTTP来做,CDMA的速度我没有测试过,但是考虑到兼容性和部署的成本,使用HTTP还是最合算的,况且你2-4K的流量也只是一个测试数据,并不能说明CDMA的全部情况。



回复: Windows Mobile 2nd 开发黄金周(4):Windows Mobile设备编程中的本地存储FAQ         iamreal2       7/9/2006 4:51:00 PM       删除
马老您好!
看过您的两场webcast受益匪浅,谢谢!

有个问题请教您,在您有时间的时候若能给予回复,不胜感激。
iamreal2@gmail.com

Environment: VS2005Team
C# or VB.net configuration/
Project for Smart Device
当我依照您的SQL Mobile那场Webcast做同样的练习的时候,在Combobox右上方并没有您演示中的smart tag,而且listbox的smart tag的第一行"Data Source"也不是一个combobox而是textbox。

是不是在发行的版本中对这部分的支持有所改动?

谢谢!

具体情况我不了解,应该是没有添加数据源,或者是当前窗体没有数据源造成的。如果想

做练习,可以参考MSDN的相关介绍。我当时用的就是正式版本,所以不应该有区别。


回复: Windows Mobile 2nd 开发黄金周(4):Windows Mobile设备编程中的本地存储FAQ         GreateWay       7/17/2006 11:03:00 AM       删除
请问马老师:移动开发(SmartPhone、PocketPC)都需要哪些环境?VS2005是否含有Mobile5.0?移动开发中能否使用企业库?

VS2005就可以进行移动应用程序的开发,但需要单独安装WM 5。0的SDK。企业库的情况我不太了解,你可以参考:
http://msdn.microsoft.com/mobility/default.aspx?pull=/library/en-us/dnpag2/html/mcsflp.asp


回复:Windows Mobile开发简明目录(2006.04)         Eric       7/18/2006 3:13:00 PM       删除
请问,用textbox绑定了数据库中的某个字段,我想修改这个字段,然后保存到数据库中的程序怎么写?给一点点提示也可以,谢谢。

将修改结果保存的话,需要两步:首先调用BindingSource的Update方法,将修改结果保存到DataSet中;然后,调用TableAdpter中的Update方法(类似,具体名字记不住了,手边查不到)将DataSet中的结果保存到数据库中去。
记得我曾经在去年的移动开发黄金周的课程中讲过这个话题,你可以把那是的Webcast翻出来看看。


回复:VS.NET 2005 Beta2初体验(6)为无网络开发环境设置Loopback Adapter         HappyChina       7/6/2006 4:47:00 PM       删除
您好,

MSDN说.Net2005 CF 允许使用COM组件,我要在PPC中编程调用MediaPlayer播放mp3文件,但是没有成功。

说是
// private AxWMPLib.AxWindowsMediaPlayer windowsMediaPlayer;


Error 6 The type or namespace name 'AxWMPLib' could not be found (are you missing a using directive or an assembly reference?) C:/Program Files/Windows Mobile Developer Samples/0206 Working with Multimedia/InspectionSP/MainForm.Designer.cs 10 13 InspectionSP

我已经安装了wm5.0 sdk。

在.NET CF中调用ActiveX的情况与调用COM组件的情况不同,你可以参考Alex Feinman的文章<Hosting ActiveX Controls in the .NET Compact Framework 2.0>
http://msdn.microsoft.com/mobility/recent/default.aspx?pull=/library/en-us/dnnetcomp/html/host_activex_controls.asp

回复: Windows Mobile 2nd 开发黄金周(4):Windows Mobile设备编程中的本地存储FAQ         Jim_zhu       7/6/2006 3:59:00 PM       删除
马宁老师您好:
知道您比较忙,希望您能在百忙之中帮我个忙,谢谢!! 我邮箱:
本人在MEDC2006上听你讲课,认识您的。当时还问了您有关技术问题,不知您还能否记得我。今天我有几个比较急的问题一直没能解决,在此请教你下能否帮我解决:

1.我用EVC中自带Cabwiz.exe软件打包,生成了*.CAB文件,再通过GPRS下载,为什么有时我IE浏览器提示“要将 ’**.Arm.CAB’下载到主内存的“My Documents”文件夹吗?”提示,这是对的。而有时它就直接打开成乱码。我想问您这是怎么回事,怎么解决。我现在通过恢复手机解决的,但这不是长久之际。

2.您能告我用Cabwiz.exe写*.inf 文件的demo 版吗?现在要是单纯给一个文件打包我没问题,如将1.exe和2.exe 同时打在一个包里我就有点问题,还有就是在安装是总是提示“你安装的程序可能无法正确显示,因为它是为windowsMobile软件的旧版本而设计”,但我选确定完后,软件都能用,请教下您,注销这个提示。谢谢您能否给个demo。

3.我写了段程序,通过GPRS下载数据我原来是通过cmnet下载的没有问题,后来考虑到运用成本我改为通过cmwap下载,可是现在我经常提示”操作超时”,而遇此问题我就打开IE浏览器,如打开www.163.com网页,下次再重新下载数据,问题就到到解决。我想请问您,这种情况下我应该从哪方面做手改哪方面程序。谢谢!最好能给我demo程序。

4.我用HTTP协议向服务器上传数据,为什么上传不了数据。我的代码如下:
CHttpFile *pFile = m_pHttp->OpenRequest(CHttpConnection::HTTP_VERB_PUT, m_strIniPath, NULL, 1, NULL, NULL, m_dwHttpRequestFlags);

pFile->AddRequestHeaders(szHeaders);
pFile->SendRequestEx(strData.GetLength());
pFile->WriteString(strData);
pFile->EndRequest();


我的软件环境是:eMbedded Visual C++ 4.0 +PocketPC Phone
硬件环境是:DOPOD 828+

1,这个问题我没理解,不知道什么是“直接打开成乱码”,希望你能解释一下。
2,您要的这个DEMO在MSDN中是存在的,以“cabwiz”作为关键字查找一下。旧版本的问题是这样的,在inf文件中有一个字段是指定CAB应用于哪种WM平台的,所以可能是inf文件的配置有问题。
3,因为没有用过cmwap,所以没什么好的建议,我觉得可能更多是ISP那边进行了限制,软件方面的修改可能不是条正路。
4,这个涉及到更多网络环境配置的细节,所以帮不上你什么。

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值