1

(22 відповідей, залишених у Java)

ну окей
програму я запустив, а як передати аргумменти то?
в ProcessBuilder є метод, але як це звязати?

2

(22 відповідей, залишених у Java)

да да да да *YAHOO*

Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL "+ "D:\\Roctik\\Roctik.exe");

3

(22 відповідей, залишених у Java)

reverse2500 написав:

ProcessBuilder

мабуть сама назва говорить сама за себе, що потрібно створити лиш сам процес
а пробували open() метод ? Я вище писав, ще давали приклад з exec()

калькулятор відкриває *SCRATCH*
зарас спробую

4

(22 відповідей, залишених у Java)

як тут скрін скинути? :)

5

(22 відповідей, залишених у Java)

reverse2500 написав:

а може JNI допоможе в цьому випадку ? Як раз для цього і створено щоб JAVA працювала з іншимим мовами програмування

навряд чи, мені нада саме запустити .ехе, а не використовувати код с++
воно ж процес створює, не розумію чому саме сама програма не запускається...
мож її десь в проект кинути? або навіть не знаю що...

6

(22 відповідей, залишених у Java)

Process p = Runtime.getRuntime().exec("D:\\Кросплатформа\\Tic-Tac-Toe\\src\\Roctik.exe" );
тільки створює процес, але запущену програму я не бачу

7

(22 відповідей, залишених у Java)

P.Y. написав:

1) Java-програма передаватиме туди вхідні дані й забиратиме вихідні, використовуючи потоки, користувач при цьому самої консолі не бачить. (Здається, цей варіант реалізувати простіше).

от саме це мені і потрібно, але для цього нада ту консоль скрити, або просто свернути
щоб було простіше зрозуміти
минулого року написав курсову роботу, хрестики-нулики(С++, з використанням OpenGL, в консоль вводиться розмірність ігрового поля, імена гравців і т.д.)
цей рік вирвав собі таку ж саму тему але реалізувати на Java
переробляти мені лінь, та і часу немає
тому створив у джаві фрейм, там ті всі параметри вводяться, вот і їх мені нада передати в ту консоль
доречі...
ось це не коректно якось працює..., процес створюється, а от на моніторі нічого не бачу, просто тупо процес створений є

Process processBuilder = new ProcessBuilder("адреса\\Roctik.exe").start();

Ту є 2 варіанти:
1) Використовувати як повністю зовнішній застосунок. Запускаєте через exec той си додаток (що відповідає виклику через cmd/bash)  й обробляти його відповідь у консоль (http://stackoverflow.com/a/4741987) або зробити відповідь у файл і зчитувати у джаві.
2) Повна зв'язаність того коду з джавовим через JNI, тільки це ще більше геморою принесе, ніж переписати код на джаві.

8

(22 відповідей, залишених у Java)

мені ще от так підсказали

Process process = new ProcessBuilder("C:\\PathToExe\\MyExe.exe","param1","param2").start();

9

(22 відповідей, залишених у Java)

ок, розберусь наверно

10

(22 відповідей, залишених у Java)

Відстежити закриття програми також можна за допомогою цього всього?)

11

(22 відповідей, залишених у Java)

reverse2500 написав:

rundll32 підійде ?
і взагалі шо за ОС, шо за фреймворк, яка ситуація, ато таке враження, скріпткідс вирішив шось взламати і не знає як запитати

windows 10
ситуацію я зверху пояснив)) лінь знов хрестики нолики писати
rundll32? хммм нада погуглити
можна якиїсь приклад?)

12

(22 відповідей, залишених у Java)

і чому б не навчитись чогось нового))))

13

(22 відповідей, залишених у Java)

Master_Sergius написав:

По-моєму, це все ж ускладнення життя. Може просто ctrl+c, ctrl+v? (ну чи ctrl+ins, shift+ins)

нііі, так не проканає
детальніше, у мене  курсова робота минулого року була, написати хрестики нулики на безмежному полі(с++)
таку ж тему вихватив собі і на java
так як програмісти люди ліниві, я вирішив нічого не трогати а просто передати аргументи з фрейму в ту прогу, вот і все

14

(22 відповідей, залишених у Java)

Привіт всім
вирішив не ускладнювати собі життя(да да, думаю що то реально зробити) зарас поясню в чому суть питання
є у мене програма, написана на с++(консоль), мені потрібно передати дані з фрейму(при натиску на кнопку) в ту  консоль
це взагалі можливо зробити?

15

(12 відповідей, залишених у Java)

FakiNyan написав:

фігово, тоді чекайте на того, хто шарить в цьому, або гугліть подібну проблему
можете ще на стековерфлоу створити таку саму тему, там швидко відповідають

та поки консольно зроблю все, з графікою пограюсь потім))
гарно дякую

16

(12 відповідей, залишених у Java)

FakiNyan написав:

зробіть сигнатуру отого метода отакою

@Override 
    public void paintComponent(Graphics g) {

нічого не змінюється...ех

17

(12 відповідей, залишених у Java)

FakiNyan написав:

а ось це виводиться при натисненні на кнопку миші?

System.out.print(e.getX() / 30);
                System.out.println((e.getY() / 30) - 1);

так

18

(12 відповідей, залишених у Java)

FakiNyan написав:

виведіть щось в консоль перед малюванням самої лінії

*SCRATCH* хммм не виводить в консоль нічо

19

(12 відповідей, залишених у Java)

FakiNyan написав:

спробуйте тако

g2.draw(new Line2D.Double(x1, y1, x2, y2));

неа))
не малює

20

(12 відповідей, залишених у Java)

FakiNyan написав:

Чому?

а просто не малюється і все, без помилок без нічого, просто не малюється