C#调用Windows Mobile控制面板项

C#里想直接调出 Windows Mobile 的控制面板项,其实还挺实用的,尤其是你不想自己折腾 UI、不想注册表这些麻烦事。像“移除程序”、“设置闹钟”这种系统功能,直接调用就行,省事不少。

系统控制面板的入口一般是通过调用带参数的ceexec或者CreateProcess来实现的,具体入口参数其实就是控制面板里那些.cpl 文件。你只要搞清楚对应功能的路径,一句代码就能弹出来。

比如你要打开“删除程序”界面,就可以这样:

CreateProcess("ctlpnl.exe", "cplmain.cpl,4", ...);

是不是挺省事?不用自己写卸载逻辑,也不用操心界面设计,直接借用系统的。还有像设置时间、网络、声音之类的,基本都有对应的编号或者参数。

你要是对这块更感兴趣,可以看看c#对计算机的操作(控制面板等调用)API这篇文章,讲得还蛮细的,C#调用 Windows 底层资源的方式也有涉及。

注意一点,有些设备厂商会定制自己的 ROM,会把某些控制面板项给隐藏或者替换,所以最好提前测试下目标设备兼容不兼容。

如果你也在做 WinCE 或者老一点的 Windows Mobile 项目,想快速集成系统功能,不妨试试看这招,还挺香的~

rar 文件大小:12KB