1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Registry as file system

Discussion in 'Support' started by fpefpe, Jun 17, 2010.

  1. fpefpe

    Joined:
    Oct 18, 2008
    Messages:
    238
    Likes Received:
    1
    Hello -

    Was it every suggested that TCC adds support for the Registry as a file system?

    /Frank
     
  2. vefatica

    Joined:
    May 20, 2008
    Messages:
    7,785
    Likes Received:
    29
    On Thu, 17 Jun 2010 13:30:49 -0400, fpefpe <> wrote:

    |Was it every suggested that TCC adds support for the Registry as a file system?

    It was discussed a long time ago. There's a perfect analogy:

    hive - drive
    key - directory
    subkey - subdirectory
    value - file
    data - file contents

    I'm sure it would be **a lot** of work which probably wouldn't be justified by
    the payoff.
    --
    - Vince
     
  3. rconn

    rconn Administrator
    Staff Member

    Joined:
    May 14, 2008
    Messages:
    9,730
    Likes Received:
    80
    It was suggested, but nobody's been able to come up with a real-world need
    for it (other than "it would be cool").

    Rex Conn
    JP Software
     
  4. vefatica

    Joined:
    May 20, 2008
    Messages:
    7,785
    Likes Received:
    29
    On Thu, 17 Jun 2010 13:56:02 -0400, rconn <> wrote:

    |---Quote---
    |> Was it every suggested that TCC adds support for the Registry as a file
    |> system?
    |---End Quote---
    |It was suggested, but nobody's been able to come up with a real-world need
    |for it (other than "it would be cool").

    It **would** be really cool.

    A very crude approximation could be done with a plugin, but it couldn't be
    integrated with TCC. This (below) wouldn't be too hard. But I'm disinclined to
    do it because it would just be an exercise in being cool (and it wouldn't be all
    that cool).

    REGENTER hive - open a hive
    REGHIVE hive - change hive
    REGCD key - enter a key (up/down only)
    REGDIR - list subkeys/valuenmes_and_types (current key only)
    REGTYPE value - show data in reg value (current key)

    Try to make it just a little more like navigating a file system (REGCD anywhere,
    REGDIR anykey, REGTYPE any value) and the work necessary skyrockets.

    However, it seems that a REGENUM command could be useful (and easy). Together
    with what TCC already makes available it might help the user (who was so
    compelled) to create a collection of aliases, variables and user-defined
    functions (maybe batch files) to roam around the registry.

    Simply, it might be:

    REGENUM hive[\key\subkey\...] - give a dir-like listing of subkeys (with mod
    times) and values (with types).
    --
    - Vince
     
  5. samintz

    samintz Scott Mintz

    Joined:
    May 20, 2008
    Messages:
    1,177
    Likes Received:
    11
    Type REG QUERY /? at a command prompt. I think all that you desire is
    built-in to that utility. With the exception of modification times. I
    didn't know that information was even available.

    REG is built-in to all versions of Windows.

    -SAM



    vefatica <> wrote on 06/17/2010 02:37:52 PM:


    file

    need

    be

    Together

    mod

     
  6. vefatica

    Joined:
    May 20, 2008
    Messages:
    7,785
    Likes Received:
    29
    On Thu, 17 Jun 2010 15:17:29 -0400, samintz <> wrote:

    |Type REG QUERY /? at a command prompt. I think all that you desire is
    |built-in to that utility. With the exception of modification times. I
    |didn't know that information was even available.
    |
    |REG is built-in to all versions of Windows.

    I haven't used REG.EXE in a long time, but I don't think it will give key times
    (at all) or a list of a specified key's subkeys and values. And I seem to
    remember having to get it from a resource CD (maybe NT4).
    --
    - Vince
     
  7. Charles Dye

    Charles Dye Super Moderator
    Staff Member

    Joined:
    May 20, 2008
    Messages:
    3,277
    Likes Received:
    38
    Or perhaps @REGFINDFIRST / @REGFINDNEXT / @REGCLOSE, modeled on @FINDFIRST et al.
     
  8. TEA-Time

    Joined:
    Jun 2, 2008
    Messages:
    282
    Likes Received:
    1
    As an aside, I was first made aware of that information being available when I discovered the *very nice* GUI registry editor called Registry Workshop. It has an undo function for those who like to whack things, but you can get them back if needed. And you can even browse down into normally inaccessible secured registry keys.

    http://www.torchsoft.com/en/rw_information.html
     
  9. Jim Cook

    Joined:
    May 20, 2008
    Messages:
    605
    Likes Received:
    0
    I've used that sort of feature in perl, but would have used other methods if
    they were as simple.

    On Thu, Jun 17, 2010 at 10:55 AM, rconn <> wrote:




    --
    Jim Cook
    2010 Sundays: 4/4, 6/6, 8/8, 10/10, 12/12 and 5/9, 9/5, 7/11, 11/7.
    Next year they're Monday.
     
  10. Joe Caverly

    Joined:
    Aug 28, 2009
    Messages:
    638
    Likes Received:
    6
  11. Joe Caverly

    Joined:
    Aug 28, 2009
    Messages:
    638
    Likes Received:
    6
    PS C:\utils> set-location HKCU:
    PS HKCU:\> dir


    Hive: Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER

    SKC VC Name Property
    --- -- ---- --------
    2 0 AppEvents {}
    0 32 Console {ColorTable00, ColorTable01, ColorTable02, ColorTable03...}
    25 1 Control Panel {Opened}
    0 4 Environment {PATH, TEMP, TMP, jlc}
    1 6 Identities {Identity Ordinal, Migrated5, Last Username, Last User ID...}
    4 0 Keyboard Layout {}
    2 0 Network {}
    4 1 Printers {DeviceOld}
    128 1 Software {(default)}
    1 0 SYSTEM {}
    2 0 Toolbar {}
    0 0 UNICODE Program Groups {}
    2 0 Windows 3.1 Migration Status {}
    0 1 SessionInformation {ProgramCount}
    0 7 Volatile Environment {LOGONSERVER, CLIENTNAME, SESSIONNAME, APPDATA...}

    PS HKCU:\> cd "Control Panel"
    PS HKCU:\Control Panel> dir


    Hive: Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Control Panel

    SKC VC Name Property
    --- -- ---- --------
    11 0 Accessibility {}
    2 3 Appearance {Current, NewCurrent, CustomColors}
    1 2 Bluetooth {LastRadioArrival, Notification Area Icon}
    0 31 Colors {ActiveBorder, ActiveTitle, AppWorkSpace, Background...}
    0 1 Current {Color Schemes}
    0 2 Cursors {(default), Scheme Source}
    0 16 Custom Colors {ColorA, ColorB, ColorC, ColorD...}
    1 38 Desktop {ActiveWndTrkTimeout, AutoEndTasks, CaretWidth, CoolSwitch...}
    0 2 don't load {ncpa.cpl, odbccp32.cpl}
    1 1 Input Method {Show Status}
    1 37 International {iCountry, iCurrDigits, iCurrency, iDate...}
    0 1 IOProcs {MVB}
    0 3 Keyboard {InitialKeyboardIndicators, KeyboardDelay, KeyboardSpeed}
    1 0 Microsoft Input Devices {}
    0 1 MMCPL {mlcfg32.cpl}
    0 13 Mouse {ActiveWindowTracking, DoubleClickHeight, DoubleClickSpeed, DoubleClickWidth...}
    0 14 Patterns {(None), 50% Gray, Boxes, Critters...}
    2 1 PowerCfg {CurrentPowerPolicy}
    0 0 Screen Saver.3DFlyingObj {}
    0 0 Screen Saver.3DPipes {}
    0 0 Screen Saver.Bezier {}
    0 8 Screen Saver.Marquee {BackgroundColor, CharSet, Font, Mode...}
    0 11 Screen Saver.Mystify {Active1, Active2, Clear Screen, EndColor1...}
    0 2 Screen Saver.Stars {Density, WarpSpeed}
    0 2 Sound {Beep, ExtendedSounds}

     
  12. samintz

    samintz Scott Mintz

    Joined:
    May 20, 2008
    Messages:
    1,177
    Likes Received:
    11
    Rex,

    Perhaps adding hooks into the plugin system so plugin developer's could
    add their own pseudo-devices would be possible.

    So I could create a REG: pseudo-device that would operate akin to the FTP:
    pseudo-device you have in place already. I believe I asked for something
    like that in the past.

    -Scott
     
  13. rconn

    rconn Administrator
    Staff Member

    Joined:
    May 14, 2008
    Messages:
    9,730
    Likes Received:
    80
    Not even remotely doable. Each command that uses a pseudo-device (like FTP:
    or CLIP:) has to have its own interface code.

    Rex Conn
    JP Software
     
  14. vefatica

    Joined:
    May 20, 2008
    Messages:
    7,785
    Likes Received:
    29
    On Thu, 17 Jun 2010 17:47:41 -0400, Joe Caverly <> wrote:

    |Hi,
    | This feature is available in Windows Powershell. For an example, visit (http://powershell.com/cs/blogs/ebook/archive/2009/03/30/chapter-16-the-registry.aspx)
    |
    | I usually just have PowerShell open in a tab when I need to use features that TCC does not presently have.

    As I recall, with PS you can navigate many things as if they were directory
    trees (WMI trees is another example, I think)... even have the current
    "location" appear in the prompt. The whole thing might be WMI based.
    --
    - Vince
     
  15. vefatica

    Joined:
    May 20, 2008
    Messages:
    7,785
    Likes Received:
    29
    This (below) was easy enough. Is it of any value? Are there any suggestions?

    g:\projects\4sysutils\release> regenum hkcu\console
    2010-05-16 22:06:59 [KEY] d:_tc11_tcc.exe
    2010-05-09 14:38:37 [KEY] D:_TC12_tcc.exe
    2009-08-14 00:27:09 [KEY] D:_tcmd10_tcc.exe
    2008-12-17 00:48:14 [KEY] D:_tcmd9_tcc.exe
    2500-08-07 00:42:10 [KEY] S:_cmd.exe
    2009-08-14 00:26:36 [KEY] Shortcut to tcc.exe
    [DWORD] ColorTable00
    [DWORD] ColorTable01
    [DWORD] ColorTable02
    [DWORD] ColorTable03
    [DWORD] ColorTable04
    [DWORD] ColorTable05
    [DWORD] ColorTable06
    [DWORD] ColorTable07
    [DWORD] ColorTable08
    [DWORD] ColorTable09
    [DWORD] ColorTable10
    [DWORD] ColorTable11
    [DWORD] ColorTable12
    [DWORD] ColorTable13
    [DWORD] ColorTable14
    [DWORD] ColorTable15
    [DWORD] CursorSize
    [SZ] FaceName
    [DWORD] FontFamily
    [DWORD] FontSize
    [DWORD] FontWeight
    [DWORD] FullScreen
    [DWORD] HistoryBufferSize
    [DWORD] InsertMode
    [DWORD] LoadConIme
    [DWORD] NumberOfHistoryBuffers
    [DWORD] PopupColors
    [DWORD] QuickEdit
    [DWORD] ScreenBufferSize
    [DWORD] ScreenColors
    [DWORD] WindowSize
    [DWORD] CurrentPage
    [DWORD] CodePage
    Totals: 6 subkeys 33 values
    --
    - Vince
     
  16. fpefpe

    Joined:
    Oct 18, 2008
    Messages:
    238
    Likes Received:
    1
    Some time age I came across a cygwin alternative call kwin from att research. It contains a korn shell that has the registry mounted as a file system

    Frank
     
  17. Steve Fabian

    Joined:
    May 20, 2008
    Messages:
    3,523
    Likes Received:
    4
    ----- Original Message -----
    From: "rconn" <>
    | ---Quote---
    | > Was it every suggested that TCC adds support for the Registry as a file
    | > system?
    | ---End Quote---
    | It was suggested, but nobody's been able to come up with a real-world need
    | for it (other than "it would be cool").

    What about a drive which contains the registry from your old system, which
    you moved to a new system as an extra drive? One would really like to
    duplicate the registry entries which make the software on that drive usable,
    and likewise, prepare for the time when the current system is to be replaced
    by a newer (but not necessarily better) one.
    --
    Steve
     
  18. rconn

    rconn Administrator
    Staff Member

    Joined:
    May 14, 2008
    Messages:
    9,730
    Likes Received:
    80
    I don't see how adding a kludge to TCC could provide any functionality that
    isn't already available in a zillion registry apps (including a couple that
    are provided with Windows). It sounds like an enormous amount of work for
    something that *might* be used by one or two people (but who would have been
    better served by existing apps).

    It's back to the old argument -- would you rather have this or 200 other new
    features?

    Rex Conn
    JP Software
     
  19. rconn

    rconn Administrator
    Staff Member

    Joined:
    May 14, 2008
    Messages:
    9,730
    Likes Received:
    80
    It wouldn't be too hard for somebody to create a Windows file system driver
    to do this -- easier than trying to cram it into TCC, and it would then be
    available to everybody.

    IMO it's not an appropriate thing to put into the command processor.

    Rex Conn
    JP Software
     
  20. Joe Caverly

    Joined:
    Aug 28, 2009
    Messages:
    638
    Likes Received:
    6
    Hi,
    The Registry is but one of several "Providers". The following are a list of Providers in Powershell;

    PS C:\utils> get-psprovider

    Name Capabilities Drives
    ---- ------------ ------
    Alias ShouldProcess {Alias}
    Environment ShouldProcess {Env}
    FileSystem Filter, ShouldProcess {C, A, D, G...}
    Function ShouldProcess {Function}
    Registry ShouldProcess {HKLM, HKCU}
    Variable ShouldProcess {Variable}
    Certificate ShouldProcess {cert}

    One can also build their own Provider (http://msdn.microsoft.com/en-us/library/ee126186(VS.85).aspx)

    Joe
     
  21. w_krieger

    Joined:
    Nov 2, 2008
    Messages:
    170
    Likes Received:
    0
    I've been toying with a rexx script that would work the registry from a script file, with commands along the line of

    • REGCD change cd
    • REGSUBST name: base:\dir
    • DWORD create a dword
    • EXPANDSZ create an expand string
    • SZ create a string
    • HIVELOAD location file
    • HIVESAVE location
    • EXTRACT write a reg dir to file

    The idea being that ye could load different tables of REGSUBST to point to different locations (such as editing an off-line registry)

    Still, there is regcmd in reactos that does pretty much like cmd does to the command file.

    I never really saw the point of making registry into a general purpose file system, though. TotalCommander does come with a registry plugin for the fs.
     

Share This Page