Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Кавычки и переменные среды

Ответить
Настройки темы
VBS/WSH/JS - [решено] Кавычки и переменные среды

Новый участник


Сообщения: 16
Благодарности: 1


Конфигурация

Профиль | Отправить PM | Цитировать


Здравствуйте. Проблема в названии темы.

Код: Выделить весь код
Set FSO = CreateObject("Scripting.FileSystemObject")
Set oShell = CreateObject("WScript.Shell")
Set WshShell = WScript.CreateObject("WScript.Shell")
Const OverwriteExisting = True
'Место копирования
progdir = oShell.ExpandEnvironmentStrings ("%APPDATA%\My First Program\")
'Исходный файл
progfile1 = ".\Setup.exe"
'Конечный файл
progfile2 = progdir & "Setup.exe"
'Копирование
FSO.CopyFile progfile1, progfile2, OverwriteExisting
'Запускаем Setup.exe
WshShell.Run progfile2, 1, False
Рядом со скриптом лежит Setup.exe, его нужно поместить по адресу "%APPDATA%\My First Program\" и запустить.
Установщик помещается туда куда нужно, но не стартует.
Как правильно расставить кавычки?

P.S.: Будем считать что такая директория "%APPDATA%\My First Program\" существует.

Отправлено: 23:23, 24-02-2013

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
Option Explicit

Dim strFileName
Dim strSourceFile
Dim strDestFolder


strFileName   = "Setup.exe"

With WScript.CreateObject("Scripting.FileSystemObject")
	strSourceFile = .BuildPath(.GetParentFolderName(WScript.ScriptFullName), strFileName)
	strDestFolder = .BuildPath(WScript.CreateObject("Shell.Application").NameSpace("shell:appdata").self.Path, "My First Program")
	
	If .FileExists(strSourceFile) Then
		If .FolderExists(strDestFolder) Then
			.CopyFile strSourceFile, strDestFolder & "\", True
			WScript.CreateObject("WScript.Shell").Run """" & .BuildPath(strDestFolder, strFileName) & """", 1, False
		Else
			WScript.Echo "Destination folder [" & strDestFolder & "] not found."
		End If
	Else
		WScript.Echo "Source file [" & strFile & "] not found."
	End If
End With

WScript.Quit 0
Это сообщение посчитали полезным следующие участники:

Отправлено: 00:05, 25-02-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 16
Благодарности: 1

Профиль | Отправить PM | Цитировать


Iska , спасибо что помогаете, но не могли бы вы на пальцах объяснить про скобки и экранирование? Где мой косяк?
Ведь в моём варианте, он делает почти всё правильно, за исключением того, что не запускается.

Отправлено: 03:03, 25-02-2013 | #3


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Скобки не при чём. Экранирования в VBScript нет — незачем: нет обработчика, ничего не надо и экранировать. Дело в пробелах в пути к файлу:
Код: Выделить весь код
WScript.CreateObject("WScript.Shell").Run """" & .BuildPath(strDestFolder, strFileName) & """", 1, False
Это сообщение посчитали полезным следующие участники:

Отправлено: 03:32, 25-02-2013 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Кавычки и переменные среды

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
(статья) Переменные среды Vadikan Автоматическая установка Windows 2000/XP/2003 42 04-04-2015 15:57
Разное - Переменные среды (TEMP, TMP) timotv Microsoft Windows 8 и 8.1 24 03-02-2013 16:40
Разное - Переменные среды ошибка ilnurasaev Microsoft Windows Vista 0 20-09-2012 22:52
C/C++ - [решено] Переменные среды O L E G Программирование и базы данных 4 18-06-2012 12:41
Переменные среды и пути ярлыков Igor99999 Microsoft Windows 2000/XP 0 22-05-2007 16:39




 
Переход