![]() |
|
![]() ![]() ![]() |
|
Achillius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 11.3.2006 Репутация: -1 Всего: нет |
Подскажите, ешё, плиз, как мне открыть файл EXE, который я добавил в проект (файл калькулятора, пусть будет в программе, а то на разных компах, он в разных местах лежит, да и весит всего 119 кб.).
Так вот. Как сделать так, чтобы при нажатии кнопки на ToolBar выводился этот калькулятор?? Обработчик я сам сделаю, мне только строку открытия файла calc.exe. ![]() |
|||
|
||||
Samhein |
|
|||
Башзэфашовец ![]() ![]() Профиль Группа: Участник Сообщений: 282 Регистрация: 27.6.2005 Репутация: нет Всего: 3 |
А
нельзя чтоль использовать? -------------------- Знаю форум наизусть, но писать еще боюсь |
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Или ShellExecute или CreateProcess (WinExec объявлена устаревшей - This function is provided only for compatibility with 16-bit Windows)
-------------------- ... |
|||
|
||||
Samhein |
|
|||
Башзэфашовец ![]() ![]() Профиль Группа: Участник Сообщений: 282 Регистрация: 27.6.2005 Репутация: нет Всего: 3 |
Earnest, главное что запускать надо calc.exe
-------------------- Знаю форум наизусть, но писать еще боюсь |
|||
|
||||
Achillius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 11.3.2006 Репутация: -1 Всего: нет |
А можно подробнее про ShellExecute и CreateProcess.
![]() Это сообщение отредактировал(а) Achillius - 28.3.2006, 16:50 |
|||
|
||||
CaptainFlint |
|
|||
![]() Искатель сокровищ ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 26.2.2003 Где: Москва Репутация: 7 Всего: 23 |
Achillius
Не совсем понятно, что имеется в виду под фразой "добавил в проект". Ты его внутрь EXE-файла своего проекта что ли впихнул? Просто добавил как файл в проект Студии? Добавил его, чтобы он лежал рядом с EXE-шником твоей проги? опиши подробнее, что сделано, и что хочется сделать. Таскать с собой calc.exe может оказаться не слишком удачным вариантом - нет гарантии, что он запустится на других системах. Более корректное решение - это всё-таки определить, где находится этот самый calc.exe на целевой системе, и оттуда его запустить. Насколько я знаю (надо проверить), достаточно лишь разделить две ситуации: когда программа запущена под Win9x, и когда под WinNT. А путь, где лежит calc.exe, стандартный. Например, в NT - это \WINDOWS\system32\calc.exe. Т.е. в этом случае единственная задача - определить местоположение системного каталога, а уж решается она в два клика, причём есть куча способов, выбирай на вкус (через реестр, через переменные окружения, прямым вызовом GetSystemDirectory...) Если же всё равно очень хочется именно запустить свой "личный" calc.exe, то см. выше - нужны подробности. До сих пор я лично не сталкивался с неработой WinExec, даже несмотря на его "устарелость". Скорее всего, причина в чём-то другом, например, пути некорректно указаны. Смотри возвращаемый код ошибки, по нему многое можно понять. -------------------- Почему же, ё-моё, ты нигде не пишешь "ё"? -------------------- Для тех, кто не знает: CaptainFlint - это бывший Константин. ;) |
|||
|
||||
Achillius |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 11.3.2006 Репутация: -1 Всего: нет |
CaptainFlint, я добавил файл в проект так: Project -> Add to project -> Files... Но это уже не так важно, т.к. WinExec выдаёт ошибку только под 98 виндой, а под XP и NT все работает нормально, как швейцарские часы. Да хрен с ней, с 98-ой, на предприятии для которогоя я программу делаю все равно 2000 стоит.
Всем спасибо. ![]() |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |