2010-04-09 65 views
0

我从来没有使用过注册表,它似乎有点吓人,因为我对此知之甚少。如果安装了任何黑莓模拟器,我需要评估,如果发现它们,请获取它们的位置。我从注册表手动搜索并找到HKEY_LOCAL_MACHINE-> SOFTWARE-> Research In Motion - > BlackBerry Device Simulators - > 5.0.0.423 - > 9700下的条目。这里,5.0.0.423是模拟器的一个版本,9700是一个特定的设备。当设备名称(9700)点击我可以看到一些价值观,其中之一是我感兴趣的:使用Java搜索注册表

Value name=InstallDir 
Value data: C:\Program Files\Research In Motion\BlackBerry Smartphone Simulators 5.0.0\5.0.0.423 (9700)\ 

我需要使用Java,针对32位和64位Windows系统,如果任何仿真器搜索已安装,然后将其名称(如9700)及其位置(C:\ Program Files ...)保存在属性文件或其他内容中。

从我看来,它看起来像我需要使用java.util.prefs中的Preference类,但它看起来像我只能访问它的一部分注册表。我不需要写任何东西,只是读取值。你有什么建议吗?

谢谢 亚历

+1

注册表是一个Windows唯一的东西。 Java被设计为在多个OS-es上运行,所以直接访问Windows的Java注册表是不可能的。 “直接”我的意思是一些内置的Java功能。如果你只在Windows上使用它,为什么不使用C#这样的语言? – 2010-04-09 13:06:19

+0

请使用更多搜索功能: http://stackoverflow.com/questions/62289/read-write-to-windows-registry-using-java – Lajcik 2010-04-09 13:07:06

+1

我知道搜索功能,我确实看了看JNI建议。我的问题还有更多。我看到了如何搜索已知值的公开示例。我正在寻找可能存在或不存在的东西,我需要循环访问一组值。 – alex 2010-04-09 13:52:39

回答