|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
запуск Java приложения
Всем доброго времени суток. Столкнулся с таким вопросом: в батнике есть код, который запускает Java приложение
Код:
java -Xms1024m -Xmx1024m -cp "%APPDATA%\logsfile\*" -Djava.library.path="%APPDATA%\logsfile\files" net.soft.client.progtam "Neom" Вопрос такой, как его переделать, чтобы эту программу запускать к примеру через CreateProcess ? |
#2
|
|||
|
|||
java.exe - в имя процесса,
остальное - в параметры. |
#3
|
|||
|
|||
А можно чуть по подробней, просто уже не 1 день с этим ковыряюсь, и уже как только не пробовал ...
Код:
procedure TFrame11.sButton3Click(Sender: TObject); var StartupInfo: TStartupInfo; ProcessInfo: TProcessInformation; begin FillChar(StartupInfo, sizeof(StartupInfo), 0); StartupInfo.cb := Sizeof(StartupInfo); StartupInfo.dwFlags := STARTF_USESHOWWINDOW; StartupInfo.wShowWindow := SW_SHOWNORMAL; FillChar(ProcessInfo, sizeof(ProcessInfo), 0); CreateProcess(nil, PChar('C:\Program Files\Java\jre6\bin\java.exe' + 'java -Xms1024m -Xmx1024m -cp "%APPDATA%\logsfile\*" -Djava.library.path="%APPDATA%\logsfile\files" net.soft.client.progtam "Neom"'), nil, nil, False, CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, '%APPDATA%\logsfile\', StartupInfo, ProcessInfo); end; Посоветовали вот так сделать, но вообще никакой реакции программа не подаёт ... Последний раз редактировалось JackRu, 15.04.2012 в 01:37. |
#4
|
||||
|
||||
Зачем и что это?
Код:
PChar('C:\Program Files\Java\jre6\bin\java.exe' + 'java -Xms1024m -Xmx1024m -cp "%APPDATA%\logsfile\*" -Djava.library.path="%APPDATA%\logsf ile\files" net.soft.client.progtam "Neom"'), Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#5
|
|||
|
|||
Код:
java -Xms1024m -Xmx1024m ... Так что это лишнее, спасибо ) А по поводу ковычек, как в батнике было, так всё и скопировал, т.к. батник работает на ура ... Вот что получилось, но всё равно никакой реакции, даже окно командной строки не грузится ... Код:
procedure TFrame11.sButton3Click(Sender: TObject); var StartupInfo: TStartupInfo; ProcessInfo: TProcessInformation; begin FillChar(StartupInfo, sizeof(StartupInfo), 0); StartupInfo.cb := Sizeof(StartupInfo); StartupInfo.dwFlags := STARTF_USESHOWWINDOW; StartupInfo.wShowWindow := SW_SHOWNORMAL; FillChar(ProcessInfo, sizeof(ProcessInfo), 0); CreateProcess(nil, PChar('C:\Program Files\Java\jre6\bin\java.exe' + ' -Xms1024m -Xmx1024m -cp "%APPDATA%\logsfile\*" -Djava.library.path="%APPDATA%\logsfile\files" net.soft.client.progtam "Neom"'), nil, nil, False, CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, '%APPDATA%\logsfile\', StartupInfo, ProcessInfo); end; |
#6
|
||||
|
||||
Кавычки в батнике и в Дельфи интерпретируются несколько по-разному.
Код:
PChar('C:\Program Files\Java\jre6\bin\java.exe' + ' -Xms1024m -Xmx1024m -cp "%APPDATA%\logsfile\*" -Djava.library.path="%APPDATA%\logsfile\files" net.soft.client.progtam "Neom"'), Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#7
|
|||
|
|||
По поводу progtam, это так и есть ...
А сможете мне помочь разобраться с кавычками, что в них не так ? |
#8
|
||||
|
||||
Я не уверен, что строка должна быть записана так, но чтобы проверить нужно что-нибудь запустить на java. Придумать бы что.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#9
|
||||
|
||||
В начале строки исправьте
Код:
PChar('C:\Program Files\Java\jre6\bin\java.exe' + Код:
PChar('"C:\Program Files\Java\jre6\bin\java.exe"' + Начинающий программист уверен, что в 1 килобайте 1000 байт.
Законченный программист уверен, что в 1 километре 1024 метра. |
#10
|
|||
|
|||
Всем спасибо за помощь, ошибка была в том, что не правильно указывал ссылку на приложение ))
|