Display/treat regular folder as My Computer

I'm in the process of connecting ~70 hard drives to my server (win 7). To avoid the 26 drives with letters windows limitation, I'm mounting the drives to the folders. I have a folder D:\Drives, which contains all the mounted drives. What I would like to do, is to display/treat that D:\Drives folder as Computer. Lemme explain:

This is how that folder looks like now (details view). Also, notice how Size is displayed approximately (hmm, why?):

This is how I would like to it look (Computer (details view)). Size is displayed properly:

Computer view has 2 most important columns - Free Space and Percent Full

These columns are missing in regular folder view:

Also, Sizes are lost every time you navigate from the folder and need recalculating manually with a button, which is very annoying:

Question. Is there any way to make dopus treat and/or display the D:\Drives folder as a virtual folder like Computer? This is the first time I'm using mount points instead of regular letters for drives, and not being able to have the "My Computer" experience is a major disadvantage.

Thanks in advance for any help.

Disk size and file/folder size are two different things.

DIsk size shows how big the logical disk is.

File/folder size shows how big an individual file is, for a file, and how large all the files in a folder are, for a folder.

Mount points are folders, and the disk size column is only available in the Computer folder, so you're seeing the approximate total size of the files in each drive. It's probably approximate because Opus doesn't have permission to look in all the folders below the mount point. (e.g. Recycle Bin and System Volume Information are usually hidden folders on each logical disk that you cannot access directly.)

If you want disk size, usage and space to be shown in normal folder views, it could be done using a script which resolves the mount points to their respective devices and adds columns showing those values. (Script columns can popular bar graphs as well, so those are also still possible.)

@leo, Thank You for such a fast response.

Off course, ty. As it stands, I know that those folders are actually mounted drives, and as I want them to be treated as drives, so I kinda "forgot" that the problem actually is that they are treated as folders and the Size is shown as folder size, not drive size... :slight_smile:

I don't know JScript at all and the last time I did something in VBScript was probably ~10 years ago in Excel :slight_smile: Could you please point me to the right direction, some examples of the steps needed to do this? As I understand there would be 3 major aspects:
[ol]
[li]resolving mount points to the respective drive devices - I have no idea how to do that and couldn't find any examples[/li]
[li]getting the values for the drive - no idea, can seem to find anything pertaining a drive scripting object[/li]
[li]create custom columns - I recon, I could use this script as example to achieve that?: https://www.gpsoft.com.au/help/opus11/index.html#!Documents/Scripting/Adding_a_new_Column.htm[/li]
[li]creating a graphical "Percent Full" column - no idea[/li][/ol]

If anyone could help with writing this, it would be much appreciated. Methinks, anyone using alot of drives on winodws with mount points would like to have this.

I'd focus on 1 & 2 to start with.

It's not something I have done before myself, but a quick web search found that WMI has a way to query volume mount points, which in turn gets you the statistics for the volumes, including capacity and free space.

Ignoring Opus entirely for the time being, this VBScript code (from here) in a .vbs script should print out a list of mount points:

Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2") Set colItems = objWMIService.ExecQuery _ ("SELECT * FROM Win32_MountPoint") For Each objItem In colItems WScript.Echo "Directory: " & objItem.Directory WScript.Echo "Volume: " & objItem.Volume WScript.Echo Next

Hopefully the Directory values if prints out will match the path to your mount points. (I don't have any on my machine to try with.) If so, the WMI query can be changed to get just one specific volume for a given mount point path, something like this (may not be correct):

Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2") Set colItems = objWMIService.ExecQuery _ ("SELECT * FROM Win32_MountPoint where Directory='D:\Drives\B1_Dru1'") For Each objItem In colItems WScript.Echo "Directory: " & objItem.Directory WScript.Echo "Volume: " & objItem.Volume WScript.Echo Next

I'd expect that, or something similar, to just print one match for the B1_Dru1 drive.

objItem.Volume.FreeSpace would then get you the free space for that drive. Other values you can get from the volume are shown under Win32_Volume in the WMI docs.

Maybe that query/loop can be simplified by using "Get" instead of "ExecQuery", as in this example (which uses a drive letter, so it's not directly applicable, but shows WMI lets you get a single item via this method):

Set objWMIService = GetObject("winmgmts:") Set objLogicalDisk = objWMIService.Get("Win32_LogicalDisk.DeviceID='c:'") Wscript.Echo objLogicalDisk.FreeSpace

That's taken from this StackOverflow thread which has some other ideas, but mostly starting from a drive letter. (Found by searching for "vbscript get drive free space", which has some other info I didn't look into.)

1 Like

I wonder why that hasn't that been done already!? o)
I did that add-in now, it provides columns which display the information for a mountpoint (and other type of links) you wished for.
I also access (remotely) mounted disks to mountpoints via UNC paths regularly, so this is useful to me as hell - as well. o)

Find it here:

1 Like