Форум программистов, компьютерный форум CyberForum.ru

ShellExecute WinExec .... - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 26, средняя оценка - 4.96
MelKiY
-121 / 2 / 1
Регистрация: 20.09.2009
Сообщений: 101
08.03.2011, 05:41     ShellExecute WinExec .... #1
Привет всем )

у меня появилать очень интересная проблема с WinExec и ShellExecute

Вот я запукаю с помощю программы bat файл который находется в соседей папке
этот bat файл должен запускать hlds.exe (CS 1.6 Server) в консольном режиме.

проблема в том что всё время пишет hlds.exe не является внешней или внутренней программой...

я уже пробавал и так и сяк ничего не работает

C++
1
2
3
4
5
ShellExecute(Handle,"open","melkiy\\Server\\Server.bat",0,0,SW_SHOWNORMAL);
ShellExecute(Handle,"open",".\\melkiy\\Server\\Server.bat",0,0,SW_SHOWNORMAL);
system("melkiy\\Server\\Server.bat");
WinExec("\\melkiy\\Server\\Server.bat",SW_SHOWNORMAL);
WinExec("melkiy\\Server\\Server.bat",SW_SHOWNORMAL);
C++
1
2
3
ShellExecute(Handle,"open","C:\\Users\\Desktop\\ME\\melkiy\\Server\\Server.bat",0,0,SW_SHOWNORMAL);
system("C:\\Users\\Desktop\\ME\\melkiy\\Server\\Server.bat");
WinExec("C:\\Users\\Desktop\\ME\\melkiy\\Server\\Server.bat",SW_SHOWNORMAL);
всё время везде одно и тоже :/

я пытался запустить программно сам HLDS.exe И НИ**** (ОшИбКа) :/

pliz прошу помощи ( Win 7 x86 / C++ Builder 6 )

Добавлено через 54 минуты
файл может запуститься только тогда когда моя программа лежит в тойже папке что и запускаемый файл
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
bigredcat
364 / 311 / 3
Регистрация: 24.02.2011
Сообщений: 1,512
Записей в блоге: 1
08.03.2011, 06:12     ShellExecute WinExec .... #2
этот bat файл должен запускать hlds.exe
проблема в том что всё время пишет hlds.exe не является внешней или внутренней программой
У вас проблема в файле Server.bat, а вы тут зачем то вы тут код C++ показываете
MelKiY
-121 / 2 / 1
Регистрация: 20.09.2009
Сообщений: 101
08.03.2011, 16:31  [ТС]     ShellExecute WinExec .... #3
Цитата Сообщение от bigredcat Посмотреть сообщение
этот bat файл должен запускать hlds.exe
проблема в том что всё время пишет hlds.exe не является внешней или внутренней программой
У вас проблема в файле Server.bat, а вы тут зачем то вы тут код C++ показываете
я же говарю что проблема в том что BAT файл не запускается правильно ЕСЛИ програма моя не лежит рядом в тойже ПАПКЕ!
я показал код для того что бы его исправили! если что - то не то!

у меня был подобный случай с LUA сервером,Server.EXE лежит в C:\Windows\System32 рядом с ним лежит Main.lua, Server.exe должен прочитать Main.lua НО! если я запускаю своей програмой которая лежит на рабочьем столе Server.exe, через ShellExecute и WinExec то появляется ошибка что Main.lua НЕ НАЙДЕН! тем самым я создаю Main.lua рядом со своей программой Main.lua (НА РОБОЧЬЕМ СТОЛЕ) И ВСЁ OK

ТАК КАКОГО Server.exe что лежит в C:\Windows\System32 не загружает Main.lua который в C:\Windows\System32 (Точно тамже) а загружает Main.lua который лежит рядом с моей програмой ?????

а вы тут зачем то вы тут код C++ показываете
-____-

вот мой batник

Код
hlds.exe -console +sv_lan 0 -insecure -game cstrike -master +maxplayers 32 -port 27099 +map de_dust2 +port 27015 +ip 127.0.0.1 +exec listip.cfg
файл может запуститься только тогда когда моя программа лежит в тойже папке что и запускаемый файл
Добавлено через 12 минут
Спасибо

Добавлено через 5 минут
а вы тут зачем то вы тут код C++ показываете
bigredcat
364 / 311 / 3
Регистрация: 24.02.2011
Сообщений: 1,512
Записей в блоге: 1
08.03.2011, 17:04     ShellExecute WinExec .... #4
Цитата Сообщение от MelKiY Посмотреть сообщение
у меня появилать очень интересная проблема с WinExec и ShellExecute

Вот я запукаю с помощю программы bat файл который находется в соседей папке
этот bat файл должен запускать hlds.exe (CS 1.6 Server) в консольном режиме.

проблема в том что всё время пишет hlds.exe не является внешней или внутренней программой...
А теперь прочитай, что ты написал. Найди, где здесь указания на проблему с WinExec и ShellExecute?

Из твоего же описания следует:
Программа запускает Server.bat.
Пакетный файл запускает исполнимый файл hlds.exe.
Проблема в том что всё время пишет hlds.exe.

Значит, твоя программа находит и запускает пакетный файл Server.bat.
А вот уже твой пакетный файл Server.bat не запускает hlds.exe и ты даже получаешь сообщение почему: "... не является внешней или внутренней ...". Такое сообщение бывает, в том числе, когда невозможно найти файл с указанным именем. И если с самим файлом hlds.exe все нормально, то явно ошибка с путями в твоем пакетном файле Server.bat
MelKiY
-121 / 2 / 1
Регистрация: 20.09.2009
Сообщений: 101
08.03.2011, 17:22  [ТС]     ShellExecute WinExec .... #5
Вот я запукаю с помощю программы (- ПРОГА С КОДМ )bat файл который находется в соседей папке
этот bat файл должен запускать hlds.exe (CS 1.6 Server) в консольном режиме.


я пытался запустить программно сам HLDS.exe И НИ**** (ОшИбКа) :/

файл может запуститься только тогда когда моя программа лежит в тойже папке что и запускаемый файл

Так если я запускаю batник в ручную то всё OK (значит всётаки проблема не с BATником)

я уже пробавал и так и сяк ничего не работает

я пытался запустить программно сам HLDS.exe И НИ**** (ОшИбКа) :/

Запуск у ручную и всё OK! -___________- - это моё лицо


Неужели никто не сталкивался с такой проблемой -___________________________-



ну если BAT лежит рядом с HLDS.exe то как он его может не найти ???

hlds.exe -console +sv_lan 0 -insecure -game cstrike -master +maxplayers 32 -port 27099 +map de_dust2 +port 27015 +ip 127.0.0.1 +exec listip.cfg
C:\Users\Desktop\ME\melkiy\Server\hlds.exe -console +sv_lan 0 -insecure -game cstrike -master +maxplayers 32 -port 27099 +map de_dust2 +port 27015 +ip 127.0.0.1 +exec listip.cfg

 Комментарий модератора 
Не кричите, не в лесу.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
08.03.2011, 17:51     ShellExecute WinExec .... #6
MelKiY, попробуйте в bat файле первой строчкой
Код
path=C:\Users\Desktop\ME\melkiy\Server\
MelKiY
-121 / 2 / 1
Регистрация: 20.09.2009
Сообщений: 101
08.03.2011, 17:57  [ТС]     ShellExecute WinExec .... #7
Я РАЗОБРАЛСЯ!

C++
1
ShellExecute( Handle,"open","Server.bat",0,"C:\\Users\\Desktop\\ME\\melkiy\\Server\\",SW_SHOWNORMAL );

где hlds.exe - имя файла
где C:\\Users\\Desktop\\ME\\melkiy\\Server\\- директория файла

Спасибо easybudda за нормальный ответ )

PS bigredcat вот для этого я и писал C++ код
bigredcat
364 / 311 / 3
Регистрация: 24.02.2011
Сообщений: 1,512
Записей в блоге: 1
08.03.2011, 18:35     ShellExecute WinExec .... #8
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от MelKiY Посмотреть сообщение
Спасибо easybudda за нормальный ответ )
PS bigredcat вот для этого я и писал C++ код
Да, но править вам указали все-таки пакетный файл и как раз таки путь. Из первого поста не видно содержимого bat файла, а я не телепат.
Но по большому счету не в этом дело. Вы уже больше года с аналогичными вопросами разбираетесь. Стоит задуматься
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.03.2011, 21:09     ShellExecute WinExec ....
Еще ссылки по теме:

WinExec, запуск batch файла C++
Как узнать адрес функции Winexec C++
ShellExecute. Программа открывает один видеофайл, но оставшиеся 2 - нет C++

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

Или воспользуйтесь поиском по форуму:
MelKiY
-121 / 2 / 1
Регистрация: 20.09.2009
Сообщений: 101
09.03.2011, 21:09  [ТС]     ShellExecute WinExec .... #9
Bigredcat примите мои извинения


Спасибо
Yandex
Объявления
09.03.2011, 21:09     ShellExecute WinExec ....
Ответ Создать тему
Опции темы

Текущее время: 03:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru