Ben Goetter's unnecessarily apocalyptic weblog.

Fri, 05 May 2006

New registry glue

New in the forthcoming 1.3.2, scheduled for release in late June: registry access.

w32:reg-key root path → key
Opens a key in the registry. The root can be an object returned by another call to w32:reg-key, or one of the symbols local-machine, current-user, or classes, which correspond respectively to HKEY_LOCAL_MACHINE (HKLM), HKEY_CURRENT_USER (HKCU), and HKEY_CLASSES_ROOT (HKCR). The path is a string that uses backslashes to separate parent and child keys (e.g. "Software\\Goetter\\Pocket Scheme" in Scheme syntax). Returns a key object that can be passed to other registry routines.

w32:reg-key-add! key name
Adds a new subkey with the given name.

w32:reg-key-delete! key name
Removes the subkey with the given name.

w32:reg-key-names key → list of strings
Returns a list of the names of the subkeys of the given key.

w32:reg-value key name → value
Returns the value stored under the name in the key, or #f if no such value exists in the key. The type of the value will be a number, a string, a list of strings, or a raw vector, depending on whether the registry value contains type REG_DWORD, REG_SZ, REG_MULTI_SZ, or REG_BINARY.

w32:reg-value-names key → list of strings
Returns a list of the names of the values stored in the key.

w32:reg-value-alist key → association list
Returns an alist of every name and value stored in the key.

w32:reg-value-set! key name value
Saves the value under the given name in the key. Works like the converse of w32:reg-value, with the exception of REG_MULTI_SZ, which I lazily didn't implement.

w32:reg-value-delete! key name
Removes the value with the given name.

posted at: 12:55 | path: /pscheme | permanent link to this entry

Powered by blosxom.
Based on a true story.
Syndicate this, if you dare.
Copyright 2006, Ben Goetter. All rights reserved.