Страница 34 из 46

Добавлено: Вс апр 18, 2010 23:55
Владимир М
Tol!k,
большое спасибо! работает.

Добавлено: Пн апр 19, 2010 15:29
Tol!k
Владимир М
LocKtaR-o-DarK™ писал(а):Как производить обмен кнопками?

— чтобы поделиться кнопкой, нажмите правой кнопкой мыши по вашей кнопке и выберите Копировать, после чего вставляйте содержимое буфера в пост как Код: или блок, и, при необходимости, отредактируйте код;
— чтобы забрать кнопку, скопируйте содержимое кода нужной кнопки, правой кнопкой мыши щёлкните на нужном месте панели инструментов (кнопок) тотала и выберите Вставить;

Примечание:
— если, по каким-то причинам, значок вставленной кнопки не отображается или отображается не должным образом, необходимо обновить кнопку, для этого щёлкните по вставленной пустой или неверно отображаемой кнопке правой кнопкой мыши, выберите Изменить, после чего нажмите OK.
Т.ч. "файл кпопки с расширением vbs" создавать не нужно.
vbs — это скрипты на Visual Basic Script, а не кнопки

Добавлено: Вт апр 20, 2010 00:55
LocKtaR-o-DarK
Владимир М писал(а):возможно туплю я, но чего же тут непонятного делал всё как написано тут! http://forum.wincmd.ru/viewpost.php?p=8314
это решение немного устарело
вот более свежее

Добавлено: Ср апр 21, 2010 10:43
gora
JKT писал(а): А вот как-бы чтобы он создавался не под именем "playlist.m3u" , а "Имя_текущей_папки.m3u" Было-бы вообще здорово.
Вариант с однострочным батником устроит?

Файл m3u.bat

Код: Выделить всё

For %%x In ("%cd%") Do Copy "%~1" "%cd%\%%~nx.m3u"
Положите его в любое удобное место (у меня %commander_path%\Utilites\m3u.bat)
Создайте кнопку:

Код: Выделить всё

TOTALCMD#BAR#DATA
%commander_path%\Utilites\m3u.bat
%L
%commander_path%\WCMICONS.DLL,57
Создать плейлист

1
-1

Добавлено: Ср апр 21, 2010 11:33
JKT
gora
Спасибо огромное. Все работает нормально. Плейлист из выделенных файлов с именем текущей папки. То, что надо.

Добавлено: Пт апр 23, 2010 15:25
garmonist
Перечитал всю тему. Решения нашел только частичные.

Помогите, пожалуйста, создать код для двух кнопок:

1. БЭКАП
1.1. Файл необходимо заархивировать в архив {ИмяФайла}_[ГГГГ.ММ.ДД чч.мм.сс].rar.
1.2. Переместить его в папку {ПутьКФайлу}\X-ARC. Если такой папки не существует, то ее надо создать.

2. ВОССТАНОВЛЕНИЕ
2.1. Архив необходимо распаковать в паку {ИмяАрхива}.
2.2. Распакованный файл переименовать в {ИмяАрхиваБезРасширения}. Расширение у распакованного должно остаться исходным.

При этом подразумевается, что бэкапим и восстанавливаем только один файл.

Есть ощущения, что это надо делать в вб-скрипте. Но как вставить в вбс запуск винрара с параметрами - вообще не представляю.

Для пункта 1.1. у меня есть параметры TC для архивирования:

Код: Выделить всё

a -dh -m3 -ag"_[yyyy.mm.dd hh.mm.ss]" "%O".rar ""%N""
Для пункта 1.2. есть код вбс для создания папки:

Код: Выделить всё

Option Explicit
Dim strFolderName as String
strFolderName = CreateObject("WScript.Shell").CurrentDirectory & "\X-ARC"
Dim objFSO As FileSystemObject
Set objFSO = CreateObject("Scripting.FileSystemObject")
If Not objFSO.FolderExists(strFolderName) Then
    objFSO.CreateFolder(strFolderName)
End If
Для пункта 2.1. есть параметры кнопки TC для извлечения из архива:

Код: Выделить всё

x %N "%O"\
Для пункта 2.2 знаю, как переименовать распакованные файлы (учитывая, что WScript.Arguments(0) - это путь, куда были распакованы файлы):

Код: Выделить всё

Dim strPath as String
strPath = WScript.Arguments(0)
Dim objFSO As FileSystemObject
Set objFSO = CreateObject("Scripting.FileSystemObject")
Dim objFolder As Folder
Set objFolder = objFSO.GetFolder(strPath)
Dim objFile As File
Dim strOldFileName As String
Dim strNewFileName As String
Dim strFilePath As String
If objFolder.Files.Count = 1 Then
    For Each objFile In objFolder.Files
        strOldFileName = objFile.Name
        strFilePath = objFile.ParentFolder
        'Имя первой родительской папки
        strNewFileName = Right(strFilePath, Len(strFilePath) - InStrRev(strFilePath, "\", -1))
        'Добавляем исходное расширение
        strNewFileName = strNewFileName & "." & Right(strOldFileName, Len(strOldFileName) - InStrRev(strOldFileName, "."))
        'Переименовываем файл
        Name strFilePath & "\" & strOldFileName As strFilePath & "\" & strNewFileName
    Next
End If

Добавлено: Сб апр 24, 2010 13:45
gora
garmonist

Вариант с батником:
Файл Rar_unRAR.bat

Код: Выделить всё

Set PathRAR="c:\Program Files\WinRAR\WinRAR.exe"
If %2#==B# (
	If Not Exist "%cd%\X-ARC\" MD "%cd%\X-ARC\"
	%PathRAR% a -dh -m3 -ag"_[yyyy.mm.dd hh.mm.ss]" "%cd%\X-ARC\%~n1.rar" "%~1"
) Else (
	If Not Exist "%cd%\%~n1\" MD "%cd%\%~n1\"
	%PathRAR% x "%~1" "%cd%\%~n1\"
	For %%I In ("%cd%\%~n1\*") Do Ren "%%I" "%~n1%%~xI"
)
И две кнопки:
- Бекап:

Код: Выделить всё

TOTALCMD#BAR#DATA
%commander_path%\Utilites\Rar_unRAR.bat
%N B
%commander_path%\WCMICONS.DLL,30
Бекап

1
-1
- Восстановить:

Код: Выделить всё

TOTALCMD#BAR#DATA
%commander_path%\Utilites\Rar_unRAR.bat
%N
%commander_path%\WCMICONS.DLL,31
Восстановить

1
-1

Добавлено: Пн апр 26, 2010 09:49
garmonist
gora
Честно говоря, когда увидел так мало кода, не поверил, что он рабочий. Но офигеть! Всё работает! Спасибо большое)

Добавлено: Ср апр 28, 2010 14:07
Владимир М
Tol!k
да я уже понял свою ошибку, прошу прощения у форумян за то, что заср.л ветку бредом :oops:
p.s. сорри за оффтоп

Добавлено: Пт апр 30, 2010 13:20
Bubek
Помогите сделать сделать такую же кнопку, как

Код: Выделить всё

TOTALCMD#BAR#DATA 
cmd /c setlocal&title 7z-packing... &for /f "tokens=1-6 delims=:., " %a in ('echo %date% %time:~0,8%') do for %i in ("%CD%") do 
for /f "delims=" %%R in ("%S") do cls&"C:\Program Files\7-Zip\7z" a -pПАРОЛЬ -scswin -m0=bcj -m1=lzma:d=21 -ms -mmt """""%%~nxi_[%%c.%%b.%%a-%%d.%%e.%%f].7z""""" """"%%R"""" 
keymgr.dll 
Создание зашифрованного 7z-архива 


-1 
но, чтобы она делала архив по названию файла(папки), без шифрования и пароля

пример: в папке Архив находится папка Данные, архивируем папку Данные и получаем название вида:
1. Дата_время_имя папки
2010.04.29_13.22.23_Данные.7z
Спасибо.

Добавлено: Пт апр 30, 2010 14:27
gora
Bubek

Код: Выделить всё

TOTALCMD#BAR#DATA
cmd /c setlocal&title 7z-packing... &for /f "tokens=1-6 delims=:., " %a in ('echo %date% %time:~0,8%') do
"C:\Program Files\7-Zip\7z" a -scswin -m0=bcj -m1=lzma:d=21 -ms -mmt """""%%c.%%b.%%a_%%d.%%e.%%f_%N.7z""""" """"%N""""
keymgr.dll
Создание 7z-архива


-1

Добавлено: Пт апр 30, 2010 14:55
Bubek
gora
Спасибо, работает

Добавлено: Вс май 09, 2010 14:36
ytka00
а можно ли както с помощью кнопки переключать размер эскизов? было бы удобно переключаться между 4:3 и 16:9

Добавлено: Вс май 09, 2010 16:26
MVV
pokoynik писал(а):а можно ли както с помощью кнопки переключать размер эскизов? было бы удобно переключаться между 4:3 и 16:9
Сомневаюсь. При изменении размера эскиза ТК будет перечитывать все эскизы по новой, поэтому это будет слишком долго. Да и размер эскизов поменять не так-то просто без захода в настройки или перезапуска ТК.

Добавлено: Вс май 09, 2010 17:49
ytka00
у меня они не кешируются, разницы в скорости отображения не заметил. При изменени размера в насторйках перезапуск не требуется