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: Упаковка выделенного в ISO-образ 
Author Message
Flasher



PostPosted: Thu Jun 23, 2011 00:38    Post subject: Reply with quote

Сделал вчера (т.е. уже позавчера), а выложить забыл... Smile
Code:
' Упаковать выделенные файлы и папки в ISO-образ
' vbs-файл положить в одну папку с mkisofs.exe
' Параметры: %L "<Путь_назначения>\"
' Пример: %L "%T"
'=============================================
Name = InputBox("Введите имя ISO-файла:", "Создание образа ISO из выделенного списка")

If Len(Name) = 0 Then WScript.Quit
On Error Resume Next
With CreateObject("Scripting.FileSystemObject")
  For Each F In Split(.OpenTextFile(WScript.Arguments(0), 1).ReadAll, vbNewLine)
    If .FolderExists(F) Then Str = Str & " """ & .GetFolder(F).Name & """=""" & F & """"
    If .FileExists(F) And Len(.GetFileName(F))<=103 Then Str = Str & " """ & F & """"
    If .FileExists(F) And Len(.GetFileName(F))>103 Then Str = Str & " """ & Left(.GetBaseName(F), Len(.GetBaseName(F))+103-Len(.GetFileName(F))) & "." & .GetExtensionName(F) & """=""" & F & """"
  Next
End With
Str = Replace("""" & Wscript.Arguments(1) & Name & ".iso"" " & Str, "\", "/")
With CreateObject("WScript.Shell")
  .Run "mkisofs.exe -quiet -r -f -joliet-long -nobak -graft-points -o " & Str, 0, True
  .Popup "Образ создан!", 1, "Результат", 64
End With

Нет проблем с символами и точками в названиях.

Нужно также иметь в виду, что у формата записи Joliet допустимая длина в именах составляет 64 символа, поэтому файлы, которые этому не удовлетворяют по логике должны сохраняться с обрезанным именем, включая расширение. Я этот момент поправил, теперь обрезается только имя без расширения.

Tol!k, спасибо, что расписал, а то пришлось бы время лишнее тратить на расшифровку.
Rodny, потом сам увидел, спасибо за повторный тык.


Last edited by Flasher on Wed Jul 20, 2011 02:20; edited 3 times in total
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group