如何以编程方式更改BDE'INIT'设置

时间:2016-09-12 14:24:32

标签: registry bde

在Inno设置中,我将SHAREDMEMLOCATION和SHAREDMEMSIZE设置为BDE的注册表项

; BDE Memory Hacks
Root:HKLM; Subkey: "SOFTWARE\Wow6432Node\Borland\Database Engine\Settings\SYSTEM\INIT"; ValueType: string; ValueName: "SHAREDMEMLOCATION"; ValueData: "0x5000";
Root:HKLM; Subkey: "SOFTWARE\Wow6432Node\Borland\Database Engine\Settings\SYSTEM\INIT"; ValueType: string; ValueName: "SHAREDMEMSIZE"; ValueData: "4096";

我假设有一些我不知道BDE如何工作或Windows注册表如何工作的东西。我已经找到了一些我应该通过BDE api做BDE的信息,但我似乎找不到很多信息/库来做这件事。

1 个答案:

答案 0 :(得分:0)

非虚拟化注册表中SHAREDMEMLOCATION和SHAREDMEMSIZE注册表值的位置应为 HKEY_LOCAL_MACHINE\SOFTWARE\Borland\Database Engine\Settings\SYSTEM\INIT

如果您删除" Wow6432Node"您的InnoSetup脚本是否有效?一部分?

请参阅 Inno-Setup doesn't allow access to all registry keys, why?

和#34;注册表虚拟化"在MSDN上https://msdn.microsoft.com/en-us/library/windows/desktop/aa965884(v=vs.85).aspx

您应该可以从BDE应用程序设置注册表值,如果启用了UAC,设置只会转到Wow6432Node。