Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.04.2010, 14:01
Новичок на форуме
Отправить личное сообщение для Klikujiskaaan Посмотреть профиль Найти все сообщения от Klikujiskaaan
 
Регистрация: 04.04.2010
Сообщений: 4

Выбор программы для открытия файлов с помощью js
Добрый день, коллеги.
Столкнулся с такой проблемой: на работе js используют для создания визардов под большой win проект и есть задача "если файл не excel xml - показывать окно выбора программы для открытия файла" (стандартное окошко винды, когда пытаешься открыть файл не ассоциированный ни с чем). Облазил кучу форумов, но нигде не нашел ничего подходящего. Может кто поможет, буду очень признателен.
Фрагмент кода (если файл без ассоциации - просто влетает окошко "файл ни с чем не ассоциирован, страдайте"):
FilePath = Params.GetParameter("Publish2Excel/FilePath").Value;
var objShell = new ActiveXObject("Shell.Application");
var OProgr = "Excel";
try
{
	var excel = new ActiveXObject("Excel.Application");
}
	catch(e)
{
	OProgr = FilePath;
}
objShell.ShellExecute(OProgr, '\"' + FilePath + '\"', "", "open", 1);
Ответить с цитированием
  #2 (permalink)  
Старый 04.04.2010, 16:27
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Через жопу, но хоть что-то:
var WshShell = WScript.CreateObject('WScript.Shell');
WshShell.Run('explorer /select, C:\\test.hz');
WScript.Sleep(100);
WshShell.SendKeys(' ~');

Последний раз редактировалось Riim, 04.04.2010 в 16:34.
Ответить с цитированием
  #3 (permalink)  
Старый 04.04.2010, 16:46
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Пля, замаялся в InvokeVerb всякие 'open' и 'doubleclick' добавлять, оказывается надо просто без параметров запускать, рабочий пример:

WScript.CreateObject("Shell.Application").NameSpace('C:\\').ParseName('test.hz').InvokeVerb();

Последний раз редактировалось Riim, 04.04.2010 в 16:48.
Ответить с цитированием
  #4 (permalink)  
Старый 04.04.2010, 16:51
Новичок на форуме
Отправить личное сообщение для Klikujiskaaan Посмотреть профиль Найти все сообщения от Klikujiskaaan
 
Регистрация: 04.04.2010
Сообщений: 4

Эх, пишет что "WScript - определение отсутствует", объект типа WScript.Shell позволяет создать через ухо так: WshShell = new ActiveXObject("WScript.Shell");...
Ответить с цитированием
  #5 (permalink)  
Старый 04.04.2010, 16:58
Новичок на форуме
Отправить личное сообщение для Klikujiskaaan Посмотреть профиль Найти все сообщения от Klikujiskaaan
 
Регистрация: 04.04.2010
Сообщений: 4

Ae, Riim благодарствую.

var objShell = new ActiveXObject("Shell.Application");
objShell.NameSpace('C:\\').ParseName('test.hz').InvokeVerb();
Ответить с цитированием
  #6 (permalink)  
Старый 04.04.2010, 17:07
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Сообщение от Klikujiskaaan
WScript - определение отсутствует
можно поменять расширение с html на hta: http://habrahabr.ru/blogs/javascript/40707/
Ответить с цитированием
  #7 (permalink)  
Старый 04.04.2010, 17:11
Новичок на форуме
Отправить личное сообщение для Klikujiskaaan Посмотреть профиль Найти все сообщения от Klikujiskaaan
 
Регистрация: 04.04.2010
Сообщений: 4

тут вообще xml файл, которые потом парсится =)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[вопросы] плагины для jquery для мультизагрузки файлов ffx jQuery 6 23.03.2010 14:17
Оптимальный выбор браузера для интранет-сайта frid-karatel Javascript под браузер 12 29.12.2009 10:19
Js блокирует выбор в IE. Garipov72 Javascript под браузер 0 29.11.2009 09:53
Что выбрать XML или JSON для передачи Ajax - ом из PHP в JS Gozar Общие вопросы Javascript 20 16.08.2009 23:36
Нужно с помощью JS записывать данные в БД d!mm Общие вопросы Javascript 2 01.11.2008 18:36