Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.118.2.15] |
|
Сообщ.
#1
,
|
|
|
Доброго времени суток. Не так давно мне пришлось работать с apktool (возьмём её для примера) - консольная утилита для дизассемблера файлов '.apk'. Ключевое слово - консольная. Я хочу сделать свою программу похожей на apktool. Я мог бы создать своё простое консольное приложение, но я хочу, чтобы оно работало в стандартной консоли. То есть открываешь командную строку, наводишь на нужную папку, набираешь 'apktool app.apk' и оно ещё и выводит какой-то ответ. Или устанавливаешь apktool.bat в system32, но не суть.
Как выглядит apktool: aoktool.jar и apktool.bat. apktool.bat файл, как я понял, просто передаёт джава-машине аргумент apktool.jar и следующие за ним идущие. Тут я ещё могу понять: создаём процесс без окна и он делает какую-то работу. Допустим. Но как вывести какие-то данные в консоль? Информации в интернете про "консольное приложение" пруд-пруди, но это всё ещё отдельное приложение. Как называется такая работа через консоль? В какую сторону гуглить? Это вообще приложение? Может ли это приложение хранить что-то в оперативной памяти или оно обязательно должно закончится? Если так, когда происходит закрытие приложения? При выходе из папки? Если кто-то кинет пример на Си, буду очень благодарен. Содержание apktool.bat гуглиться очень легко. Заранее спасибо. |
Сообщ.
#2
,
|
|
|
k.sovailo
Странный вопрос, учитывая что " Я хочу сделать свою программу похожей". При создании приложения в том-же IDE нужно выбрать тип приложения - консольный или оконный. Консольный по сути как для старого DOS'а, имею в виду вывод на экран Прикреплённый файлconsole.png (32,15 Кбайт, скачиваний: 456) |
Сообщ.
#3
,
|
|
|
^D^ima, наверное я всё-таки не так выразился. То, что вы предлагаете, - это консольное приложение, с ним у меня трудностей не возникает. Я же говорю о приложении (или не приложении, не знаю), которое работает в стандартной консоли. Скриншот я прикрепил. Обратите внимания, запущена cmd.exe. Ну ладно с запуском приложения подобным образом я разберусь, как оно выводит что-то в консоль? Консоль вообще на весь Windows одна-единственная или нужно получать какой-то идентификатор этого окна консоли? В общем, не могу понять.
Прикреплённый файлcmd_min.jpg (139,92 Кбайт, скачиваний: 456) |
Сообщ.
#4
,
|
|
|
Цитата k.sovailo @ Обратите внимания, запущена cmd.exe Дык ты его вручную запустил и запустил там apktool. И почему ты думаешь что apktool не консольное приложение? Любое консольное приложение ведет себя как apktool. Будет висеть в процессах и выводить туда, откуда запущено. |
Сообщ.
#5
,
|
|
|
^D^ima написал самую простую программу на Делфи. И оно открывает новое окно и там выводит текст, как и ожидалось. Может дело в каких-то настройках?
Добавлено позже: на С++ то же самое (ну вдруг, надо было проверить) Прикреплённый файлcmd.jpg (84,12 Кбайт, скачиваний: 485) |
Сообщ.
#6
,
|
|
|
Жесть. start убери.
Запускай просто Myola_Console.exe |
Сообщ.
#7
,
|
|
|
Действительно. Неудобно как-то получилось. Спасибо.
|