Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Multi Commander

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10

Открыть новую тему     Написать ответ в эту тему

Blind

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Официальный сайт | Форум | Facebook | Changelog | Предыдущие версии
 
Текущая версия 11.0 Build 2770 (23.02.2021):  
x32 Installer / Portable  |  x64 Installer / Portable

Многофункциональный бесплатный файловый менеджер. Основные возможности:
 
  • Две панели файлов с поддержкой вкладок
  • Просмотр текстовых файлов и изображений
  • Групповое переименование файлов
  • Внутренние файловые ассоциации
  • Поддержка скриптов (собственный формат)
  • Поддержка архивов (Zip, 7Zip, Rar, tar,gz,bz2, tar.gz, tar.bz2)
  • Вставка текста и изображений из буфера обмена в новый файл
  • Работа с FTP
  • Работа с реестром как с файловой системой
  • Многоязычный интерфейс
     
     
    Ссылки на нестабильные версии можно вытащить отсюда.

  • Всего записей: 591 | Зарегистр. 06-10-2003 | Отправлено: 20:06 29-01-2012 | Исправлено: vzar, 08:07 01-03-2021
    AlexeiKozlov

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Народ, писал автору про такую фичу.
     
    Регистрация программы вместо проводника.
    Такая фишка есть у DirectoryOpus.
     
    Это позволит, вызывать его с клавиатуры и из меню Пуск.

    Всего записей: 1984 | Зарегистр. 16-10-2004 | Отправлено: 15:29 09-06-2017
    Andarin



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

    Цитата:
    Это позволит, вызывать его с клавиатуры и из меню Пуск.

    Без проблем делаю это с любой программой. А вот регистрация вместо проводника - это совсем другое..

    Всего записей: 3065 | Зарегистр. 04-03-2006 | Отправлено: 18:47 09-06-2017
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i7430
    Синтакс сравнительно несложный. Сработало?
    Если делаете портативную сборку и есть желание отвязаться от жёсткого пути FastCopy, то по идее для пути "папка Multi Commander\Progs\FastCopy\FastCopy.exe" должен сработать такой вариант

    Код:
    @var $sfc = GetTagValue("${mcinstallpath}") + "\\Progs\\FastCopy\\FastCopy.exe";

     
    Честно говоря, несколько подутратил интерес к сабжу, о тонкостях настроек не подскажу, а MultiScript немного знаком в силу запиливания подсветки синтаксиса до утраты.

    Всего записей: 6131 | Зарегистр. 28-01-2008 | Отправлено: 21:43 09-06-2017
    Victor_VG



    Tracker Mod
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Судя по свежей бете v7.3 (Build 2352) ( 10-Jun-2017 )
     
    ADDED - Tab session can now be set to Autoload at startup
     ADDED - Can now remember last used tab session and autoload that on startup
     ADDED - DeviceToolbar inside explorer panel now shown a popup with device type to show. (Feature in progress. Not complete yet)
     ADDED - FS7Zip - When creating a 7zip archive, A retry dialog is now shown if the file it wants to pack is used from another program
     ADDED - Creating symlinks as normal user is now possible if running Win10 (1703) och if Developer mode in windows is enabled.
     ADDED - Makedir (Custom command and dialog) now support the date tags used when creating quick create folder commands
     ADDED - Delete can now do a special verify and check if delete actually happens. (Workaround for Samba on linux that can report that items was deleted when they was not)
     FIXED - Column sizing issue when the vertical scrollbar was visible
     FIXED - Sort was not always triggerd when doing inline rename
     FIXED - Advanced filter now support extended propery field "core.attrib"
     FIXED - Tabs was not always loaded into the correct order, If they was moved around
     FIXED - Various minor issues and code cleanup

     
    автор решил реализовать то, что в Far Manager давно есть из коробки - создание симлинков, но с парой реверансов в Редмонд:
     
    1) только в новейшей версии Win10;
    2) только в специальном режиме работы оси;
     
    странно, механизм хард-/симлинков существует в NTFS, а работающий с ним код с тех находится в драйвере файловой системы ntfs.sys с момента создания ОС  Windows NT 3.1 (1992 год), но если мелкомягким до осознания что кроме их Мелкого Величества он нужен и простым смертным потребовалось четверть века, то авторам иных утилит потребовалось слегка поменьше, но так же несколько лет. На а о прочем я не говорю  - наверняка найдётся новый спецрежим десятки без  которого оно не реализуемо.

    ----------
    Жив курилка! (Р. Ролан, "Кола Брюньон")
    Xeon E5 2667/C602J/16 GB REG ECC DDR3-1866/GTX 1660, i7-2600/z68/16 Gb DDR3-1600/GTX 1060 3Gb

    Всего записей: 28765 | Зарегистр. 31-07-2002 | Отправлено: 07:43 11-06-2017
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Victor_VG
    Может, это с прицелом на и для магазина приложений? Иначе какое-то странное решение.

    Всего записей: 6131 | Зарегистр. 28-01-2008 | Отправлено: 09:24 11-06-2017
    Victor_VG



    Tracker Mod
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Skif_off
     
    Не знаю. Просто ради интереса скачал бету, и то из всех линков только апдейт пришёл. А там и changelog был новый. Это из него выписка.

    ----------
    Жив курилка! (Р. Ролан, "Кола Брюньон")
    Xeon E5 2667/C602J/16 GB REG ECC DDR3-1866/GTX 1660, i7-2600/z68/16 Gb DDR3-1600/GTX 1060 3Gb

    Всего записей: 28765 | Зарегистр. 31-07-2002 | Отправлено: 09:34 11-06-2017
    Koyotero



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Victor_VG

    Цитата:
    автор решил реализовать то, что в Far Manager давно есть из коробки - создание симлинков, но с парой реверансов в Редмонд:  
     
    1) только в новейшей версии Win10;  
    2) только в специальном режиме работы оси;

    Похоже ты немного не так перевел, я помню что симлинки и раньше можно было создавать в программе. Скорее речь о том, что в 10-ке теперь можно их создавать или было сломано в какой то версии.
    У меня лично другая проблема в новых версиях, долго идет отрисовка значков файлов, в фоновой панели при запуске.

    Всего записей: 1123 | Зарегистр. 30-10-2005 | Отправлено: 16:53 11-06-2017
    Victor_VG



    Tracker Mod
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Koyotero
     
    Я просто обратил внимание на то, что симлинки под юзером можно создавать только в сём поделии.
     
    А что перевода, то:
     
    ADDED - Creating symlinks as normal user is now possible if running Win10* (1703) och if Developer mode in windows is enabled.  
     
    (практически дословно)
     
    ДОПОЛНЕНО - Создание символических ссылок для обычного пользователя теперь возможно и под Win10 (1703) если включён режим разработчика окон.
     
    *А оное резиновое поделие №2 меня не интересует ибо халтура раз, шпион два, и официально собирает данные для доступа к банковским счетам клиентов - три (смотрим Microsoft Privacy Statement), а я не хочу в один прекрасный момент без штанов остаться.


    ----------
    Жив курилка! (Р. Ролан, "Кола Брюньон")
    Xeon E5 2667/C602J/16 GB REG ECC DDR3-1866/GTX 1660, i7-2600/z68/16 Gb DDR3-1600/GTX 1060 3Gb

    Всего записей: 28765 | Зарегистр. 31-07-2002 | Отправлено: 17:30 11-06-2017 | Исправлено: Victor_VG, 17:44 11-06-2017
    Grogan

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Сейчас , да, 7z-архивирование залоченных файлов вызывает диалог. Но при выборе кнопки "Прервать" файл архива не удаляется. Насколько это логично ?

    Всего записей: 63 | Зарегистр. 01-08-2006 | Отправлено: 09:43 12-06-2017
    Victor_VG



    Tracker Mod
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Grogan
     
    По моему, если другие файлы успешно попали в архив логично его сохранить, пропустить недоступные и сообщить оператору для принятия решения.

    ----------
    Жив курилка! (Р. Ролан, "Кола Брюньон")
    Xeon E5 2667/C602J/16 GB REG ECC DDR3-1866/GTX 1660, i7-2600/z68/16 Gb DDR3-1600/GTX 1060 3Gb

    Всего записей: 28765 | Зарегистр. 31-07-2002 | Отправлено: 10:36 12-06-2017
    i7430

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Skif_off

    Цитата:
    Код:
    @var $alist = GetSelectedPaths();
    @var $spath = GetTargetPath();
    @var $sfc = "C:\\Progs\\FastCopy\\FastCopy.exe";
    @var $sfile = TranslateEnvString("%TEMP%") + "\\tmp" + GetRandomValue(10, 99, 12345678) + ".lst";
    @var $opts[] = {"NOPROGRESS", "NODIALOG", "SILENT"};
     
    if(SaveArray($sfile, $alist, 1, 0))
    {
      MC.Run CMD="{$sfc}" ARG='/cmd=force_copy /force_close /no_confirm_stop /speed=full /srcfile="{$sfile}" /to="{$spath}"' WAIT
      DeleteFile($sfile, $opts);
    }
    else
    {
      MessageBox("Run FastCopy", "Could not create " + {$sfile} + "!", 48);
    }
     

    все работает, но при копировании больших файлов скрипт ждет ответа? (окончания копирования) от программы - и соответственно, Мультикоммандер висит.
    Еще раз, спасибо.

    Всего записей: 30 | Зарегистр. 26-02-2015 | Отправлено: 08:49 13-06-2017
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i7430
    Это из-за WAIT, не сообразил, что тогда ожидать будет сам Multi Commander, привык к AutoIt.
    В голову приходят несколько вариантов:
    - просто убрать WAIT, ведь уже после запуска FastCopy файл им прочитан в память и он его, кажется, не блокирует, но это, как минимум, как-то некрасиво;
    - запускать через cmd и амперсанд, чтобы уже он запустил FastCopy с нужными параметрами и по завершении грохнул файл список, но будет окно cmd (даже если запустить его свёрнутым);
    - как выше, но с прокладкой уже на VBScript (чёрное окно консоли не будет вылезать);
    - есть ещё /postproc=, но судя по документации - действие нужно предварительно настроить в диалоге настроек FastCopy и сохранить под каким-то именем (до кучи надо как-то исхитриться, чтобы можно было запустить несколько копий FastCopy);
    - похоже, самый простой вариант - вернуться к тому, с чего начали, и передавать FastCopy файлы, перечислив их в строку (из минусов: можно нарваться на ограничение длины командной строки, кажется, 32767 символов):

    Код:
    @var $alist = GetSelectedPaths();
    @var $spath = GetTargetPath();
    @var $sfc = "C:\\Progs\\FastCopy\\FastCopy.exe";
    @var $sfiles = StrReplace(StrLinesArray2String($alist, 1), "\n", '" "');
    MessageBox("Run FastCopy", 'Test: "{$sfiles}"', 0);
     
    MC.Run CMD="{$sfc}" ARG='/cmd=force_copy /force_close /no_confirm_stop /speed=full "{$sfiles}" /to="{$spath}"'

    К сожалению, нет возможности проверить, поэтому добавил окно для теста перед запуском FastCopy: если строка с выделенным получается правильной (все в кавычках и через пробел), то просто удалите строку

    Код:
    MessageBox("Run FastCopy", 'Test: "{$sfiles}"', 0);

     
    P.S. Кстати, есть удобный параметр /estimate, показывает, сколько осталось времени.

    Всего записей: 6131 | Зарегистр. 28-01-2008 | Отправлено: 14:30 13-06-2017
    Victor_VG



    Tracker Mod
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Skif_off
     
    Окно CMD или консольной задачи можно легко скрыть - hidcon v1.1.4 (32 + 64 бит сборки, автор Андрей Гречкин). Новые исходники утилиты на ГитХабе cpp/apps/hidcon. Я ей скрываю запуск пинальных батников для консольных задач. И ничего, работает.

    ----------
    Жив курилка! (Р. Ролан, "Кола Брюньон")
    Xeon E5 2667/C602J/16 GB REG ECC DDR3-1866/GTX 1660, i7-2600/z68/16 Gb DDR3-1600/GTX 1060 3Gb

    Всего записей: 28765 | Зарегистр. 31-07-2002 | Отправлено: 14:42 13-06-2017
    i7430

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Skif_off
    - просто убрать WAIT, ведь уже после запуска FastCopy файл им прочитан в память и он его, кажется, не блокирует, но это, как минимум, как-то некрасиво;
    так не работает
     
    - запускать через cmd и амперсанд, чтобы уже он запустил FastCopy с нужными параметрами и по завершении грохнул файл список, но будет окно cmd (даже если запустить его свёрнутым);
    это я не понимаю (хотя этот вариант, мне кажется, самый подходящий)
     
    - как выше, но с прокладкой уже на VBScript (чёрное окно консоли не будет вылезать);
    это я не могу написать сам
     
    - есть ещё /postproc=, но судя по документации - действие нужно предварительно настроить в диалоге настроек FastCopy и сохранить под каким-то именем (до кучи надо как-то исхитриться, чтобы можно было запустить несколько копий FastCopy);
    наверное, сложно
     
    - похоже, самый простой вариант - вернуться к тому, с чего начали, и передавать FastCopy файлы, перечислив их в строку (из минусов: можно нарваться на ограничение длины командной строки, кажется, 32767 символов):
    это не подходит: бывает очень много маленьких файлов с длинными именами.
     
     

    Всего записей: 30 | Зарегистр. 26-02-2015 | Отправлено: 10:41 14-06-2017
    Victor_VG



    Tracker Mod
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i7430
     
    hidcon-x[32|64] /detach "полная командная строка запускаемой программы"
     
    но, у ключа /detach есть ограничение - код  возврата не прочтёте, т.к.  hidcon запустит скрытое окно и завершится. Хотите после завершения программы прочитать её код  возврата - просто уберите ключ /detach из команды и hidcon дождётся завершения запущенной программы и вернёт её код возврата в %ERRORLEVEL%.
     
    В вашем случае в качестве командной строки будет выступать полный путь для запуска FastCopy и все нужные для неё ключи. И ничего мелькать на экране будет. А на диске добавится одна запись файла в структурах файловой системы. Для NTFS это 1 - 4 Кб. Да сама hidcon-32/hidcon-x64 много меньше (5120/6144 байт), но таковы правила игры, миритесь или вам придётся использовать сложное и громоздкое решение. По моему hidcon-x32/hidcon-x64 не только в данном случае выручит и её стоит в %PATH% положить.
     
    Вы добавляете кнопку с командой вида:
     
    hidecon-x64 /detach FastCopy {options} %list
     
    и единственной задачей для вас станет сформировать этот %list, а всё остальное за вас сама ось выполнит.

    ----------
    Жив курилка! (Р. Ролан, "Кола Брюньон")
    Xeon E5 2667/C602J/16 GB REG ECC DDR3-1866/GTX 1660, i7-2600/z68/16 Gb DDR3-1600/GTX 1060 3Gb

    Всего записей: 28765 | Зарегистр. 31-07-2002 | Отправлено: 13:15 14-06-2017 | Исправлено: Victor_VG, 13:20 14-06-2017
    i7430

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Victor_VG

    Цитата:
    и единственной задачей для вас станет сформировать этот %list

    для меня и это проблема.
    Это в мульти-скрипт делать?  
    строка не такая же будет?
     MC.Run CMD=hidecon-x64 /detach "{$sfc}" ARG='/cmd=force_copy /force_close /no_confirm_stop /speed=full /srcfile="{$sfile}" /to="{$spath}"' WAIT  

    Всего записей: 30 | Зарегистр. 26-02-2015 | Отправлено: 14:40 14-06-2017 | Исправлено: i7430, 14:48 14-06-2017
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i7430
    Срастил MultiScript с VBScript, дабы обойтись без лишних файлов: VBS-скрипт будет генериться самим скриптом Multi Commander, дабы не множить сущности. VBS-скрипт будет создаваться там же, в %Temp%, рядом со списком и с тем же именем.
     
    Один момент: GetRandomValue() заменил на GetTime(), т.к. первая какая-то странная - выдаёт одно и то же значение в течении сессии О_о Вторая даст именно то, что нужно - уникальное имя, можно запустить сразу несколько задач. Поэтому если первый скрипт так или иначе будете использовать или приспособите под что-то своё, то лучше исправьте сразу.

    Код:
    @var $alist = GetSelectedPaths();
    @var $spath = GetTargetPath();
    @var $sfc = "B:\\FastCopy\\FastCopy.exe";
    @var $sfile = TranslateEnvString("%TEMP%") + "\\tmp" + GetTime() + ".lst";
    @var $svbfile = $sfile + ".vbs";
    @var $ssave;
     
    if(SaveArray($sfile, $alist, 1, 0))
    {
      $ssave = "Set WshShell = CreateObject(\"WScript.Shell\")\r\nSet FSO = CreateObject(\"Scripting.FileSystemObject\")\r\nWshShell.Run \"\"\"" + $sfc + "\"\" /cmd=force_copy /force_close /no_confirm_stop /speed=full /srcfile=\"\"" + $sfile + "\"\" /to=\"\"" + $spath + "\"\"\", 1, True\r\nFSO.DeleteFile \"" + $sfile + "\", 1\r\nFSO.DeleteFile \"" + $svbfile + "\", 1"
      if(SaveStringToFile($svbfile, $ssave, 0))
      {
        MC.Run CMD='"{$svbfile}"' SHELL
      }
      else
      {
        MessageBox("Run FastCopy", "Could not create " + $svbfile + "!", 48);
        @var $opts[] = {"NOPROGRESS", "NODIALOG", "SILENT"};
        DeleteFile($sfile, $opts);
      }
    }
    else
    {
      MessageBox("Run FastCopy", "Could not create " + $sfile + "!", 48);
    }

    P.S. Пришлось отлаживать самому, иначе было бы очень медленно, но вообще, это было увлекательно )) Временами Multi Commander не падал, а внезапно исчезал, быстро, решительно, молча - бах и нету Трудности почему-то были с $ssave, не знаю, почему начал нормально работать именно такой вариант, когда её значение задавал не при определении в начале, а позже, уже внутри условного оператора.
     
    Добавлено:
    Раз уж с компа, подкрасил код.

    Всего записей: 6131 | Зарегистр. 28-01-2008 | Отправлено: 15:33 14-06-2017 | Исправлено: Skif_off, 15:59 14-06-2017
    Victor_VG



    Tracker Mod
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i7430
     
    От hidecon да. Единственное что всегда надо помнить, это то,  что пути и имена файлов содержащие пробелы и допустимые спецсимволы обязательно должны заключаться  в кавычки или это вызовет ошибку разбора команды в самой ОС. А если у вас встретится случай вложенных кавычек, то используйте их разные типы, например косые, одинарные или двойные. Например так `command 'arg1' 'arg2' ...  'argN = "patch1"' 'argM = "patch2"'` ОС с этим набором сама разберётся и поймёт кто вложен и на каком уровне.

    ----------
    Жив курилка! (Р. Ролан, "Кола Брюньон")
    Xeon E5 2667/C602J/16 GB REG ECC DDR3-1866/GTX 1660, i7-2600/z68/16 Gb DDR3-1600/GTX 1060 3Gb

    Всего записей: 28765 | Зарегистр. 31-07-2002 | Отправлено: 15:46 14-06-2017
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    i7430

    Цитата:
    строка не такая же будет?  
      MC.Run CMD=hidecon-x64 /detach "{$sfc}" ARG='/cmd=force_copy /force_close /no_confirm_stop /speed=full /srcfile="{$sfile}" /to="{$spath}"' WAIT  

    В CMD пишется только запускаемый файл, в этом случае hidecon, всё остальное - в аргументах, типа такого

    Код:
    MC.Run CMD="hidecon-x64" ARG='/detach "{$sfc}" /cmd=force_copy /force_close /no_confirm_stop /speed=full /srcfile="{$sfile}" /to="{$spath}"'

    WAIT тут не нужно. Путь к hidecon-x64 можно указать целиком, только не забывайте удваивать слэшы в пути (точнее, правило такое: удваиваем слэши в двойных кавычках и не удваиваем в одинарных, во втором случае перестают работать Esc-последовательности (\r, \n, \" и т.д.)).
     
     
    P.S. Если пользуетесь AkelPad, то может пригодиться файл подсветки синтаксиса MultiScript (прямая ссылка) (пока здесь, немного позже попрошу добавить к основным).
    Если пользуетесь Notepad++ и зареганы на оффоруме, то отпишитесь в теме, автор там слегка напортачил.

    Всего записей: 6131 | Зарегистр. 28-01-2008 | Отправлено: 15:51 14-06-2017 | Исправлено: Skif_off, 16:01 14-06-2017
    i7430

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Skif_off
    Victor_VG
    Спасибо Вам огромное.

    Всего записей: 30 | Зарегистр. 26-02-2015 | Отправлено: 08:37 15-06-2017
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10

    Компьютерный форум Ru.Board » Компьютеры » Программы » Multi Commander


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.Board
    © Ru.Board 2000-2020

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru