Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ShellExecute, Есть ли в Java аналог ShellExecute? 
:(
    Опции темы
ChVovan
Дата 6.9.2004, 01:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 2.4.2004

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



Есть ли в Java аналог ShellExecute?
PM MAIL   Вверх
sergejzr
Дата 6.9.2004, 01:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 6
Всего: 360





--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
ChVovan
Дата 6.9.2004, 05:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 2.4.2004

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



Спасибо. Посмотрел ссылку, все работает, но если я хочу открыть например документ Word у меня не происходит автоматического связывания документа с приложением.

Я cделал следующее:

Пишу Win программку:
Код
#include "stdafx.h"
#include "ShellApi.h"

int APIENTRY _tWinMain(HINSTANCE hInstance,
                    HINSTANCE hPrevInstance,
                    LPTSTR    lpCmdLine,
                    int       nCmdShow)
{
ShellExecute( 0, "open", lpCmdLine, NULL, NULL, SW_SHOW);
return 0;
}


И затем вызываю ее из Java:
Код

       String s = "ShellExecute.exe " + fileName;
       
       try {
           Runtime.getRuntime().exec(s);
       }
       catch (IOException e) {
           System.out.println(e.getMessage());
       }


Как это сделать не используя Win програм?
PM MAIL   Вверх
AntonSaburov
Дата 6.9.2004, 09:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 51
Всего: 118



Попробуй вот такой вариант командной строки:

start Document1.doc

Правда там надо еще с ковычками повозиться - если название из нескольких слов не всегда срабатывает.
PM MAIL WWW ICQ   Вверх
ChVovan
Дата 7.9.2004, 03:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 2.4.2004

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



"start \'" + fileName + "\'" ;
"start \"" + fileName + "\"" ;
"start " + fileName;

В таких вариантах не пашет. Как быть?
PM MAIL   Вверх
AntonSaburov
Дата 7.9.2004, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 51
Всего: 118



А удвоить слэш ты не пробовал ?
PM MAIL WWW ICQ   Вверх
LSD
Дата 7.9.2004, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


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

Репутация: 210
Всего: 538



У меня работает так:
Код
start "" "<file_name>"



--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Orange
Дата 7.9.2004, 12:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 6.9.2004
Где: Russia, Moscow

Репутация: 4
Всего: 5



и так:
Код

import java.io.*;


public class test{

public static void main(String[] args){

String startLine = "D:\\Program Files\\MS Office 2000\\Office\\winword.exe C:\\JAVA_PROJECTS\\trash\\qwert.doc";

Runtime r=Runtime.getRuntime();

try{
r.exec(startLine);
}

catch(IOException e){

System.out.println("error in "+e);
}

}

}

--------------------
Пару дней назад я познакомился с мальчиком......
PM MAIL ICQ   Вверх
AntonSaburov
Дата 7.9.2004, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 51
Всего: 118



Orange
ShellExecute интересна тем, что вызывает приложение в зависимости от типа файла. Так что твой вариант немного не туда smile.gif
PM MAIL WWW ICQ   Вверх
ChVovan
Дата 8.9.2004, 21:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 2.4.2004

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



start "" "<file_name>"
Попробовал неполучается. Может код покажите?
PM MAIL   Вверх
LSD
Дата 8.9.2004, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


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

Репутация: 210
Всего: 538



У меня работает такой код:
Код
Runtime r = Runtime.getRuntime();
try
{
 r.exec("cmd /C start \"\" \"C:\\TEMP\\Новый документ.doc\"");
}
catch(Exception e)
{
 e.printStackTrace();
}

если винда семейства 9Х, то cmd надо заменить, на command.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




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


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

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