Показать полную графическую версию : [решено] Переменные среды на CD\DVD
теперь все заработало!!! »
Ну, и славненько ;).
Теперь как прикрутить сохранение к этому? Например чтоб при нажатии на кнопку выскакивало диалоговое окно проводника с предложением сохранить папку с имеющимся названием на HDD »
Ничего не понял. Поясните.
сделал я отдельную кнопку "сохранить на диск" - при ее нажатии запускается скрипт который вызывает окно проводника с предложением куда сохранить папку в которой расположен наш исполняемый файл(OneVolumeViewer.exe)
Tier2, я не пойму тут две вещи: первое — что значит «сохранить папку», второе — что требуется сделать.
попытаюсь объяснить - у нас есть папка в корне CD диска (эта та папка в которой расположен наш OneVolumeViewer.exe) , при нажатии на кнопку в меню авторана "сохранить на диск" - выскакивает окно с вопросом или окно проводника с вопросом "Куда" сохранять (скопировать) данную папку например типа такого:
http://s6.hostingkartinok.com/uploads/images/2013/08/49d1380972c94f50ac52b7bdb0156d28.png (http://hostingkartinok.com)
Папка со всем ее содержимым копируется на жесткий диск по нажатии "Копировать" после указания пути
Tier2, ясно. Ну, а вопрос-то в чём? Что-то не работает?
Нужен сам скрипт))) »
А… :(.
С этим будут проблемы — окно обзора папок будет появляться на заднем плане:
Option Explicit
Const strFileName = "OneVolumeViewer.exe"
Const EditBox = &H10
Dim strSourceFolder
Dim objShell
Dim objDestFolder
strSourceFolder = FindFolderForFile()
If Not IsEmpty(strSourceFolder) Then
Set objShell = WScript.CreateObject("Shell.Application")
Set objDestFolder = objShell.BrowseForFolder(0, "Select destination folder to copy", EditBox)
If Not objDestFolder Is Nothing Then
WScript.Echo objDestFolder.self.Path
objDestFolder.CopyHere objShell.NameSpace(strSourceFolder)
End If
Else
WScript.Echo "Can't find source folder for [" & strFileName & "]."
End If
WScript.Quit 0
Function FindFolderForFile()
Dim objFolder
With WScript.CreateObject("Scripting.FileSystemObject")
For Each objFolder In .GetDrive(.GetDriveName(WScript.ScriptFullName)).RootFolder.SubFolders
If .FileExists(.BuildPath(objFolder.Path, strFileName)) Then
FindFolderForFile = objFolder.Path
Exit For
End If
Next
End With
End Function
Iska низкий Вам поклон!!! Все работает - это то что нужно, только вот одна загвоздка - как убрать всплвыющее окно подтверждения после нажатия кнопки "Копировать"?
http://s3.hostingkartinok.com/uploads/images/2013/08/963494e5d2c968513de97d2cba7b0d84.png (http://hostingkartinok.com)
только как убрать всплвыющее окно после нажатия кнопки "Копировать"? »
Чем не нравится? Стиль Проводника.
Если совсем не хочется видеть прогресс:
objDestFolder.CopyHere objShell.NameSpace(strSourceFolder), 4
Дабы дополнительно перезаписывал существующие объекты без запросов:
objDestFolder.CopyHere objShell.NameSpace(strSourceFolder), 4 + 16
Цитата Iska:
Чем не нравится? Стиль Проводника. »
Это пять балов! Под столом)
Вы меня немного не поняли - я не имел ввиду сам прогресс копирования, я имел ввиду, что после выбора папки куда копировать появляется вышеуказанное окно и пока не нажмешь "ОК" копирование не пойдет. Так вот как это окно пропустить или исключить вообще
Tier2, когда писал, ещё не видел Вашей правки — скриншота — и потому понял Вас неверно.
Это я пропустил отладочное сообщение. Просто удалите строку:
WScript.Echo objDestFolder.self.Path
из кода. Приношу свои извинения.
Iska, приогромнейшее Вам спасибо за помощь - будете в Харькове с меня пиво. Вы мне помогли решить все проблемы. Еще раз спасибо и низкий Вам поклон
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.