存储使用x86和x64之间共享的应用程序设置的位置

时间:2010-11-24 10:00:11

标签: 32bit-64bit registry

我们正在准备将Windows x64用于我们的安装,但我们面临着存储应用程序设置(用户和计算机)的问题。目前我们将它们存储在Windows注册表中 - HKLM和HKCU配置单元。

问题是可能存在x86应用程序和x64应用程序,x86应用程序无法访问64位注册表。我们可以将所有内容存储在32位注册表中(在x64 app中可见为wow64)。或者我们可以将设置存储在文件-sqlite或sql server压缩数据库中,以避免并发危险。

你有什么建议吗?如果是,那是什么? :)

1 个答案:

答案 0 :(得分:1)

32位应用可以访问64位注册表。请参阅REGSAM

等API的RegOpenKeyEx参数

另请注意,只有注册表的某些区域是分区的,因此您可能不必执行任何操作,具体取决于存储内容的位置。

至于你是否应该使用注册表或转移到完全不同的东西,这是一个非常开放的问题。如果您对64位以外的注册表感到满意,那么我会坚持使用它,只需使用REGSAM参数即可根据需要显式指向64位注册表。 (反之亦然,使您的64位应用程序在32位注册表中查找。)