View previous topic :: View next topic |
Author |
Message |
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Mar 04, 2016 03:56 Post subject: |
|
|
Iori wrote: | У меня такой ошибки нет | А, значит, эта прога его в Manual ставит, молодец прога.
Iori wrote: | Значит мусор в системе остаётся. | Конечно.
Iori wrote: | Буду очень рад >>>
К сожалению как вы уже знаете, WinCDemu только работает с DVD образами. | _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Iori
Joined: 25 Apr 2012 Posts: 551
|
(Separately) Posted: Fri Mar 04, 2016 04:26 Post subject: |
|
|
Quote: | А, значит, эта прога его в Manual ставит, молодец прога |
Да system explorer показывает как Manual.
С этим надо что то делать
Я имею в виду то что osfmount и imdisk могут монтировать флопи, дисковые, и другие образы, а WinCDemu может монтировать только udf образы. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Fri Mar 04, 2016 05:00 Post subject: |
|
|
Iori wrote: | С этим надо что то делать | Часть уже показал. Остальное позже, когда драйверную часть в скриптах отлажу на максимум.
Iori wrote: | Я имею в виду | Речь не об этом. См. выделенное. Чему радоваться, если я писал про WinCDEmu? _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Iori
Joined: 25 Apr 2012 Posts: 551
|
(Separately) Posted: Sun Mar 06, 2016 02:52 Post subject: |
|
|
Quote: | Остальное позже, когда драйверную часть в скриптах отлажу на максимум. |
Ладно будем ждать
Quote: | Чему радоваться, если я писал про WinCDEmu? |
Понятно. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Mar 16, 2016 07:14 Post subject: |
|
|
Iori
По личным причинам выкладка затянулась. Не сказать, что особо отлаживал (знаю, куда копать, но со временем не очень). Выложу, что есть.
WinCDEmu.vbs Code: | '•••••••••••••••••••••••• VBS •••••••••••••••••••••••
' Смонтировать образ диска под курсором с расширением
' ISO, CUE, NRG, MDS/MDF, CCD, IMG c помощью WinCDEmu
'
' Условие: расположение файлов программы как в архиве
'
' Параметры: 1) <отмонтировать всё/монтировать: 0/1>
' 2) <запуск драйвера при старте ОС: 0/1>
' 3) <свободная буква c начала/конца: 0/1>
' 4) %V (либо полный путь к файлу-образу)
'
' Примеры: 0 0 | 1 0 0 %V
'
Option Explicit
'••••••• Путь к папке с утилитой и драйверами •••••••
Const Path = "%COMMANDER_PATH%\Utils\WinCDEmu"
'••••••••••••••••••••••••••••••• Автор: Flasher © •••
Dim A, T, Title, WSH, FSO, S1, DN, P, X64, Dr, Program, F, S, S2, WMI, Mode, Q, M
Title = " Монтирование образа на виртуальный диск "
Set A = WScript.Arguments : T = 1 : If A.Count = 0 Then T = 0 : Msg(25)
If A(0) = 1 And A.Count <> 4 Then T = 0 : Msg(26)
If A(0) = 0 Then Title = " Отключение годных виртуальных дисков "
S1 = "е" : Set WSH = CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
If A(0) = 1 Then If InStr("|ISO|CUE|NRG|MDS|MDF|CCD|IMG|",_
"|" & UCase(FSO.GetExtensionName(A(3))) & "|") = 0 Then T = 0 : Msg(27)
If WSH.Environment("System")("PROCESSOR_ARCHITECTURE") <> "x86" Then X64 = "\64"
DN = "BazisPortableCDBus" : P = WSH.ExpandEnvironmentStrings(Path)
Dr = FSO.BuildPath(P & X64, DN & ".sys")
Program = FSO.BuildPath(P, "PortableWinCDEmu.exe")
For Each F in Array(Program, Dr)
If Not FSO.FileExists(F) Then S = S & vbCr & F
Next : If InStrRev(S, vbCr) > 1 Then S1 = "ю" : S2 = "ы:"
If Not IsEmpty(S) Then T = 0 : Msg(28)
WMI = "winmgmts:{impersonationLevel=impersonate}!\\.\root\CIMV2"
If A(1) Then Mode = "Automatic" Else Mode = "Manual"
Set Q = GetObject(WMI).ExecQuery("Select * from Win32_SystemDriver WHERE Name='"&DN&"'")
If Q.Count Then
For Each Dr in Q
If Dr.Status = "Degraded" Then Msg(16)
If Dr.Started = False Then Dr.StartService
Next : Set Q = Nothing
Else
Dim D, SDriver : D = Dr
Set SDriver = GetObject(WMI & ":Win32_SystemDriver")
Dr = SDriver.Create(DN, DN, D, 2, 0, Mode)
If Dr = 23 Then
WSH.Run """" & Program & """ /uninstall", 0, True
SDriver.Delete(DN)
Dr = SDriver.Create(DN, DN, D, 2, 0, Mode) : Msg(Dr)
Else Msg(Dr) End If
If (Dr = 0 Or Dr = 6 Or Dr = 14 Or Dr = 24) And Dr <> 10 Then
With GetObject(WMI & ":Win32_SystemDriver.Name='" & DN & "'")
If .StartMode = "Disabled" Then .ChangeStartMode = Mode
Dr = .StartService : Msg(Dr)
End With
End If
End If
If A(0) Then
D = "DEFGHIJKLMNOPQRSTUVWXYZ"
For Each Dr In FSO.Drives : D = Replace(D, Dr.DriveLetter, "") : Next
If A(2) Then Dr = " " & Right(D, 1) & ":" Else Dr = " " & Left(D, 1) & ":"
WSH.Run """" & Program & """ """ & A(3) & """" & Dr & " /wait", 0, True
WSH.Popup "Образ под курсором смонтирован на диск " & Dr & " !", 2, Title
Else
WSH.Run """" & Program & """ /unmountall", 0, True
WSH.Popup "Виртуальные диски отключены!", 2, Title
End If : Quit
Sub Msg(D)
Select Case D
Case 1 M = "Запрос на создание службы драйвера не поддерживается системой."
Case 2 M = "Активный пользователь не имеет необходимых прав доступа!"
Case 6 M = "Служба драйвера не была запущена."
Case 7 M = "Служба драйвера не ответила своевременно на начало запроса."
Case 8 M = "Неизвестная ошибка при запуске службы драйвера."
Case 11 M = "База данных заблокирована для добавления новых служб."
Case 12 M = "Зависимости, на которые опирается драйвер, были удалены из системы."
Case 13 M = "Драйверу не удается найти зависимую службу."
Case 14 M = "Драйвер был отключен от системы."
Case 16 M = "Драйвер удаляется из системы. Требуется её перезапуск!"
Case 17 M = "Нет потока выполнения для службы драйвера."
Case 22 M = "Учетная запись недействительна или не имеет прав на запуск службы."
Case 24 M = "В настоящий момент служба приостановлена."
Case 25 M = "Укажите требуемые параметры!"
Case 26 M = "Необходимо указать 4 параметра!"
Case 27 M = "Данный тип файла не поддерживается!"
Case 28 M = "Отсутству" & S1 & "т файл" & S2 & S
End Select : If M <> "" Then MsgBox M, 4144, Title : Quit
End Sub : Sub Quit : If T Then WSH.Run "wmic exit", 0 End If : WScript.Quit : End Sub |
Скачать архив WinCDEmu
autorun.cfg wrote: | # Команды при завершении процесса ТС:
Pragma AutorunFinalizeSection
ShellExec /SW_HIDE /WAIT '%COMMANDER_PATH%\Utils\WinCDEmu\PortableWinCDEmu.exe' /unmountall
ShellExec /SW_HIDE /WAIT '%COMMANDER_PATH%\Utils\WinCDEmu\PortableWinCDEmu.exe' /uninstall
ShellExec /SW_HIDE reg 'delete HKLM\SYSTEM\CurrentControlSet\Services\BazisPortableCDBus /f'
# Если для драйвера будет открыт дескриптор др. процессом, то след. команда только пометит драйвер на удаление:
#ShellExec /SW_HIDE %comspec% '/c sc stop BazisPortableCDBus && sc delete BazisPortableCDBus' |
OSFMount.vbs Code: | '•••••••••••••••••••••••••••••••• VBS •••••••••••••••••••••••••••••••••
' Назначение: Смонтировать образ диска под курсором на виртуальный диск
' Отмонтировать все подключённые программой виртуальные диски
'
' Поддерживаемые форматы:
' 00n, AFD, AFF, AFM, BIN, DD, E01, IMG, ISO, NRG, S01, SDI, VHD, VMDK
'
' Условие: в папке программы должны находиться OSFMount\ и OSFMount64\,
' в каждой из которых OSFMount.com, OSFMount.exe, OSFMount.sys
'
' Параметры: 1) <отмонтировать всё/монтировать: 0/1>
' 2) <свободная буква c начала/конца: 0/1>
' 3) %V (либо полный путь к файлу-образу)
'
' Примеры: 0 | 1 1 %V
'
Option Explicit
'•••••••••••••••••••••• Путь к папке с OSFMount •••••••••••••••••••••••
Const Path = "%COMMANDER_PATH%\Utils\OSFMount"
'••••••••••••••••••••••••••••••••••••••••••••••••• Автор: Flasher © •••
Dim A, Title, WSH, FSO, S1, SF, DN, P, Dr, OCom, F, S, S2, WMI, Mode, M
Title = " Монтирование образа на виртуальный диск "
Set A = WScript.Arguments : If A.Count = 0 Then Msg(1)
If A(0) = 1 And A.Count <> 3 Then Msg(2)
If A(0) = 0 Then Title = " Отключение годных виртуальных дисков "
S1 = "е" : Set WSH = CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
If A(0) = 1 Then _
If InStr("|00N|AFD|AFF|AFM|BIN|DD|E01|IMG|ISO|NRG|S01|SDI|VHD|VMDK|",_
"|" & UCase(FSO.GetExtensionName(A(2))) & "|") = 0 Then Msg(3)
If WSH.Environment("System")("PROCESSOR_ARCHITECTURE") <> "x86" Then SF = 64
P = FSO.BuildPath(WSH.ExpandEnvironmentStrings(Path), "OSFMount" & SF) & "\"
DN = "OSFMount" : OCom = P & DN & ".com"
For Each F in Array(P & DN & ".exe", OCom, P & DN & ".sys")
If Not FSO.FileExists(F) Then S = S & vbCr & F
Next : If InStrRev(S, vbCr) > 1 Then S1 = "ю" : S2 = "ы:"
If Not IsEmpty(S) Then Msg(4)
If A(0) Then
Dim D : D = "DEFGHIJKLMNOPQRSTUVWXYZ"
For Each Dr In FSO.Drives : D = Replace(D, Dr.DriveLetter, "") : Next
If A(1) Then Dr = " " & Right(D, 1) & ":" Else Dr = " " & Left(D, 1) & ":"
WSH.Run """" & OCom & """ -a -t file -f """ & A(2) & """ -m " & Dr, 0, True
WSH.Popup "Образ под курсором смонтирован на диск " & Dr & " !", 2, Title
Else
For Each Dr In FSO.Drives
If WSH.Run("""" & Ocom & """ -l -m " & Dr, 0, True) = 0 Then _
WSH.Run """" & Ocom & """ -D -m " & Dr, 0, True
Next : WSH.Popup "Виртуальные диски отключены!", 2, Title
End If
Sub Msg(D)
Select Case D
Case 1 M = "Укажите требуемые параметры!"
Case 2 M = "Необходимо указать 3 параметра!"
Case 3 M = "Данный тип файла не поддерживается!"
Case 4 M = "Отсутству" & S1 & "т файл" & S2 & S
End Select : MsgBox M, 4144, Title : WScript.Quit
End Sub |
autorun.cfg wrote: | # Команды при завершении процесса ТС:
Pragma AutorunFinalizeSection
ShellExec /WAIT '%COMMANDER_PATH%\Scripts\OSFMount.vbs' 0
ShellExec /SW_HIDE reg 'delete HKLM\SYSTEM\CurrentControlSet\Services\OSFMount /f'
# Если для драйвера будет открыт дескриптор др. процессом, то след. команда только пометит драйвер на удаление:
#ShellExec /SW_HIDE %comspec% '/c sc stop OSFMount && sc delete OSFMount' |
_________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Last edited by Flasher on Sun Apr 03, 2016 20:41; edited 3 times in total |
|
Back to top |
|
|
Iori
Joined: 25 Apr 2012 Posts: 551
|
(Separately) Posted: Sun Mar 20, 2016 19:25 Post subject: |
|
|
Flasher
Огромное спасибо
Сейчас приболел. Сил даже нет открыть ТС.
Как отойду, буду тестировать. |
|
Back to top |
|
|
Iori
Joined: 25 Apr 2012 Posts: 551
|
(Separately) Posted: Sat Apr 02, 2016 01:56 Post subject: |
|
|
Flasher
Наконец то добрался до твоего творчества.
Всё отлично работает Вроде никаких ошибок пока не нашёл.
Проверял только OSF Mount так как он мне больше подходит.
Огромное спасибо . |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Apr 02, 2016 14:45 Post subject: |
|
|
Iori
Пожалуйста. А вообще желательно проверить и первый скрипт. WinCDEmu в отличии от OSFMount поддерживает CUE, MDS/MDF, CCD. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Iori
Joined: 25 Apr 2012 Posts: 551
|
(Separately) Posted: Sat Apr 02, 2016 23:57 Post subject: |
|
|
Flasher
Quote: | WinCDEmu в отличии от OSFMount поддерживает CUE, MDS/MDF, CCD |
Эту деталь не заметил. Тогда в комбинации с OSFmount, получается очень мощный инструмент.
Протестировал скрипт для WinCDemu. Скрипт показывает что исо имедж монтировался на букву Z:. Но в проводнике ничего не монтировано.
Использовал такую комбинацию - 1 0 1 %V
А зачем нам нужен запуск драйвера при старте ОС ?
Почему в состав входит только х32 битный BazisPortableCDBus.sys, а не оба?
Если что посоветуешь, то только смогу проверить когда вернусь домой. На работе нет админ прав . |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Apr 03, 2016 00:04 Post subject: |
|
|
Iori wrote: | А зачем нам нужен запуск драйвера при старте ОС ? | Кому нам? Есть же и другие, кроме "нас".
Iori wrote: | Почему в состав входит только х32 битный BazisPortableCDBus.sys, а не оба? | А у меня просто нет x64. Выложишь, добавлю. По всей видимости проблема с отсутствием диска отсюда и вытекает. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Iori
Joined: 25 Apr 2012 Posts: 551
|
(Separately) Posted: Sun Apr 03, 2016 01:09 Post subject: |
|
|
Quote: | По всей видимости проблема с отсутствием диска отсюда и вытекает. |
Как понимать отсутствие диска?
Quote: | Кому нам? Есть же и другие, кроме "нас". |
А, понятно тогда.
x64 выложу как приду домой. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Apr 03, 2016 01:12 Post subject: |
|
|
Iori wrote: | Как понимать отсутствие диска? | >> Iori wrote: | Но в проводнике ничего не монтировано. |
_________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Iori
Joined: 25 Apr 2012 Posts: 551
|
(Separately) Posted: Sun Apr 03, 2016 01:40 Post subject: |
|
|
Flasher
И как это решается?
Сам же WincdEmu Portable монтирует всё нормально. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Apr 03, 2016 02:00 Post subject: |
|
|
Iori
Подключением драйвера соотв. системе битности. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Iori
Joined: 25 Apr 2012 Posts: 551
|
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|