microsoft / winfile

Original Windows File Manager (winfile) with enhancements
MIT License
6.82k stars 706 forks source link

UNC path name handling #345

Open schinagl opened 2 years ago

schinagl commented 2 years ago

Basic UNC path support

schinagl commented 2 years ago

General

Basic UNC path support. 2022_09_17_16_59_15_File_Manager

How to use

One can

Works stable

Download

UNC support is available from my private branch and 64bit binary download 32bit binary download W2K WXP binary download I called this version 10.2.0.19. This is just my internal number.

schinagl commented 1 year ago

Rebased onto 9525928

schinagl commented 1 year ago

After a 5 month test, daily use and ironing out a few glitches lets make it ready for review.

This PR is a big one I know ;-) and it it really does changes with the innner hydraulics. Surprisingly by doing a few key changes to

this really works well. Lets see if someone is brave enough to tackle with this one

malxau commented 1 year ago

Happy to look, although right now I'm not sure what I'm looking at...is there a Cliff's Notes summary of what's happening?

I could use Goto to launch a window in a UNC path. That doesn't seem to populate the drive list with a virtual drive though - how does the virtual drive logic work?

schinagl commented 1 year ago

Added two convenience commits, because during development I didn't care

64bit binary download 32bit binary download

schinagl commented 1 year ago

Any news here? I use UNC since many month and it works really well without any glitch. So how do we proceed?

schinagl commented 1 year ago

Have you tried this branch? It really works and I think it is a useful improvement

@craigwi: What do you think?

schinagl commented 1 year ago

Any news here? Review results?

craigwi commented 1 year ago

@schinagl, my suggestion is to refine this PR to avoid all reformatting unrelated to the UNC change and go with @malxau's requests on the necessary changes. It is more important to get the UNC functionality added and then have a separate discussion on formatting.

schinagl commented 1 year ago

The original PR itself has no unnecessary reformatting, but yes I had to merge @malxau reformatting and beautifying into it because otherwise there would be conflicts and it would not merge for github. ( Except for FinditemFromPath which was changed heavily and at the end reformatted)

Sure I can put my changes on top of the master once @malxau is done with his beautifying PRs, so that you see the bare changes. (I am back on my computer by begin of September)

schinagl commented 1 year ago

Rebased onto #403 aka [28971f6]

Now the UNC changes are on top of all beautfying PRs

schinagl commented 1 year ago

Any news here? Have you tried it? It is merged on top of the other changes. So what's left?

One can download binaries from here

schinagl commented 1 year ago

Finished polishing

schinagl commented 11 months ago

Any news here? Have you tried it? It is merged on top of the other changes. So what's left? @craigwi ?

One can download binaries from here

schinagl commented 11 months ago

Any news here? Have you tried it? It is merged on top of the other changes. So what's left? @craigwi ?

One can download binaries from here

craigwi commented 11 months ago

Hi @schinagl, I ran into a problem with a basic test. File.Goto Directory to a network share worked. Then running Disk.Select Drive shows two things, my C drive and the network share. That's fine.

The problem is that the items are reversed. When I select the c: drive, I get the network share and vice versa. The order in the dropdown list on the toolbar seems ok.

Next I when on my c: drive and use File.Goto Directory to the same network share, nothing happens; that is, the window doesn't change to the network share.

schinagl commented 11 months ago

Thx for looking into it

The problem is that the items are reversed. When I select the c: drive, I get the network share and vice versa. The order in the dropdown list on the toolbar seems ok.

This is odd as it works on my side, but I have many drives, network drives and 3 UNC drives Will try to reproduce Anyhow: You are using the most recent version from the branch? Does pressing F5 once after starting Winfile help? (Even if it is a bug, that you have to press F5)

Next I when on my c: drive and use File.Goto Directory to the same network share, nothing happens; that is, the window doesn't change to the network share.

Can confirm this. This wasn't a use-case on my side, but we can fix this During my daily use, I create the drive once via File.Goto and then use CTRL-ALT so select Anyhow will look into it

schinagl commented 11 months ago

Fixed 2) from above: Now one can type in a path which already had a UNC mapping and the window will be opened

Related: A limitation ever since was and will be: One can not UNC-map to a path, when it would be the parent of an already existing UNC mapping, e.g. \\foo\bar for existing UNC mapping \\foo\bar\share

schinagl commented 10 months ago

I have played a around quite a lot, use Winfile as all/every day file-manager

Unfortunatley I was not able to reproduce

How did you get there? I tried it on a clean machine, with no drives, but only C: And whatever I tried I was not able to run into the problem.

Are you sure you took the most recent version? I had a similar glitch in February 4, when sorting was enabled in the .dlg files, but it must not. But this is long gone.

Did you recompile from this very branch? You could also take a precomiled binary (10.2.0.19) from my branch 64bit binary download. Can you send me a screenshot? Or a screen capture video how you ran into this?

I am really out of ideas, since, as usual with those things, it works flawlessly on my side.

schinagl commented 10 months ago

I am leaving this Winfile Repo. See #411 You might get a Winfile with UNC support from https://github.com/schinagl/winfile/releases

dash-xd commented 3 months ago

i have had success with Disk > Connect to a network drive . is that the same thing as all this?

schinagl commented 3 months ago

No. You connected a drive.

Please go to my fork

https://github.com/schinagl/winfile/releases

Take the UNC capable winfile from there: press CTRL-G and enter a UNC path where you are already authenticated.