首页 > 代码库 > 设备管理这八年——CSP和感慨

设备管理这八年——CSP和感慨

之前因为玩树莓派,跑了跑Windows 10 IoT Core,想到管理树莓派的问题,就找到了SCCM管理设备的一些材料,然后,就找到了CSP的一些介绍。

记得我八年前还是Windows Mobile方向MVP的时候,写过几篇随笔,介绍当时Windows Mobile使用的CSP,然后也介绍了OMA(Open Mobile Alliance)中的设备管理标准OMA DM。时间一晃就是八年,随着移动计算的发展,现在几乎没有手机不智能了。因此,微软的CSP也和以前有挺大的变化。

技术分享 技术分享

为了比较,我们拿邮件设置为例。Windows Mobile时代,CSP的文件格式如下:

<wap-provisioningdoc>
    <characteristic type="Sync">
        <characteristic type="Connection">
            <parm name="Server" value=http://www.mamicode.com/"mail.microsoft.com" />
            <parm name="User" value=http://www.mamicode.com/"user" />
            <parm name="Domain" value=http://www.mamicode.com/"domain" />
            <parm name="AllowSSLOption" value=http://www.mamicode.com/"1" />
        </characteristic>
        <characteristic type="Settings">
            <parm name="PeakFrequency" value=http://www.mamicode.com/"15" />
        </characteristic>
        <characteristic type="Contacts">
            <parm name="Enabled" value=http://www.mamicode.com/"1" />
        </characteristic>
        <characteristic type="Calendar">
            <parm name="Enabled" value=http://www.mamicode.com/"1" />
            <parm name="CalendarAgeFilter" value=http://www.mamicode.com/"5" />
        </characteristic>
        <characteristic type="Mail">
            <parm name="Enabled" value=http://www.mamicode.com/"1" />
            <parm name="MailBodyTruncation" value=http://www.mamicode.com/"1024" />
            <parm name="EmailAgeFilter" value=http://www.mamicode.com/"4" />
        </characteristic>
    </characteristic>

而到了Windows 10时代,全面对标了OMA DM的标准框架,邮件的配置结构变成了这样:

技术分享
举例:
<Target>
   <LocURI>
       ./Vendor/MSFT/ActiveSync/Accounts/%7BC556E16F-56C4-4EDB-9C64-D9469EE1FBE0%7D
   </LocURI>
</Target>

和之前的CSP定义比较,现在的CSP明确多了,实现配置项也多了。比如:

技术分享

只贴了一小部分,还有支持Holographic(HoloLens)的:

技术分享

更加完整的,可以参考官网MSDN:

https://msdn.microsoft.com/en-us/library/windows/hardware/dn920025.aspx

还记得之前写了一篇Windows 10升级理由,之一就是为了使用Here Map。这个也有专门的CSP,例如:


<SyncML>
    <SyncBody>
        <Get>
            <CmdID>1</CmdID>
            <Item>
                <Target>  
                    <LocURI>./Vendor/MSFT/Maps/Packages/93f2ba61-e03d-4b30-9be3-6e10728302d4/Status</LocURI>
                </Target> 
            </Item>
        </Get>
        <Final/>
     </SyncBody>
</SyncML>

使用GUID来表示特定的地图,93f2ba61-e03d-4b30-9be3-6e10728302d4对应New York的地图区域。更详细的可以参考:

https://msdn.microsoft.com/en-us/library/windows/hardware/mt608318.aspx

设备管理这八年——CSP和感慨