Why do Windows registry hives appear empty?Folder shortcut created on Windows 7 behaving oddly on XP and 2003Is it possible to open a file with different programs from explorer and from shell?Grant Admin rights to an entire registry Hive?System32 folder is emptyWhy do different programs show different contents of c:windowssystem32How do I fix my Windows 10 PC to normal condition after using a registry cleaner without backing upTrying to fix Windows 7 PC after deleting a registry key for a class experimentAttempted to restore registry from WindowsSystem32ConfigRegBackup with xcopy. Got Share Violation errorWindows 10 adds ---open-url to registry value for default program open commandHow to fix Windows 10 Registry With bootable Install USB?
Why is Na5 not played in this line of the French Defense, Advance Variation?
The usage of kelvin in formulas
Ability To Change Root User Password (Vulnerability?)
Getting UPS Power from One Room to Another
Is it possible to have 2 different but equal size real number sets that have the same mean and standard deviation?
Please figure out this Pan digital Prince
Write a function that checks if a string starts with or contains something
How can I remove material from this wood beam?
Was Self-modifying-code possible just using BASIC?
Proving that a Russian cryptographic standard is too structured
The origin of the Russian proverb about two hares
Does putting salt first make it easier for attacker to bruteforce the hash?
Increase speed altering column on large table to NON NULL
Amplitude of a crest and trough in a sound wave?
If there's something that implicates the president why is there then a national security issue? (John Dowd)
Live action TV show where High school Kids go into the virtual world and have to clear levels
bash vs. zsh: What are the practical differences?
What would prevent chimeras from reproducing with each other?
Rail-to-rail op-amp only reaches 90% of VCC, works sometimes, not everytime
Is there a set of positive integers of density 1 which contains no infinite arithmetic progression?
Why am I getting a strange double quote (“) in Open Office instead of the ordinary one (")?
Is Lambda Calculus purely syntactic?
How can powerful telekinesis avoid violating Newton's 3rd Law?
C++ logging library
Why do Windows registry hives appear empty?
Folder shortcut created on Windows 7 behaving oddly on XP and 2003Is it possible to open a file with different programs from explorer and from shell?Grant Admin rights to an entire registry Hive?System32 folder is emptyWhy do different programs show different contents of c:windowssystem32How do I fix my Windows 10 PC to normal condition after using a registry cleaner without backing upTrying to fix Windows 7 PC after deleting a registry key for a class experimentAttempted to restore registry from WindowsSystem32ConfigRegBackup with xcopy. Got Share Violation errorWindows 10 adds ---open-url to registry value for default program open commandHow to fix Windows 10 Registry With bootable Install USB?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I went into "C:WindowsSystem32config"
on my Windows 10 machine, and tried to open the registry hive files.
SOFTWARE
, for example, has a size of exactly 128 MB as reported by Explorer, but when opening it with Visual Studio Code, it is shown as empty. Notepad refuses to open it because it is "used by another process". I get the same results for the other files (SYSTEM
, SECURITY
, etc.).
Is Windows trying to prevent me from doing something stupid? Are these files special in some way (besides hosting the registry)?
windows windows-registry
add a comment |
I went into "C:WindowsSystem32config"
on my Windows 10 machine, and tried to open the registry hive files.
SOFTWARE
, for example, has a size of exactly 128 MB as reported by Explorer, but when opening it with Visual Studio Code, it is shown as empty. Notepad refuses to open it because it is "used by another process". I get the same results for the other files (SYSTEM
, SECURITY
, etc.).
Is Windows trying to prevent me from doing something stupid? Are these files special in some way (besides hosting the registry)?
windows windows-registry
2
Of course they are special - they are the heart of Windows.
– harrymc
May 25 at 17:51
@harrymc: So is ntoskrnl.exe, but that opens up in Notepad just fine.
– grawity
May 25 at 18:43
1
@grawity: Are you looking for homogeneity in Windows permissions?
– harrymc
May 25 at 19:16
@harrymc: You did say "of course they're special" as if it should be obvious to the reader, so of course I am.
– grawity
May 26 at 10:03
@grawity: You are destined to be disappointed.
– harrymc
May 26 at 10:27
add a comment |
I went into "C:WindowsSystem32config"
on my Windows 10 machine, and tried to open the registry hive files.
SOFTWARE
, for example, has a size of exactly 128 MB as reported by Explorer, but when opening it with Visual Studio Code, it is shown as empty. Notepad refuses to open it because it is "used by another process". I get the same results for the other files (SYSTEM
, SECURITY
, etc.).
Is Windows trying to prevent me from doing something stupid? Are these files special in some way (besides hosting the registry)?
windows windows-registry
I went into "C:WindowsSystem32config"
on my Windows 10 machine, and tried to open the registry hive files.
SOFTWARE
, for example, has a size of exactly 128 MB as reported by Explorer, but when opening it with Visual Studio Code, it is shown as empty. Notepad refuses to open it because it is "used by another process". I get the same results for the other files (SYSTEM
, SECURITY
, etc.).
Is Windows trying to prevent me from doing something stupid? Are these files special in some way (besides hosting the registry)?
windows windows-registry
windows windows-registry
asked May 25 at 17:44
ArnoArno
5463624
5463624
2
Of course they are special - they are the heart of Windows.
– harrymc
May 25 at 17:51
@harrymc: So is ntoskrnl.exe, but that opens up in Notepad just fine.
– grawity
May 25 at 18:43
1
@grawity: Are you looking for homogeneity in Windows permissions?
– harrymc
May 25 at 19:16
@harrymc: You did say "of course they're special" as if it should be obvious to the reader, so of course I am.
– grawity
May 26 at 10:03
@grawity: You are destined to be disappointed.
– harrymc
May 26 at 10:27
add a comment |
2
Of course they are special - they are the heart of Windows.
– harrymc
May 25 at 17:51
@harrymc: So is ntoskrnl.exe, but that opens up in Notepad just fine.
– grawity
May 25 at 18:43
1
@grawity: Are you looking for homogeneity in Windows permissions?
– harrymc
May 25 at 19:16
@harrymc: You did say "of course they're special" as if it should be obvious to the reader, so of course I am.
– grawity
May 26 at 10:03
@grawity: You are destined to be disappointed.
– harrymc
May 26 at 10:27
2
2
Of course they are special - they are the heart of Windows.
– harrymc
May 25 at 17:51
Of course they are special - they are the heart of Windows.
– harrymc
May 25 at 17:51
@harrymc: So is ntoskrnl.exe, but that opens up in Notepad just fine.
– grawity
May 25 at 18:43
@harrymc: So is ntoskrnl.exe, but that opens up in Notepad just fine.
– grawity
May 25 at 18:43
1
1
@grawity: Are you looking for homogeneity in Windows permissions?
– harrymc
May 25 at 19:16
@grawity: Are you looking for homogeneity in Windows permissions?
– harrymc
May 25 at 19:16
@harrymc: You did say "of course they're special" as if it should be obvious to the reader, so of course I am.
– grawity
May 26 at 10:03
@harrymc: You did say "of course they're special" as if it should be obvious to the reader, so of course I am.
– grawity
May 26 at 10:03
@grawity: You are destined to be disappointed.
– harrymc
May 26 at 10:27
@grawity: You are destined to be disappointed.
– harrymc
May 26 at 10:27
add a comment |
1 Answer
1
active
oldest
votes
They appear as empty because Visual Studio Code doesn't understand the concept of not being able to open the file. They're not actually empty, vscode is just literally unable to know whether they are or not.
Windows has the concept of "exclusive open" (aka "share modes", elsewhere also called "mandatory locking"). It is commonly used by database software to prevent another program from writing data at the same time as the database engine is managing it; if two handlers tried to write at once, they could end up corrupting the entire database. The same applies to filesystems – Windows doesn't actually let you access the raw disk device if it is mounted as a filesystem.
(That said, there are database formats specifically made for simultaneous access, such as LMDB.)
But the primary reason Windows Registry uses exclusive open is for security enforcement. Each Registry key can have a set of permissions (DACL/SACL) attached to it, just like a file or folder. If you could directly open a registry hive (especially the system or security hives), you could simply read the data that was supposed to be secured via permissions.
1
Blocking other readers is potentially useful for a database that doesn't want other readers to see some of the file from before a transaction, some of the file from after a write, and even some bytes from the file during a supposedly atomic transaction. It's certainly inconvenient for use-cases where you don't care about getting a clean snapshot of the whole file, though.
– Peter Cordes
May 26 at 2:36
"vscode is just literally unable to know whether they are or not" — this looks like a limitation in VSC implementation, not something imposed by the FS or OS. Explorer, for one, was able to determine the size, as noted in the OP. If a file's size is nonzero, the file is obviously not empty.
– Ruslan
May 26 at 8:33
Yes, all programs receive the same error codes when trying to open a locked file... VSC just ignores it. What I was trying to say is VSC's "core" ignores the error and the "frontend" doesn't receive the information.
– grawity
May 26 at 10:00
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "3"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1441177%2fwhy-do-windows-registry-hives-appear-empty%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
They appear as empty because Visual Studio Code doesn't understand the concept of not being able to open the file. They're not actually empty, vscode is just literally unable to know whether they are or not.
Windows has the concept of "exclusive open" (aka "share modes", elsewhere also called "mandatory locking"). It is commonly used by database software to prevent another program from writing data at the same time as the database engine is managing it; if two handlers tried to write at once, they could end up corrupting the entire database. The same applies to filesystems – Windows doesn't actually let you access the raw disk device if it is mounted as a filesystem.
(That said, there are database formats specifically made for simultaneous access, such as LMDB.)
But the primary reason Windows Registry uses exclusive open is for security enforcement. Each Registry key can have a set of permissions (DACL/SACL) attached to it, just like a file or folder. If you could directly open a registry hive (especially the system or security hives), you could simply read the data that was supposed to be secured via permissions.
1
Blocking other readers is potentially useful for a database that doesn't want other readers to see some of the file from before a transaction, some of the file from after a write, and even some bytes from the file during a supposedly atomic transaction. It's certainly inconvenient for use-cases where you don't care about getting a clean snapshot of the whole file, though.
– Peter Cordes
May 26 at 2:36
"vscode is just literally unable to know whether they are or not" — this looks like a limitation in VSC implementation, not something imposed by the FS or OS. Explorer, for one, was able to determine the size, as noted in the OP. If a file's size is nonzero, the file is obviously not empty.
– Ruslan
May 26 at 8:33
Yes, all programs receive the same error codes when trying to open a locked file... VSC just ignores it. What I was trying to say is VSC's "core" ignores the error and the "frontend" doesn't receive the information.
– grawity
May 26 at 10:00
add a comment |
They appear as empty because Visual Studio Code doesn't understand the concept of not being able to open the file. They're not actually empty, vscode is just literally unable to know whether they are or not.
Windows has the concept of "exclusive open" (aka "share modes", elsewhere also called "mandatory locking"). It is commonly used by database software to prevent another program from writing data at the same time as the database engine is managing it; if two handlers tried to write at once, they could end up corrupting the entire database. The same applies to filesystems – Windows doesn't actually let you access the raw disk device if it is mounted as a filesystem.
(That said, there are database formats specifically made for simultaneous access, such as LMDB.)
But the primary reason Windows Registry uses exclusive open is for security enforcement. Each Registry key can have a set of permissions (DACL/SACL) attached to it, just like a file or folder. If you could directly open a registry hive (especially the system or security hives), you could simply read the data that was supposed to be secured via permissions.
1
Blocking other readers is potentially useful for a database that doesn't want other readers to see some of the file from before a transaction, some of the file from after a write, and even some bytes from the file during a supposedly atomic transaction. It's certainly inconvenient for use-cases where you don't care about getting a clean snapshot of the whole file, though.
– Peter Cordes
May 26 at 2:36
"vscode is just literally unable to know whether they are or not" — this looks like a limitation in VSC implementation, not something imposed by the FS or OS. Explorer, for one, was able to determine the size, as noted in the OP. If a file's size is nonzero, the file is obviously not empty.
– Ruslan
May 26 at 8:33
Yes, all programs receive the same error codes when trying to open a locked file... VSC just ignores it. What I was trying to say is VSC's "core" ignores the error and the "frontend" doesn't receive the information.
– grawity
May 26 at 10:00
add a comment |
They appear as empty because Visual Studio Code doesn't understand the concept of not being able to open the file. They're not actually empty, vscode is just literally unable to know whether they are or not.
Windows has the concept of "exclusive open" (aka "share modes", elsewhere also called "mandatory locking"). It is commonly used by database software to prevent another program from writing data at the same time as the database engine is managing it; if two handlers tried to write at once, they could end up corrupting the entire database. The same applies to filesystems – Windows doesn't actually let you access the raw disk device if it is mounted as a filesystem.
(That said, there are database formats specifically made for simultaneous access, such as LMDB.)
But the primary reason Windows Registry uses exclusive open is for security enforcement. Each Registry key can have a set of permissions (DACL/SACL) attached to it, just like a file or folder. If you could directly open a registry hive (especially the system or security hives), you could simply read the data that was supposed to be secured via permissions.
They appear as empty because Visual Studio Code doesn't understand the concept of not being able to open the file. They're not actually empty, vscode is just literally unable to know whether they are or not.
Windows has the concept of "exclusive open" (aka "share modes", elsewhere also called "mandatory locking"). It is commonly used by database software to prevent another program from writing data at the same time as the database engine is managing it; if two handlers tried to write at once, they could end up corrupting the entire database. The same applies to filesystems – Windows doesn't actually let you access the raw disk device if it is mounted as a filesystem.
(That said, there are database formats specifically made for simultaneous access, such as LMDB.)
But the primary reason Windows Registry uses exclusive open is for security enforcement. Each Registry key can have a set of permissions (DACL/SACL) attached to it, just like a file or folder. If you could directly open a registry hive (especially the system or security hives), you could simply read the data that was supposed to be secured via permissions.
edited May 25 at 18:18
answered May 25 at 17:58
grawitygrawity
251k38527591
251k38527591
1
Blocking other readers is potentially useful for a database that doesn't want other readers to see some of the file from before a transaction, some of the file from after a write, and even some bytes from the file during a supposedly atomic transaction. It's certainly inconvenient for use-cases where you don't care about getting a clean snapshot of the whole file, though.
– Peter Cordes
May 26 at 2:36
"vscode is just literally unable to know whether they are or not" — this looks like a limitation in VSC implementation, not something imposed by the FS or OS. Explorer, for one, was able to determine the size, as noted in the OP. If a file's size is nonzero, the file is obviously not empty.
– Ruslan
May 26 at 8:33
Yes, all programs receive the same error codes when trying to open a locked file... VSC just ignores it. What I was trying to say is VSC's "core" ignores the error and the "frontend" doesn't receive the information.
– grawity
May 26 at 10:00
add a comment |
1
Blocking other readers is potentially useful for a database that doesn't want other readers to see some of the file from before a transaction, some of the file from after a write, and even some bytes from the file during a supposedly atomic transaction. It's certainly inconvenient for use-cases where you don't care about getting a clean snapshot of the whole file, though.
– Peter Cordes
May 26 at 2:36
"vscode is just literally unable to know whether they are or not" — this looks like a limitation in VSC implementation, not something imposed by the FS or OS. Explorer, for one, was able to determine the size, as noted in the OP. If a file's size is nonzero, the file is obviously not empty.
– Ruslan
May 26 at 8:33
Yes, all programs receive the same error codes when trying to open a locked file... VSC just ignores it. What I was trying to say is VSC's "core" ignores the error and the "frontend" doesn't receive the information.
– grawity
May 26 at 10:00
1
1
Blocking other readers is potentially useful for a database that doesn't want other readers to see some of the file from before a transaction, some of the file from after a write, and even some bytes from the file during a supposedly atomic transaction. It's certainly inconvenient for use-cases where you don't care about getting a clean snapshot of the whole file, though.
– Peter Cordes
May 26 at 2:36
Blocking other readers is potentially useful for a database that doesn't want other readers to see some of the file from before a transaction, some of the file from after a write, and even some bytes from the file during a supposedly atomic transaction. It's certainly inconvenient for use-cases where you don't care about getting a clean snapshot of the whole file, though.
– Peter Cordes
May 26 at 2:36
"vscode is just literally unable to know whether they are or not" — this looks like a limitation in VSC implementation, not something imposed by the FS or OS. Explorer, for one, was able to determine the size, as noted in the OP. If a file's size is nonzero, the file is obviously not empty.
– Ruslan
May 26 at 8:33
"vscode is just literally unable to know whether they are or not" — this looks like a limitation in VSC implementation, not something imposed by the FS or OS. Explorer, for one, was able to determine the size, as noted in the OP. If a file's size is nonzero, the file is obviously not empty.
– Ruslan
May 26 at 8:33
Yes, all programs receive the same error codes when trying to open a locked file... VSC just ignores it. What I was trying to say is VSC's "core" ignores the error and the "frontend" doesn't receive the information.
– grawity
May 26 at 10:00
Yes, all programs receive the same error codes when trying to open a locked file... VSC just ignores it. What I was trying to say is VSC's "core" ignores the error and the "frontend" doesn't receive the information.
– grawity
May 26 at 10:00
add a comment |
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1441177%2fwhy-do-windows-registry-hives-appear-empty%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
Of course they are special - they are the heart of Windows.
– harrymc
May 25 at 17:51
@harrymc: So is ntoskrnl.exe, but that opens up in Notepad just fine.
– grawity
May 25 at 18:43
1
@grawity: Are you looking for homogeneity in Windows permissions?
– harrymc
May 25 at 19:16
@harrymc: You did say "of course they're special" as if it should be obvious to the reader, so of course I am.
– grawity
May 26 at 10:03
@grawity: You are destined to be disappointed.
– harrymc
May 26 at 10:27