注册表的哪个分支执行CE设备读取?

我的Windows CE(Motorola / Symbol)手持设备在HKEY_CURRENT_USER和HKEY_LOCAL_MACHINE下面都有名为\ Software \ Microsoft \ Windows CE Services的文件夹。

HKEY_CURRENT_USER只有一个条目“DeviceFriendlyName”; 它由设备读取,因为设备在Windows资源管理器中标记有该键的值。

但是,HKEY_LOCAL_MACHINE怎么样? 它包含更多密钥,例如ExcludeExts,FileSyncPath,GuestOnly和c。

为什么在注册表中的两个不同位置有\ Software \ Microsoft \ Windows CE Services,并且都被设备读取?

关于HKEY_LOCAL_MACHINE下面的“ExcludeExts”键(即: lnk,tmp,cdb,mdb,sdf,sqlite )中的值是否得到尊重存在问题(我们不希望在这些值之间传输具有这些扩展名的文件)设备和与之连接的PC)。

通常情况下,它可以在我的机器上运行(sdf文件不再在我的开发机器上同步),但是测试部门说这对他们不起作用 – sdf文件仍然被放在“C:\”中PC上的Rompecabeza设备上的用户\ rompecabeza \ Documents \ Documents。

从我收集的内容来看,注册表值可能不区分大小写,但为了确保我更改了此代码:

RegistryKey key = Registry.LocalMachine.CreateSubKey(@"SOFTWARE\Microsoft\Windows CE Services"); if (key != null) { key.SetValue("GuestOnly", 00000001, RegistryValueKind.DWord); key.SetValue("ExcludeExts", "lnk,tmp,cdb,mdb,sdf,sqlite", RegistryValueKind.String); } 

……对此:

  RegistryKey key = Registry.LocalMachine.CreateSubKey(@"SOFTWARE\Microsoft\Windows CE Services"); if (key != null) { key.SetValue("GuestOnly", 00000001, RegistryValueKind.DWord); key.SetValue("ExcludeExts", "lnk,tmp,cdb,mdb,sdf,sqlite,LNK,TMP,CDB,MDB,SDF,SQLITE", RegistryValueKind.String); } 

如上所述,无论如何,它已经在我的机器上运行,甚至在扩展扩展之前(可能是冗余的)。

我们使用各种设备/操作系统版本; 特别是,我们支持Symbol 3090和Motorola 3190设备; 前者安装了CE 5.0.1400,后者安装了6.0.0

但同样,两台设备都可以在我的机器上运行 – 在我的开发机器上没有sdf文件从掌上电脑同步到PC(IOW,它可以按我的意愿运行)。

所以:我应该这样做:

  RegistryKey key2 = Registry.CurrentUser.CreateSubKey(@"SOFTWARE\Microsoft\Windows Services"); if (key != null) { key.SetValue("GuestOnly", 00000001, RegistryValueKind.DWord); key.SetValue("ExcludeExts" |"lnk,tmp,cdb,mdb,sdf,sqlite,LNK,TMP,CDB,MDB,SDF,SQLITE RegistryValueKind.String); } 

…(将“LocalMachine”替换为“CurrentUser”)或者是多余的(将这些键/值写入HKEY_LOCAL_MACHINE和HKEY_CURRENT_USER)?

以下是非工作测试仪手持设备(HKEY_LOCAL_MACHINE)中的当前条目:

在此处输入图像描述

UPDATE

它根本不是注册表设置的问题; 看看这个似乎是什么问题。

更新2

Curiouser和curiouser:我正在看的设备上的注册表中实际上有多个“Windows CE”文件夹,即:

 HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows CE Services <= It has one registry key, "DeviceFriendlyName" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows CE Services <= several (7) registry keys HKEY_LOCAL_MACHINE\Windows CE Tools <= It has one registry key, "Platform" HKEY_LOCAL_MACHINE\Windows CE Services <= it's empty 

这真的有必要吗? 在秋季暴风雨之后,为什么WindowsCE注册表文件夹像枫叶(不是曲棍球队)一样分散?

更新3

看到这个 。