วิธีการตั้งค่ามุมมองรายการเป็นมุมมอง FTP เริ่มต้นใน Windows Explorer


10

เมื่อฉันใช้ Windows Explorer เพื่อเรียกดูไซต์ FTP ค่าเริ่มต้นคือมุมมอง Tiles ฉันต้องการมันเป็นค่าเริ่มต้นเป็นมุมมองรายการ

ฉันไม่เห็นการตั้งค่ารีจิสทรีและมาตรฐาน [เครื่องมือ -> ตัวเลือกโฟลเดอร์ ... -> ดู -> ใช้กับโฟลเดอร์] จะไม่มีผลกับไซต์ FTP


1
ดูเหมือนว่าจะจำโหมดดูสำหรับไดเรกทอรีที่ดูล่าสุด ในขณะที่คุณนำทางมันจะลืมโหมดหลังจากผ่านไปครู่หนึ่งแล้วย้อนกลับไปที่ไทล์
Deanna

การอภิปรายที่เกี่ยวข้องกับtechnet
Vojtěch Dohnal

ฉันทำซ้ำไม่ได้ อาจเป็นเพราะฉันใช้การแทนที่เมนูClassic Shellด้วยโปรแกรมเสริมClassic Explorerไปยัง Explorer ฉันคลิกที่ปุ่มรายละเอียดภายในแถบเครื่องมือของ Classic Explorer (ฉันปรับแต่งแถบเครื่องมือเพื่อให้มีรายละเอียด)
harrymc

1
@harrymc จาก windows 7 ถึง 10
guest-vm

คำตอบ:


3

สำหรับบันทึกนี่คือวิธีแก้ไขบางส่วนที่ทดสอบกับ W7 SP1 และ W10 v1511

  1. เรียกใช้สคริปต์ชุดรีเซ็ตการตั้งค่าโฟลเดอร์มุมมองของทุกโฟลเดอร์

  2. นำเข้าสู่รีจิสทรี:

Windows Registry Editor เวอร์ชัน 5.00

;คอมพิวเตอร์ของฉัน
[HKEY_CURRENT_USER \ Software \ Classes \ CLSID \ {20D04FE0-3AEA-1069-A2D8-08002B30309D} \ ShellFolder]
"FolderType" = ""

; โฟลเดอร์ Microsoft FTP
[HKEY_CURRENT_USER \ Software \ Classes \ CLSID \ {63da6ec0-2e98-11cf-8d82-444553540000} \ ShellFolder]
"FolderType" = ""

[HKEY_CURRENT_USER \ Software \ Classes \ Local Settings \ Software \ Microsoft \ Windows \ Shell \ กระเป๋า \ AllFolders \ Shell \ {00000000-0000-0000-0000-0000-000000000000}]
"LogicalViewMode" = DWORD: 00000001
"โหมด" = DWORD: 00000000

3a เรียกใช้explorer shell:mycomputerfolderและคุณจะเห็นMy Computerเปิดในมุมมองรายละเอียด

3b เรียกใช้explorer ftp://your.site.comและควรจะอยู่ในมุมมองรายละเอียดตราบใดที่คุณไม่กดไอคอนไซต์ในบานหน้าต่างนำทาง (ถ้ามีAdd Network Location)
คุณสามารถสร้างทางลัดพร้อมตำแหน่งexplorer ftp://your.site.comเพื่อความสะดวก

การอ้างอิง:
ไอคอนเดสก์ท็อป Windows 8 ในมุมมองไทล์ (กำหนดค่าLogicalViewModeสำหรับโหมดมุมมองอื่น ๆ )
กำหนดค่ามุมมองโฟลเดอร์เริ่มต้นสำหรับที่เก็บข้อมูลที่เชื่อมต่อผ่าน MTP (เป็นการตั้งค่ามุมมองโฟลเดอร์ทั้งหมดเป็นโหมดเดียวกัน)


2

ฉันเขียนสิ่งนี้เพื่อทำกับ Autoit: เพียงแค่เรียกใช้สคริปต์และ windows ftp explorer ของคุณควรอยู่ในมุมมองรายการเมื่อดูครั้งแรก มันยังไม่สมบูรณ์แบบ แต่มันมีฟังก์ชั่นพื้นฐานที่คุณต้องการ ฉันต้องการห้องสมุดที่ฉันพบที่นี่ด้วย

ทดสอบกับ 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

ภาคผนวก: คุณอาจต้องเปลี่ยนบรรทัด 257 จาก "AutomatingWindowsExplorer.au3" จากIf @OSVersion "WIN_XP" Thenเป็นIf @OSVersion <> "WIN_XP" Then


2

วิธีการตั้งค่ามุมมองรายการเป็นมุมมอง FTP เริ่มต้นใน Windows Explorer

ฉันพบวิธีแก้ปัญหาง่ายๆโดยใช้วิธีใดวิธีหนึ่งจากสองวิธีด้านล่างนี้ซึ่งคุณอาจพบว่ามีประโยชน์สำหรับคำถามของคุณด้วยเทคโนโลยี Windows ในตัว

ฉันไม่แน่ใจว่านี่จะเป็นทางออกที่แท้จริงที่คุณกำลังมองหาเพื่อแก้ไขปัญหานี้หรือไม่ แต่อาจเป็นวิธีแก้ปัญหาที่ยอมรับได้อย่างน้อยที่สุดซึ่งคุณอาจพบว่ามีประโยชน์โดยไม่จำเป็นต้องเปลี่ยนการตั้งค่ารีจิสตรีใช้โซลูชันของบุคคลที่สามเป็นต้น

โดยพื้นฐานแล้วสิ่งนี้ใช้sendkeysเพื่อส่งCtrl+ Shift+6คีย์ลัดเพื่อเปลี่ยนมุมมองเป็นรายละเอียดทันทีหลังจากเปิดมุมมองโฟลเดอร์ FTP - - แต่ไม่สามารถใช้ซ้ำได้ดังนั้นอาจเป็นการสร้างความแตกต่างสำหรับความต้องการเฉพาะของคุณ


วิธีที่ 1 (ปรับขนาดได้)

นี่คือวิธีการที่จะประกอบด้วย(1)การสร้างชุดสคริปต์ด้วยตรรกะด้านล่างและ(2)จากนั้นสร้างสั้นที่ชี้ไปที่สคริปต์ชุดและจากนั้นก็มีข้อโต้แย้งมันจะผ่านในรายละเอียดการเชื่อมต่อ FTP ที่ใช้บังคับสำหรับเซิร์ฟเวอร์ FTP คุณจะเชื่อมต่อกับ

แบทช์สคริปต์หนึ่งชุดที่คุณสร้างขึ้นสำหรับวิธีนี้สามารถใช้เป็นทางลัดได้มากเท่าที่คุณต้องการใช้กับวิธีนี้ดังนั้นจึงเป็นโซลูชันที่ปรับขนาดได้หากความต้องการของคุณเพิ่มขึ้นสำหรับการเชื่อมต่อ FTP มากกว่าหนึ่งครั้งในอนาคต

  1. สร้างสคริปต์ชุด

    สร้างแบตช์สคริปต์ซึ่งเป็นเพียงไฟล์เอกสารข้อความที่บันทึกด้วย.cmdหรือ.batส่วนขยายที่มีลอจิกด้านล่างในนั้นจากนั้นบันทึกไปยังเส้นทางบางอย่างที่คุณจะอ้างอิงในทางลัดที่คุณสร้างในส่วนสร้างทางลัด

    @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. สร้างทางลัด

    บนเดสก์ทอปของคุณคลิกขวาแล้วเลือกใหม่ -> ทางลัดและเสียบด้านล่างค่าที่คุณบันทึกสคริปต์ชุดที่คุณเพิ่งสร้าง (ด้านบน) และได้รับการตั้งแน่ใจว่า<username>, <password>, <FTP server URL or IP address>ค่าสำหรับความต้องการของคุณตามเลือกถัดไปและจากนั้นให้ FTP ที่ทางลัดชื่อมีความหมายเพื่อให้คุณรู้ว่ามันคืออะไรในภายหลังแล้วเลือกบันทึก (ดูภาพหน้าจอด้านล่าง)

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

    สำคัญ:มันเป็นสิ่งสำคัญที่มีเครื่องหมายคำพูดคู่ล้อมรอบ%windir%\explorer.exe ftp://<Username>:<password>@<FTP server URL or IP address>/"ค่า" ในส่วนคุณสมบัติทางลัดด้านบน

    ป้อนคำอธิบายรูปภาพที่นี่

    ป้อนคำอธิบายรูปภาพที่นี่

  3. ใช้มัน

    ตอนนี้สิ่งที่คุณต้องทำคือคลิกสองครั้งที่ทางลัดที่คุณสร้างขึ้นเพื่อเปิดโฟลเดอร์ FTP ที่มีมุมมองDetailsแล้วมันก็ง่ายเหมือนการย้ายไปข้างหน้า คุณสามารถเปลี่ยนไอคอนบนทางลัดนี้หากคุณต้องการเช่นกัน

    ป้อนคำอธิบายรูปภาพที่นี่


วิธีที่ 2 (คงที่ต่อสคริปต์)

วิธีการนี้จะคล้ายกับวิธีที่ 1ข้างต้น แต่คุณจะไม่จำเป็นที่จะต้องสร้างทางลัดให้มันทำงาน แต่คุณยังจะต้องตั้งค่า<username>, <password>, <FTP server URL or IP address>ค่าสำหรับความต้องการของคุณตามสำหรับเซิร์ฟเวอร์ FTP ที่คุณจะเชื่อมต่อไปยัง

  1. สร้างสคริปต์ชุด

    สร้างแบตช์สคริปต์ซึ่งเป็นเพียงไฟล์เอกสารข้อความที่บันทึกด้วย.cmdหรือ.batส่วนขยายที่มีลอจิกด้านล่างแล้วบันทึกลงในพา ธ ที่คุณจะใช้เพื่อดับเบิลคลิกเพื่อเรียกใช้งาน

    @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. ใช้มัน

    ตอนนี้สิ่งที่คุณต้องทำคือดับเบิลคลิกที่สคริปต์แบทช์ที่คุณสร้างขึ้นเพื่อเปิดโฟลเดอร์ FTP ที่มีมุมมองDetailsและง่ายเหมือนเลื่อนไปข้างหน้า

    ป้อนคำอธิบายรูปภาพที่นี่


แหล่งข้อมูลเพิ่มเติม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.