Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как указать путь к файлу с пробелами? URL кодирование на JS 
:(
    Опции темы
starav
Дата 22.2.2005, 10:41 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Доброе время суток!
Может кто подскажет, как можно в JavaScript указать путь к файлу, если в этом пути содержатся пробелы. Например:
"C:\\Program Files\\Microsoft Office\\WINWORD.exe"
Заранее признателен и благодарен.
  Вверх
Aliance
Дата 22.2.2005, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



...Microsoft%20Office...
PM MAIL WWW ICQ Skype   Вверх
starav
Дата 22.2.2005, 16:29 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Я уже так делал, у меня ничего не получилось. Вот пример ф-ции открывающей Word:

function Welcome() {
path = "C:\\Program Files\\Microsoft Office\\Office\\WINWORD.EXE"
var WshShell = new ActiveXObject("WScript.Shell");
WshShell.Run(path,5);
}

Пишет, что не может найти файл. Хотя если поменять подставить путь на другой файл, где нет пробелов все работает прекрасно. Может кто подскажет, в чем дело?
  Вверх
Aliance
Дата 22.2.2005, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Цитата(starav @ 22.2.2005, 16:29)
path = "C:\\Program Files\\Microsoft%20Office\\Office\\WINWORD.EXE

Попробуй так smile

PM MAIL WWW ICQ Skype   Вверх
Гость_SeM
Дата 22.2.2005, 17:22 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











я тоже оч удивлен тем , почему этот объект (WScript.Shell) так не полюбил пробелы.
Но не полюбил - это факт.

попробуй так. у меня работает:

var WshShell = new ActiveXObject("WScript.Shell");
WshShell.Run('WINWORD.EXE');


  Вверх
Aliance
Дата 22.2.2005, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Гость_SeM и starav, разегистрируйтесь на нашем форуме, Вы не пожалеете smile
PM MAIL WWW ICQ Skype   Вверх
Гость_SeM
Дата 22.2.2005, 18:15 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Можно глупый вопрос.
А как вообще мог помочь "Microsoft%20Office"?? smile

Ведь "%20" перевод пробела на язык конкретно браузера ...
  Вверх
Aliance
Дата 22.2.2005, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



На сколько я знаю - это заменяет пробел в адресе путя к файлу.
К примеру напиши код с изображением из твоего Виндоуза - там пробелы будут так заменяться.
PM MAIL WWW ICQ Skype   Вверх
Гость_SeM
Дата 22.2.2005, 18:21 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











cпасибо.

эх, как много еще в мире непознанного мной smile
  Вверх
Sardar
Дата 22.2.2005, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Гость_SeM зарегистрируйся smile
Цитата
Ведь "%20" перевод пробела на язык конкретно браузера ..

Символами %число кодируются не допустимые символы в URL. Жаль что не в юникоде. Это спецификация URL(не помню номер RFC...), так в любом другом языке/окружении.
Чот бы закодировать строку можем использовать функцию escape/unescape, но не забываем, что она перекодирует все не допустимые символы, включая слеши smile Таким образом в параметрах URL можно передавать любые данные, предварительно закодировав.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
WIPS
Дата 27.7.2006, 18:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 199
Регистрация: 22.5.2006
Где: Украина, Киев

Репутация: 2
Всего: 8



И все же... заработало ли что-нибудь из вышеописанного?
Пробую так:
Код

WSH_Shell.Run('E:\\Program%20Files\\smth.exe');

и так:
Код

WSH_Shell.Run('E:\\Program\%20Files\\smth.exe');

и даже так:
Код

WSH_Shell.Run('E:\Program%20Files\smth.exe');

Результат один: "Не удается найти указанный файл" smile
Если есть пример полного пути с пробелами покажите пожалуйста? 
--------------------
Автопроизводители, машины, марки, модели!
PM MAIL WWW ICQ Skype   Вверх
Sardar
Дата 27.7.2006, 18:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



WIPS, убедись что файл существует.
Попробуй ещё:
Код
WSH_Shell.Run('E:\\Program\ Files\\smth.exe');
WSH_Shell.Run('"E:\\Program Files\\smth.exe"');


Если не поможет - пиши в саппорт мелкософта.  А вообще не серьёзно в 21 веке проблемы с пробелами имет, мелкософт вас не любит smile 


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
WIPS
Дата 27.7.2006, 19:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 199
Регистрация: 22.5.2006
Где: Украина, Киев

Репутация: 2
Всего: 8



Sardar, огромное спасибо, заработало вот это:
Код

WSH_Shell.Run('"E:\\Program Files\\smth.exe"');
.

Цитата

А вообще не серьёзно в 21 веке проблемы с пробелами имет, мелкософт вас не любит

Согласен, что не серьезно, но что поделать smile
Надеюсь теперь проблема пробелов будет решена, и человечество вздохнет с облегчением! smile
Еще раз спасибо! 
--------------------
Автопроизводители, машины, марки, модели!
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0504 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.