В последнее время на страницах форума всё чаще выкладываются файлы в mime и т.п. кодировке. Мне чуть надоело их копировать-сохранять-распаковывать, и я решил предоставить это дело ТС. Теперь всё что требуется - скопировать текстовку со страницы, выбрать желаемую директорию и нажать кнопку скрипта.
Идея очень интересная и актуальная, но ни один из предложенных скриптов не хотел срабатывать, пришлось методом тыка искать что не так, в итоге с этим куском заработало, может кому пригодится:
кусок между строками F.Close и Set F = fso.GetFile(TempFile)
Set TCS = CreateObject("TCSCRIPT.Helper")
Set FSO = CreateObject("Scripting.FileSystemObject")
TempFile=TCS.GetSrcPath & "\temp.b64"
Set F = fso.CreateTextFile(TempFile, True)
F.Write TCS.GetTextFromClip
F.Close
'SetSrcPath (SrcPath, [InNewTab]) - дает указание установить
'желаемый путь в панели-источнике TC. Если указать в качестве первого
'параметра путь к файлу, то кроме перехода к папке, где расположен
'данный файл, будет дополнительно произвелено выделение файла(!) в
'панели-источнике. Если необязательный параметр InNewTab установить
'в True, тогда указываемый путь будет открыт в новой вкладке.
TCS.SetSrcPath TempFile
TCS.SendCommand ("cm_Decode"), False
TCS.SendKeystroke "{BKSP}"
TCS.SendKeystroke "{Enter}"
TCS.Sleep 500
fso.DeleteFile TempFile
Set TCS = Nothing
Set FSO = Nothing
WScript.Quit
Последний раз редактировалось Volniy Пн окт 18, 2010 00:17, всего редактировалось 1 раз.
Volniy
Выдаётся сообщение "Функция не поддерживается."
При этом в текущей папке кратковременно появляется папка "temp.b64" и в ней файл с именем зашифрованного.
Затем папка удаляется. Пример b64, с любым другим так же.
Rodny, у тебя установлен MhtUnPack.wcx (в .b64 можно войти) ?
Volniy писал(а):Если указать в качестве первого параметра путь к файлу, то кроме перехода к той папке, где расположен данный файл, будет дополнительно произвелено выделение файла(!) в целевой панели.
Если файл является "архивом" в понимании ТС, то происходит вход а архив и, конечно, ничего не выделяется
Используется TCS.SetSrcPath, логика работы у них одинаковая.
SetSrcPath (SrcPath, [InNewTab]) - дает указание установить же-
лаемый путь в панели-источнике TC. Если указать в качестве первого
параметра путь к файлу, то кроме перехода к папке, где расположен
данный файл, будет дополнительно произвелено выделение файла(!) в
панели-источнике. Если необязательный параметр InNewTab установить
в True, тогда указываемый путь будет открыт в новой вкладке.
Вместо выделения, ТС входит в архив. Поэтому скрипт и не работает.
Нужно добавить строку
Ну да, логика одна, разница только в панелях. Просто увидел в твоём скрипте он также используется, поэтому странно стало. Ну а проблема решается прописью в wincmd.ini
b64=x+256,%COMMANDER_PATH%\Plugins\wcx\MhtUnPack\MhtUnPack.wcx
или поменять в скрипте
TempFile=TCS.GetSrcPath & "\temp.b64"
на
TempFile=TCS.GetSrcPath & "\temp.uue"
Хм, кстати, я этот касяк замечаю ещё у ряда архивных плагинов, в связанные файлы которых очень бы не хотелось входить по Enter. Ну что ж, тогда вариант с переименованием расширения, которое, разумеется, не прописано в ini.