digitalmars.D.learn - How to use Registry Windows ?
- medhi558 (20/20) Aug 29 2015 Hello,
- Rikki Cattermole (9/29) Aug 29 2015 Humm, try:
- medhi558 (1/1) Aug 29 2015 It doesn't always work the same error.
- Vladimir Panteleev (3/4) Aug 29 2015 Is your program running with administrator rights? Unprivileged
- medhi558 (1/1) Aug 29 2015 I just tried with administrator rights, but it doesn't work.
- Vladimir Panteleev (16/17) Aug 29 2015 You need to use a REGSAM value (e.g. KEY_ALL_ACCESS) to open the
- medhi558 (1/1) Aug 29 2015 Thank you it works.
Hello,
I can't seem to use Registry, I tried to many attraction ways but
I have every time an error "Value cannot be set".
Exemple code :
module main;
import std.stdio;
import std.windows.registry;
void main(string[] args)
{
version(Windows)
{
Key registryKey = Registry.localMachine()
.createKey("Software")
.createKey("Microsoft")
.createKey("Windows")
.createKey("CurrentVersion")
.createKey("Run");
registryKey.setValue("key", "value");
}
}
Aug 29 2015
On 29/08/15 9:14 PM, medhi558 wrote:
Hello,
I can't seem to use Registry, I tried to many attraction ways but I have
every time an error "Value cannot be set".
Exemple code :
module main;
import std.stdio;
import std.windows.registry;
void main(string[] args)
{
version(Windows)
{
Key registryKey = Registry.localMachine()
.createKey("Software")
.createKey("Microsoft")
.createKey("Windows")
.createKey("CurrentVersion")
.createKey("Run");
registryKey.setValue("key", "value");
}
}
Humm, try:
auto regKey = Registry.localMachine()
.getKey("Software")
.getKey("Microsoft")
.getKey("Windows")
.getKey("CurrentVersion")
.getKey("Run");
regKey.setValue(...);
Aug 29 2015
On Saturday, 29 August 2015 at 09:35:47 UTC, medhi558 wrote:It doesn't always work the same error.Is your program running with administrator rights? Unprivileged programs may not write to HKEY_LOCAL_MACHINE by default.
Aug 29 2015
I just tried with administrator rights, but it doesn't work.
Aug 29 2015
On Saturday, 29 August 2015 at 09:44:06 UTC, medhi558 wrote:I just tried with administrator rights, but it doesn't work.You need to use a REGSAM value (e.g. KEY_ALL_ACCESS) to open the key with write access: /////////////////// test.d /////////////////// import std.windows.registry; void main() { auto regKey = Registry.currentUser() .getKey("Software") .getKey("Microsoft") .getKey("Windows") .getKey("CurrentVersion") .getKey("Run", REGSAM.KEY_ALL_ACCESS); regKey.setValue("Calculator", "calc.exe"); } //////////////////////////////////////////////
Aug 29 2015









Rikki Cattermole <alphaglosined gmail.com> 