|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Запуск cmd команды в Delphi
Всем доброго времени суток, в общем, имеется команда для консольной командной строки windows с переменной login, возможно ли запустить ее в таком же виде через приложение Delphi, введя эту переменную в самом приложении?
Код:
javaw -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true -Xmx1G -Djava.library.path="%appdata%\.darkore\versions\1.6.4-Forge9.11.1.945\natives" -cp "%appdata%\.darkore\libraries\net\minecraftforge\minecraftforge\9.11.1.945\minecraftforge-9.11.1.945.jar";"%appdata%\.darkore\libraries\net\minecraft\launchwrapper\1.8\launchwrapper-1.8.jar";"%appdata%\.darkore\libraries\org\ow2\asm\asm-all\4.1\asm-all-4.1.jar";"%appdata%\.darkore\libraries\net\sf\jopt-simple\jopt-simple\4.5\jopt-simple-4.5.jar";"%appdata%\.darkore\libraries\lzma\lzma\0.0.1\lzma-0.0.1.jar";"%appdata%\.darkore\libraries\net\sf\jopt-simple\jopt-simple\4.5\jopt-simple-4.5.jar";"%appdata%\.darkore\libraries\com\paulscode\codecjorbis\20101023\codecjorbis-20101023.jar";"%appdata%\.darkore\libraries\com\paulscode\codecwav\20101023\codecwav-20101023.jar";"%appdata%\.darkore\libraries\com\paulscode\libraryjavasound\20101123\librfile:///C:/Documents%20and%20Settings/%D0%A1%D0%BE%D1%82%D1%80%D1%83%D0%B4%D0%BD%D0%B8%D0%BA/%D0%A0%D0%B0%D0%B1%D0%BE%D1%87%D0%B8%D0%B9%20%D1%81%D1%82%D0%BE%D0%BB/se_wde000201.pngaryjavasound-20101123.jar";"%appdata%\.darkore\libraries\com\paulscode\librarylwjglopenal\20100824\librarylwjglopenal-20100824.jar";"%appdata%\.darkore\libraries\com\paulscode\soundsystem\20120107\soundsystem-20120107.jar";"%appdata%\.darkore\libraries\org\lwjgl\lwjgl\lwjgl\2.9.0\lwjgl-2.9.0.jar";"%appdata%\.darkore\libraries\org\lwjgl\lwjgl\lwjgl_util\2.9.0\lwjgl_util-2.9.0.jar";"%appdata%\.darkore\libraries\argo\argo\2.25_fixed\argo-2.25_fixed.jar";"%appdata%\.darkore\libraries\org\bouncycastle\bcprov-jdk15on\1.47\bcprov-jdk15on-1.47.jar";"%appdata%\.darkore\libraries\com\google\guava\guava\14.0\guava-14.0.jar";"%appdata%\.darkore\libraries\org\apache\commons\commons-lang3\3.1\commons-lang3-3.1.jar";"%appdata%\.darkore\libraries\commons-io\commons-io\2.4\commons-io-2.4.jar";"%appdata%\.darkore\libraries\net\java\jinput\jinput\2.0.5\jinput-2.0.5.jar";"%appdata%\.darkore\libraries\net\java\jutils\jutils\1.0.0\jutils-1.0.0.jar";"%appdata%\.darkore\libraries\com\google\code\gson\gson\2.2.2\gson-2.2.2.jar";"%appdata%\.darkore\libraries\org\scala-lang\scala-library\2.10.2\scala-library-2.10.2.jar";"%appdata%\.darkore\versions\1.6.4-Forge9.11.1.945\1.6.4-Forge9.11.1.945.jar" net.minecraft.launchwrapper.Launch --username "%login%" --session 123456789 --version Forge9.11.1.945 --gameDir "%appdata%\.darkore" --assetsDir "%appdata%\.darkore\assets" --tweakClass cpw.mods.fml.common.launcher.FMLTweaker Последний раз редактировалось IRorshachI, 12.11.2013 в 06:07. |
#2
|
|||
|
|||
А что, все это безобразие засунуть в .bat файл и запустить уже его религия не позволяет? Переменную можно в таком случае передавать как параметр этого файла.
|
#3
|
|||
|
|||
Цитата:
Это и так сейчас находится в батнике с вводом этой переменной, мне нужно приложение. Последний раз редактировалось IRorshachI, 12.11.2013 в 07:04. |
#4
|
|||
|
|||
Цитата:
Ну, читай про ShellExecute. Но у тебя больно длинный CLASS_PATH... не знаю, съест его в параметрах эта функция. Ну и %login% придется инстанциировать в программе в строке. В остальном должно работать. Но я бы сделал через батник, проще будет. Просто из своей программы через тот же ShellExecute будешь запускать не эту безумную строку, а батник, передавая ему login как параметр (внутри батника его надо будет из параметра запихнуть в соотв. переменную). Ну и в этом случае можно будет убрать CLASS_PATH в отдельную переменную. Будет проще отлаживать. Да и, я подозреваю, что и сам CLASS_PATH можно почистить. Вроде как не обязательно указывать отдельные jar'ы, можно сослаться на директорию. |
#5
|
|||
|
|||
Спасибо, но, в принципе, я уже сам догнал, попробую запихнуть эту команду в переменную, дальше поставить переменную логина, а остаток команды в следующую переменную и привязать к кнопке команду на выполнение: WinExec(PansiChar(a1,login,a2), SW_Hide);
Теоретически, должно работать. Последний раз редактировалось IRorshachI, 12.11.2013 в 10:25. |