Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Кнопка открытия текущего каталога в плагине NTFS4TC 
Author Message
Flasher



PostPosted: Wed Aug 11, 2010 18:22    Post subject: Reply with quote

Сегодня решил продолжить поиск решения. Написал-таки что-то поразумнее, но не знаю как всю эту петрушку (отделено знаками вопроса) зациклить.
Уважаемая просьба откликнуться и написать тем, кому есть что сказать по сему вопросу!
Volniy, Batya, LocKtaR-o-DarK, Tol'k, Lev, sa, будут любые соображения, пишите; если даже решение не проглядывается, просьба пояснить в чём сложность реализации, и есть ли смысл искать способ.

Code:
Dim TCS,objFSO,fso,i,ID,d0,d1,d2,d3',d4,d5,d6,d7
Set TCS = CreateObject("TCScript.Helper")
Set objFSO = CreateObject("Scripting.FileSystemObject")

TCS.SendCommand "cm_CopySrcPathToClip"
Str = TCS.GetTextFromClip
Set i = objFSO.GetDrive(Left(Str,2)) 'Определяем том диска активной папки

'Объявляем диски поочерёдно
Set d0 = objFSO.GetDrive("C:")
Set d1 = objFSO.GetDrive("D:")
Set d2 = objFSO.GetDrive("E:")
Set d3 = objFSO.GetDrive("F:")
'Set d4 = objFSO.GetDrive("H:")
'Set d5 = objFSO.GetDrive("G:")
'Set d6 = objFSO.GetDrive("H:")
'Set d7 = objFSO.GetDrive("I:")
'Set d8 = objFSO.GetDrive("J:")
'при желании продолжить

If i.FileSystem <> "NTFS" Then MsgBox "Файловая система не поддерживаетя!", TCS.ClearClip, WScript.Quit()

'??????????????Присваеваем номер диску????????????????????????????????????
If i.DriveLetter = "C" Then ID = "0"
If i.DriveLetter = "D" And d0.FileSystem <> "NTFS" Then ID = "0"
If i.DriveLetter = "D" And d0.FileSystem = "NTFS" Then ID = "1"

If i.DriveLetter = "E" And d0.FileSystem <> "NTFS" And d1.FileSystem <> "NTFS" Then ID = "0"
If i.DriveLetter = "E" And d0.FileSystem <> "NTFS" And d1.FileSystem = "NTFS" Then ID = "1"
If i.DriveLetter = "E" And d0.FileSystem = "NTFS" And d1.FileSystem = "NTFS" Then ID = "2"

'На эти строки( без ' ) возникает ругань "Диск не готов". >> В чём причина?
'If i.DriveLetter = "F" And d0.FileSystem <> "NTFS" And d1.FileSystem <> "NTFS" And d2.FileSystem <> "NTFS" Then ID = "0"
'If i.DriveLetter = "F" And d0.FileSystem = "NTFS" And d1.FileSystem <> "NTFS" And d2.FileSystem <> "NTFS" Then ID = "1"
'If i.DriveLetter = "F" And d0.FileSystem <> "NTFS" And d1.FileSystem <> "NTFS" And d2.FileSystem = "NTFS" Then ID = "1"
'If i.DriveLetter = "F" And d0.FileSystem <> "NTFS" And d1.FileSystem = "NTFS" And d2.FileSystem <> "NTFS" Then ID = "1"
'If i.DriveLetter = "F" And d0.FileSystem <> "NTFS" And d1.FileSystem = "NTFS" And d2.FileSystem = "NTFS" Then ID = "2"
'If i.DriveLetter = "F" And d0.FileSystem = "NTFS" And d1.FileSystem <> "NTFS" And d2.FileSystem = "NTFS" Then ID = "2"
'If i.DriveLetter = "F" And d0.FileSystem = "NTFS" And d1.FileSystem = "NTFS" And d2.FileSystem <> "NTFS" Then ID = "2"
'If i.DriveLetter = "F" And d0.FileSystem = "NTFS" And d1.FileSystem = "NTFS" And d2.FileSystem = "NTFS" Then ID = "3"
'Условия для остальных дисков дописывать по желанию)))))
'?????????????????????????????????????????????????????????????????????????????????

path = "\\\NTFS\I" + ID + " " + i + " (" + i.VolumeName + ")" + Right(Str,(Len(Str)-2)) + "\"
TCS.SetTextToClip(path)
TCS.SendCommand "cm_EditPath"
TCS.SendKeystroke "^{v}"
TCS.SendKeystroke "{ENTER}"
TCS.ClearClip
Set TCS = Nothing
Set objFSO = Nothing
WScript.Quit()
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group