Форум программистов, компьютерный форум, киберфорум
Наши страницы

Delphi для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.73
Shouldercannon
2 / 2 / 1
Регистрация: 25.05.2010
Сообщений: 113
#1

Не могу запустить *.cmd через свою программу - Delphi

22.09.2010, 01:17. Просмотров 1921. Ответов 6
Метки нет (Все метки)

Пытаюсь запустить из своей программы *.com со следующим содержимым
Код
@ECHO OFF
title jImBot 0.4.0 MOD dimaX VS warik
mode con cp select=1251
echo ---------------------------
java -jar modJB.jar
Так запускается нормально
Delphi
1
2
3
4
procedure TForm1.FormCreate(Sender: TObject);
begin
  ShellExecute(0, 'open', PChar(ExtractFilePath(Application.ExeName) + 'Start.cmd'), nil, nil, SW_SHOW); или ShellExecute(Handle, 'open', PChar(ExtractFilePath(Application.ExeName) + 'Start.cmd'), nil, nil, SW_RESTORE);
end;
Если я указываю полный путь
Delphi
1
2
3
4
procedure TForm1.FormCreate(Sender: TObject);
begin
  ShellExecute(0, 'open', 'D:\AppServ\www\Start.cmd'), nil, nil, SW_SHOW); или ShellExecute(Handle, 'open', 'D:\AppServ\www\Start.cmd'), nil, nil, SW_RESTORE);
end;
то не запускается, только окно Start.com покажется и тут же исчезнет.
В чём ошибка?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2010, 01:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не могу запустить *.cmd через свою программу (Delphi):

Как запустить программу через свою? - Delphi
Как запустить прочую программу по нажатии кнопки ? unit Unit1; interface uses Windows, Messages, SysUtils, Variants,...

Как через свою программу запустить другую от имени админа? - Delphi
Как через свою программу запустить другую от имени админа? Ну что бы вылезло окно подтверждения.

Как запустить свою программу вместо Explorer.exe - Delphi
Здравствуйте всем!!! Помогите решить одну задачку, вот тут нужно исправить, как указать свой проект который в C:\Progi\Project1.exe в ...

Запустить свою программу с ключом с выводом результатов в файл - Delphi
Всем доброго времени суток! Есть код скрипта delphi в Altium Designer, мне требуется в этом коде запустить свою программу с ключом,...

Управление отдельного окна программы через свою программу - Delphi
Всем привет, у меня есть программа очень схожая с Delphi хочу попробовать как нибудь через свою программу управлять этой программой а это...

Не могу запустить программу - Delphi
Знакомый программист помог мне в учебе и написал программу, отправив мне ее в текстовом документе. Не могу ее запустить в Delphi7. Сразу же...

6
Xander Bass
Йошь-мыслитель
121 / 115 / 6
Регистрация: 22.02.2009
Сообщений: 675
Записей в блоге: 5
22.09.2010, 01:39 #2
Скорее всего ты что-то напутал в указании полного пути.
0
Shouldercannon
2 / 2 / 1
Регистрация: 25.05.2010
Сообщений: 113
22.09.2010, 04:11  [ТС] #3
Если бы я напутал, то ничего не было бы. А так нужный *.cmd запускается и тутже закрывается.
0
dampir_sanek
150 / 148 / 21
Регистрация: 09.02.2010
Сообщений: 407
22.09.2010, 08:18 #4
Проверил у себя. если добавить сюда команду pause, т.е.
Код
@ECHO OFF
title jImBot 0.4.0 MOD dimaX VS warik
mode con cp select=1251
echo ---------------------------
java -jar modJB.jar
pause
то все работает и для первого способа и для второго. если pause нет, то в обоих случаях окно появляется и тут же пропадает.
0
Shouldercannon
2 / 2 / 1
Регистрация: 25.05.2010
Сообщений: 113
22.09.2010, 15:01  [ТС] #5
Цитата Сообщение от dampir_sanek Посмотреть сообщение
Проверил у себя. если добавить сюда команду pause, т.е.
Код
@ECHO OFF
title jImBot 0.4.0 MOD dimaX VS warik
mode con cp select=1251
echo ---------------------------
java -jar modJB.jar
pause
то все работает и для первого способа и для второго. если pause нет, то в обоих случаях окно появляется и тут же пропадает.
Стало лучше, но теперь другая ошибка
Unable to access jarfile modJB.jar
Для продолжения нажмите любую клавишу . . .


Добавлено через 30 минут
Не успел отредактировать.
Теперь Start.com выглядит так
Код
title jimBot 0.4.0 MOD dimaX VS warik
mode con cp select=1251
java -jar modJB.jar
pause
Путь до Start.com указан правельно, но при запуске Start.com по данному пути появляется ошибка:
D:\Server CMS Icq>title jimBot 0.4.0 MOD dimaX VS warik

D:\Server CMS Icq>mode con cp select=1251

Состояние устройства CON:
--------------------------
Строки: 300
Столбцы: 80
Скорость клавиатуры: 31
Задержка клавиатуры: 1
Кодовая страница: 1251


D:\Server CMS Icq>java -jar modJB.jar
Unable to access jarfile modJB.jar

D:\Server CMS Icq>pause
Для продолжения нажмите любую клавишу . . .

В D:\Server CMS Icq лежит сама запускающая программа, а не modJB.jar. Из-за чего так получается?
0
Somebody
2791 / 1602 / 148
Регистрация: 03.12.2007
Сообщений: 4,200
Завершенные тесты: 1
22.09.2010, 18:37 #6
Пятый параметр ShellExecute - текущая папка, если nil, значит будет та же, что и в твоей проге. Надо или передавать путь в ShellExecute, или чтобы bat менял папку на ту, в которой находится
Код
%~d0
cd %~p0
0
Shouldercannon
2 / 2 / 1
Регистрация: 25.05.2010
Сообщений: 113
22.09.2010, 20:09  [ТС] #7
Спасибо, помогло
0
22.09.2010, 20:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2010, 20:09
Привет! Вот еще темы с ответами:

Не могу запустить программу - Delphi
Всем привет,пожалуйста помогите не могу завести программу уже не знаю что и делать выходит Фатальная ошибка UDM.pas(98) ...

Не могу запустить программу на другой машине - Delphi
Здравствуйте! Применяю в своей программе OPC client "prOPC Client". На машине где разрабатывается программа все работает как часы......

Не могу запустить программу написанную на Borland Delphi 7.0 - Delphi
Не могу запустить программу написанную на Borland Delphi 7.0. при запуске ругается на uses Classes, Controls, IWControl, IWExtCtrls,...

не могу нормально запустить программу. Точнее запускается, но не работает ( - Delphi
unit Laba3; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,ExtCtrls,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.