Author: dl7749
Subject: Remove NTFS Check for Junction Utility
Posted: 23 February 2018 at 4:51am
I tried the utility (version 1.07) on an ReFS file system and it said 'Junctions are only supported on NTFS volumes'.
First the message is no longer true since the introduction of ReFS.
Second From my limited knowledge, junctions are manipulated using DeviceIoControl() function with various control codes (FSCTL_*_REPARSE_POINT). The API has nothing NTFS-specific and should work with ReFS. So I concluded that it must be the utility itself that thought it wouldn't work, rather than DeviceIoControl().
I fetched the source code for an older version (version 1.04,released before Microsoft acquisition of Sysinternals). There was indeed a check on whether the file system (of the junction directory) was NTFS. I removed the check, recompiled and ran the utility, and it indeed worked on ReFS.
I suggest that a newer version of the utility be released with the NTFS check removed.
Thanks.
Subject: Remove NTFS Check for Junction Utility
Posted: 23 February 2018 at 4:51am
I tried the utility (version 1.07) on an ReFS file system and it said 'Junctions are only supported on NTFS volumes'.
First the message is no longer true since the introduction of ReFS.
Second From my limited knowledge, junctions are manipulated using DeviceIoControl() function with various control codes (FSCTL_*_REPARSE_POINT). The API has nothing NTFS-specific and should work with ReFS. So I concluded that it must be the utility itself that thought it wouldn't work, rather than DeviceIoControl().
I fetched the source code for an older version (version 1.04,released before Microsoft acquisition of Sysinternals). There was indeed a check on whether the file system (of the junction directory) was NTFS. I removed the check, recompiled and ran the utility, and it indeed worked on ReFS.
I suggest that a newer version of the utility be released with the NTFS check removed.
Thanks.