TIP #362 Version 1.1: Simple 32 and 64 bit Registry Support

This is not necessarily the current version of this TIP.


TIP:362
Title:Simple 32 and 64 bit Registry Support
Version:$Revision: 1.1 $
Author:Damon Courtney <damon at tclhome dot com>
State:Draft
Type:Project
Tcl-Version:8.6
Vote:Pending
Created:Monday, 01 March 2010
Keywords:Windows, Tcl

Abstract

Add new options to the registry command on Windows to allow it to specify that the action should be taken specifically on the 32 or 64 bit registry.

Rationale

When Microsoft created a 64 bit version of Windows they had this idea of separating certain areas of the registry into a new node for 32 bit programs to access. The idea was that 64 bit programs would use the standard keys while 32 bit programs living in the 64 bit world would have their registry access shuffled off to a separate node behind their backs. By default, a 32 bit program will get the 32 bit registry node and a 64 bit program will get the 64 bit nodes, and in Tcl, this is what we're currently left to. It is possible to specify which registry you want to use through flags to the various registry commands, Tcl's registry command just doesn't know anything about them currently.

Specification

The registry command will receive two new (mutually exclusive) options to specify that the given registry command should be executed against the 32 bit or 64 bit registry. The proposed implementation is the addition of a -32bit and a -64bit option like so:

registry subcommand ?-32bit | -64bit? ?options?

By default, no option will mean that the registry command does what it has always done, which is to operate on the registry that matches the current compiled version of the running Tcl. Specifying -32bit means to operate on the 32 bit registry regardless of the current binary, and -64bit means to operate on the 64 bit registry. The options will be supported by all subcommands of registry.

Reference Implementation

See Patch #2960976 at SourceForge [1].

Copyright

This document has been placed in the public domain.


Powered by TclThis is not necessarily the current version of this TIP.

TIP AutoGenerator - written by Donal K. Fellows