10

When I use Windows Explorer to browse a FTP site, it defaults to Tiles view. I need it to default to List view.

I don't see a registry setting, and the standard [Tools -> Folder Options... -> View -> Apply to Folders] apparently has no effect on FTP sites.

4
  • 1
    It seems to remember the view mode for the last few directories viewed. As you navigate around, it forgets the mode after a while, reverting back to Tiles.
    – Deanna
    Feb 25, 2015 at 11:51
  • Relevant discussion on technet: social.technet.microsoft.com/Forums/windows/en-US/… Aug 3, 2016 at 12:27
  • I can't reproduce it. Maybe because I'm using the Classic Shell Start-menu replacement with its Classic Explorer add-on to Explorer. I clicked on the Details button inside the toolbar of Classic Explorer (I customized the toolbar to contain Details).
    – harrymc
    Aug 3, 2016 at 14:27
  • 1
    @harrymc from windows 7 to 10
    – guest
    Aug 3, 2016 at 20:41

3 Answers 3

3

For the record, here is a partial workaround tested on W7 SP1 and W10 v1511.

  1. Run the batch script Reset Folder View Settings of All Folders.

  2. Import to registry:

Windows Registry Editor Version 5.00

;My Computer
[HKEY_CURRENT_USER\Software\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\ShellFolder]
"FolderType"=""

;Microsoft FTP Folder
[HKEY_CURRENT_USER\Software\Classes\CLSID\{63da6ec0-2e98-11cf-8d82-444553540000}\ShellFolder]
"FolderType"=""

[HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags\AllFolders\Shell\{00000000-0000-0000-0000-000000000000}]
"LogicalViewMode"=dword:00000001
"Mode"=dword:00000000

3a. Run explorer shell:mycomputerfolder and you should see My Computer opened in details view.

3b. Run explorer ftp://your.site.com and it should remain in details view as long as you do not press the site icon in the navigation pane (if present by Add Network Location).
You may create a shortcut with location explorer ftp://your.site.com for convenience.

References:
Windows 8 Desktop Icons in Tile View (configure LogicalViewMode for other view modes)
Configure default folder view for storage connected via MTP (this set all folder view to the same mode)

2

I wrote this to do it with Autoit: just run the script and your ftp explorer windows should be in list view when first viewed. It's not perfect yet but it has the basic functionality you want. Also requires the library I found here.

Tested on Windows 7 64-bit.

#include "Automating Windows Explorer\Includes\AutomatingWindowsExplorer.au3" ;UDF
#include <Array.au3>

Local $str = "Address: ftp" ;part of visible text in explorer control, unique to ftp, I think...
Local $CheckedWindows[5] ;Keep track of activated windows because I don't have a shell hook for window.created
Local $hExplorer

while 1
    Sleep(2000)    
    $hExplorer = WinWaitActive("[CLASS:CabinetWClass]", $str)

    If not ContainsElement($CheckedWindows,$hExplorer) then ;Only trigger on a *new* window
        setFTPview($str,$hExplorer)
        _ArrayAdd($CheckedWindows,$hExplorer)
    EndIf
    ;delete unused handles to prevent aliases or large array, but I don't know the shell hook for window.closed
    ;alternative is to periodically loop through existing windows and delete non-existing handles (todo)
WEnd

func ContainsElement($arr,$el)
    Local $Bound = UBound($arr)
    For $i=0 to ($Bound -1)
        If $arr[$i] == $el then return True
    Next
    return False
Endfunc

func setFTPview($str,$hExplorer)
    GetIShellBrowser( $hExplorer )
    If Not IsObj( $oIShellBrowser ) Then
        MsgBox( 0, "Automating Windows Explorer", "Could not get an IShellBrowser interface. Terminating." )
    Return
    EndIf
    GetShellInterfaces() ; Get other interfaces, might not be needed
    SetIconView($FVM_LIST)
    Sleep(1000)
endfunc

Addendum: you may need to change line 257 of "AutomatingWindowsExplorer.au3" from If @OSVersion "WIN_XP" Then to If @OSVersion <> "WIN_XP" Then

2
+250

How to set List view as the default FTP view in Windows Explorer?

I've come up with a simple solution to this problem using either of the two methods below that you may find helpful for your inquiry with native built-in Windows technologies.

I'm not certain if this will be the actual solution you are looking for to resolve this problem but it may be an acceptable workaround at least which you might find helpful without needing to change registry settings, use third party solutions, etc.

Essentially this uses sendkeys to send the Ctrl+Shift+6 shortcut keys to change the view to Details right after the FTP folder view opens––this however does not apply recursively so this may or may not make a difference for your particular need .


Method 1 (scalable)

This is a method that will consist of (1)creating a batch script with the below logic and (2)then creating a short that points to the batch script and then having it's argument will pass in the applicable FTP connection detail for the FTP server you'll connect to.

This one batch script you create for this method can be used for as many shortcuts as you wish to use with this method so it's a scalable solution should your need grow for more than just one FTP connection in the future.

  1. Create a Batch Script

    Create a batch script, which is just a text document file saved with a .cmd or .bat extension with the below logic in it and then save it to some path you will reference in the shortcut you create in the create shortcut section.

    @ECHO OFF
    
    %~1
    
    :VBSDynamicBuild
    SET TempVBSFile=%temp%\~tmpSendKeysTemp.vbs
    IF EXIST "%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
    ECHO Set WshShell = WScript.CreateObject("WScript.Shell") >>"%TempVBSFile%"
    ECHO Wscript.Sleep 900                                    >>"%TempVBSFile%"
    ECHO WshShell.SendKeys "^+6"                              >>"%TempVBSFile%
    ECHO Wscript.Sleep 900                                    >>"%TempVBSFile%"
    
    CSCRIPT //nologo "%TempVBSFile%"
    
    EXIT /B
    
  2. Create a Shortcut

    On your desktop, right-click and then select New -> Shortcut and plug in the below values where you saved the batch script you just created (above) and be sure set the <username>, <password>, <FTP server URL or IP address> values for your need accordingly, select Next and then give the FTP shortcut a meaningful name so you know what it is later, and then select Save. (see below screen shots)

    D:\BatchScripts\OpenFTPDetailView.cmd "%windir%\explorer.exe ftp://<Username>:<password>@<FTP server URL or IP address>/"
    

    IMPORTANT: It is important that there are double-quotes around the "%windir%\explorer.exe ftp://<Username>:<password>@<FTP server URL or IP address>/" value in the above shortcut property part.

    enter image description here

    enter image description here

  3. Using It

    Now all you need to do is double-click the shortcut you created for it to open the FTP folder with Details view and it's as simple as that moving forward. You can change the icon on this shortcut if you want as well.

    enter image description here


Method 2 (static per script)

This method is similar to method 1 above but you will NOT need to create a shortcut for it to work but you'll still need to set the <username>, <password>, <FTP server URL or IP address> values for your need accordingly for the FTP server you'll connect to.

  1. Create a Batch Script

    Create a batch script, which is just a text document file saved with a .cmd or .bat extension with the below logic in it and then save it to some path you will use to double-click to execute it.

    @ECHO OFF
    
    %windir%\explorer.exe ftp://<username>:<password>@<FTP server URL or IP address>/
    
    :VBSDynamicBuild
    SET TempVBSFile=%temp%\~tmpSendKeysTemp.vbs
    IF EXIST "%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
    ECHO Set WshShell = WScript.CreateObject("WScript.Shell") >>"%TempVBSFile%"
    ECHO Wscript.Sleep 900                                    >>"%TempVBSFile%"
    ECHO WshShell.SendKeys "^+6"                              >>"%TempVBSFile%
    ECHO Wscript.Sleep 900                                    >>"%TempVBSFile%"
    
    CSCRIPT //nologo "%TempVBSFile%"
    
    EXIT /B
    
  2. Using It

    Now all you need to do is double-click the batch script you created for it to open the FTP folder with Details view and it's as simple as that moving forward.

    enter image description here


Further Resources

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .