From: nomennescio Date: Tue, 12 Jul 2022 19:20:14 +0000 (+0200) Subject: Add query-register to read key values X-Git-Tag: 0.99~1038 X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=commitdiff_plain;h=6a4e6bf676f8330ae70728c0b9a6eec70129751b Add query-register to read key values --- diff --git a/basis/windows/registry/registry.factor b/basis/windows/registry/registry.factor index 8bb4d6d26e..516ce54eb3 100644 --- a/basis/windows/registry/registry.factor +++ b/basis/windows/registry/registry.factor @@ -218,3 +218,10 @@ TUPLE: registry-enum-key ; [ hkey value-name type DWORD deref ] dip dup length set-reg-key ] with-open-registry-key ; + +:: query-registry ( key subkey value-name -- value ) + key subkey KEY_READ [ + value-name f 0 DWORD dup :> ptype MAX_PATH reg-query-value-ex + ptype DWORD deref dup :> type ${ REG_SZ REG_EXPAND_SZ REG_MULTI_SZ } in? + [ utf16n decode type REG_MULTI_SZ = [ "\0" split 2 ] [ 1 ] if head* ] when + ] with-open-registry-key ;