置顶随笔
摘要:
应朋友要求把这个blog的部分Windows Mobile相关文章整理了一下,方便阅读。Enjoy it! :)
阅读全文
2009年5月30日
2009年5月8日
由于部门调整, 和一些战略上的变化. Micro Framework即将加入微软的开源计划, 开放的部分可能包括运行时的源代码, 类库模型以及基础驱动程序.
"Following the move of the .NET Micro Framework team to the Developer Division of Microsoft we are planning on involving the community in the future definition and development of the product by allowing access to the source code of the runtime and object model, as well as the drivers. We are currently in the process of framing the rules of engagement and we hope to be able to offer both a process for a regulated development effort and a broad license, so that it will be possible to take advantage of the code base without necessarily contributing to the community."
消息来源:http://blogs.msdn.com/netmfteam/archive/2009/05/07/net-micro-framework-evolution.aspx
似乎在微软的裁员浪潮下, Micro Framework的生命力还是很顽强的 ;-)
2009年5月3日
今年3月微软正式公布了他们的Windows Market for Mobile计划. 这项计划于今天正式向开发者开放了。Windows Mobile 应用开发者需要 Windows Live ID 以及支付 99 美元即可注册,并且需要提供银行帐号以及税号信息。
Windows Marketplace for Mobile 是微软针对 Windows Mobile 6.5 设计的,预计与 Windows Mobile 6.5 同步在今年 9 月发布。在三月,微软公开了 Windows Marketplace for Mobile 开发者计划,开发者将获得应用销售收入的 70%,并且发布应用更新完全免费。
另外,学生可以通过 Microsoft DreamSpark 项目免去 99 美元的年注册费。
尽管 Windows Mobile 只有 5.98% 的市场份额,但微软称有超过 2,000 万的 Windows Phones(运行 Windows Mobile 的手机设备)被售出。到底能不能赚钱或者推广品牌,还得开发者自行掂量了,目前没人知道 Windows Mobile 6.5 的表现会如何。
前一阵子有流传 Verizon, Pink, Zune Phone 等关键词组成的微软手机硬件消息,不过很快微软澄清了该谣言:并无自有品牌的手机硬件计划。我相信,微软目前还是没魄力去破坏那个尽管已经畸形的生态圈。
点击此处查看更多 Windows Marketplace for Mobile 的信息,或/并准备 99 美元注册。
摘译来源: Windows Marketplace for Mobile Opens to Developers
本文来自: Windows Marketplace for Mobile 已向开发者开放注册
My friend Wang, Zhimin , who’s an intern @ Microsoft China R&D , created a GUI tool for Micro Framework Test SDK 3.0.
for more information, see:http://www.microframework.cn/post/2009/05/02/Assistance-Tool-of-NET-Micro-Framework-Testing-SDK-30.aspx
2009年4月14日
2009年4月13日
猜猜下面代码的输出是什么?
#include <stdio.h>


int array[] =
{1,2,3,4,5,6,7,8,9,10};
#define TOTAL_ELEMENTS sizeof(array)/sizeof(array[0])


int main()
{
int d = -1;
printf("d:%d\n",d);

if(d > TOTAL_ELEMENTS)
{
printf("d:%d d > TOTAL_ELEMENTS:%d\n",d,TOTAL_ELEMENTS);
}

if(d < (unsigned char)1)
{
printf("d:%d d < unsigned char 1\n",d);
}

if(d > (unsigned int)1)
{
printf("d:%d d > unsigned int 1",d);
}

getchar();
}

ANSI C编译器下的结果为:
d:-1
d:-1 d > TOTAL_ELEMENTS:10
d:-1 d < unsigned char 1
d:-1 d > unsigned int 1
知道静悄悄的改变发生在哪儿了么? ;-)
2009年4月4日
摘要: 和Windows PC一样,Windows Mobile中也提供了删除应用程序的控制面板项,但是有时候我们需要在程序中去卸载另外的程序,或者卸载应用程序本身,这样的情况在企业级应用里十分常见。这时需要用到系统配置服务文件CSP(Configuration Service Providers)。本文介绍了如何使用CSP在程序中卸载Windows Mobile上安装的应用程序。 阅读全文
2009年3月21日
今天打开Visual Studio 2008准备写windows form程序的时候, 发现Toolbox奇怪地空了,并显示“#13119”,如下图所示:

我reset toolbox之后还是无效,重起VS仍然无效。google了一下发现有人遇到过同样的问题:
http://social.msdn.microsoft.com/Forums/en-US/vssetup/thread/490c9f52-f0c3-4fd3-9770-b8be9e0fd9d9/#page:2
解法如下:
1. 打开你的文件浏览器,点击“工具”,在“文件夹选项”中设置为“显示隐藏文件和文件夹”
2. 浏览到以下目录:
C:\Users\当前用户名\AppData\Local\Microsoft\VisualStudio\9.0 (Vista)
C:\Documents and Settings\当前用户名\Local Settings\Application Data\Microsoft\VisualStudio\9.0 (WinXP)
3. 删除"toolbox.tbd", "toolboxIndex.tbd", "toolbox_reset.tbd", "toolboxIndex_reset.tbd"四个文件
4. 重起Visual Studio,这里可能要稍微等待一会儿,等VS配置工具栏。然后就可以看到工具栏又回来了
希望对遇到同样问题的朋友们有帮助。
黄季冬
2009年3月18日
Micro Framework提供了访问Internet的能力, 在数据安全性方面, Micro Framework只提供了对RSA和XTEA算法的支持,由于异构系统通信的需要, 我编写了一个加密的类库,目前它只实现了SHA-1,SHA-256算法,以后会慢慢完善的。
详见http://www.microframework.cn/post/2009/03/16/SHA-Algorithms-On-Micro-Framework.aspx
代码可以在这里下载:SHA1_MF.rar (50.16 kb)
Enjoy!
黄季冬
2009年3月16日

一个针对国内.Net Micro Framework技术的站点, www.microframework.cn . 欢迎的大家访问.
非常欢迎您的任何意见和建议, 可以通过http://www.microframework.cn/contact.aspx, 与我联系.
;-)
2009年3月12日
微软于 11 日正式宣布了开发者通过 Windows Marketplace for Mobile 开发和出售 Windows Phones 应用的新细节。微软承诺将会帮助开发者创建新的、优秀的应用,并提供指导和支持,以及保证在整个过程中的透明度。开发者可以在 developer.windowsmobile.com 获得开发工具和相关信息。
开发者将获得应用销售收入的 70%,也可以将应用的价格设为 0 元。当然,不同市场也可设置不同的价格。苹果同样也定为 70%,而 RIM 定为 80%。另外,微软还将向提交应用的开发者收取 99 美元的年注册费,学生则可以通过 Microsoft DreamSpark 项目免去。
预计 Windows Marketplace for Mobile 将与 Windows Mobile 6.5 同步在今年第四季度发布
官方公告:http://www.microsoft.com/presspass/press/2009/mar09/03-11WMMDevelopersPR.mspx
2009年3月8日
2009年2月26日
.Net Micro Framework的TinyCLR是遵循PC机上的CLR1.0版本的, 这样使得要求CLR版本为2.0以上(提供了泛型)的LINQ无法在Micro Framework之上得到支持, 不过除了LINQ之外的Lambda表达式, 扩展方法等都是可以被编译器编译为各种CLR版本都支持的, 于是我们是不是可以利用编译器和以上的特性来实现一下没有泛型的linq呢?
答案是肯定的, Marc Frei 和 Cuno Pfister 的试验证实了这种可行性, 以下是他们的测试:

Linq
using System.Collections;
using Microsoft.SPOT;
namespace System.Runtime.CompilerServices {
[AttributeUsageAttribute(
AttributeTargets.Assembly
| AttributeTargets.Class
| AttributeTargets.Method)]
sealed class ExtensionAttribute: Attribute {}
}
delegate bool Predicate (object o);
sealed class Enumerator: IEnumerator {
IEnumerator e;
Predicate p;
internal Enumerator (IEnumerator e, Predicate p) {
this.e = e;
this.p = p;
}
object IEnumerator.Current {
get { return e.Current; }
}
void IEnumerator.Reset () {
e.Reset();
}
bool IEnumerator.MoveNext () {
var b = e.MoveNext();
while (b && !p(e.Current)) {
b = e.MoveNext();
}
return b;
}
}
sealed class Filter: IEnumerable {
IEnumerable e;
Predicate p;
internal Filter (IEnumerable e, Predicate p) {
this.e = e;
this.p = p;
}
IEnumerator IEnumerable.GetEnumerator () {
return new Enumerator(e.GetEnumerator(), p);
}
}
static class Program {
static int Count (this IEnumerable e) {
var n = 0;
foreach (var o in e) {
n++;
}
return n;
}
static IEnumerable Where (this IEnumerable e, Predicate p) {
return new Filter(e, p);
}
static void Main () {
var a = new int[] {1, 2, 3, 4, 6, 8, 9, 9, 9};
var n = a.Where(v => (int) v % 2 == 0).Count();
var m = (from v in a where (int) v % 2 == 0 select v).Count();
Debug.Print(n + " " + m);
}
}
你不妨在你的VS2008中新建一个MFConsoleApp测试一下
Enjoy!
黄季冬
我去年提到一个很cool的东东(看这里), 不过My Phone就是它的加强版,虽然很早就申请到了My Phone的beta版的邀请码(本文末尾附上了一些beta code),但是今天才得以尝试一番。首先,打开浏览器到http://myphone.microsoft.com ,点击sign in,然后申请使用My Phone或者直接输入邀请码立即开始使用,这里我就直接输beta code 进去了。
然后打开手机浏览器,在地址栏里面输入:https://myphone.microsoft.com/install
然后在该页面点击download下载手机安装文件(.cab)并安装。


安装完成后在程序中找到Microsoft My Phone,可以用windows live id 登陆, 然后选择同步的项目:


同步可能会需要一点时间,不过在后台完成,你可以继续做其它的事情:


等同步完成之后就可以登录,http://myphone.microsoft.com 来访问你的手机内容了:

下面分享一些邀请码,如果你手够快的话应该可以用的上,Good luck ;-)
AXBH-DT9B-HBJM-E9ZS
ALCH-RCG5-7RU7-39SE
97RG-Q64B-F4A7-43ZW
CRTI-T9DI-UR88-UGUJ
JZ71-XA8Q-LCE3-LBL5
2009年2月24日
Micro Framework version 4.0新特性调查开始了,你可以在这里发表你对下一代Micro Framework的期待: https://connect.microsoft.com/netmf/Survey/Survey.aspx?SurveyID=7827
The .NET Micro Framework is an innovative development and execution environment for resource-constrained devices. Its fully integrated Visual Studio experience, brings a reliable and productive development environment to the embedded world.
- Develop powerful, interactive, and complex applications
- More securely connect devices over wired or wireless protocols
- Develop reliable solutions faster at lower cost
Version 4.0 planning is currently in full swing. Make sure to provide your inputs on how we can make the .NET Micro Framework better and more suited to your needs!
Take the feature survey now!!
2009年2月21日
2009年2月20日
Micro Framework来到中国已经有14个月了,不少朋友要我推荐Micro Framework的中文书籍给他们, 现在已经出版的中文书籍有以下两本:


欢迎加入.Net Micro Framework 开发的行列 ;-)
黄季冬
2009年2月15日
Microsoft最近更新了Micro Framework v3.0 SDK中的文档部分, 你可以在这里下载:
http://www.microsoft.com/downloads/details.aspx?familyid=43A1E0C4-7347-4381-BA11-CD7CC54CDDF9
解压后, 将PSDK.hxs文件copy到sdk文档目录(如:\Microsoft .NET Micro Framework\v3.0\Documentation\NET MicroFramework Docs)下, 替换掉之前的PSDK.hxs文件即可.
enjoy~
黄季冬
前两天在路上偶遇亦冰(Fairy Sun), 提到了一个小问题, 我想也许是大家所不注意的, 在这里分享一下. 有时候为了方便而不因为玩游戏误了事情, 我们会在设置里面钩上"在所有程序中的标题栏上显示时钟"这一项:

然后, 可怜的fairy不知道怎么就把显示变成了:

现在右上角这个圈圈样的时钟影响了fairy的使用, 如何变回原来的数字式的样子呢?此时我们长按(长点)那个圆形的时钟, 然后再出来的菜单中选中"数字"(digital)即可:

Enjoy!
黄季冬
2008年12月29日
摘要:
DPWS是Windows Rally技术的一个子集, 主要用于在可接入网络的设备上提供对Web Service的支持. 本文介绍了DPWS及其在.Net Micro Framework v3.0上的支持库, 以及如何利用Visual Studio 2008 sp1在.Net Micro Framework的Device上创建DPWS的host与client, 并让它们在Windows Vista下得以运行.
关键词: DPWS, .Net Micro Framework, Web Service, Windows Vista
阅读全文