Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.85/27: Рейтинг темы: голосов - 27, средняя оценка - 4.85
Sined
9 / 7 / 3
Регистрация: 30.08.2008
Сообщений: 120
1

Запуск исполняемого файла (.exe)

01.09.2008, 13:48. Просмотров 5338. Ответов 11
Метки нет (Все метки)

Hi every body! Помогите в разработке программы.

Я не знаю какие нужно использовать функции в C++ для того, чтобы приложение можно было запускать не более 1-го раза, т. е. если я запускаю приложение и не закрываю его, опять пытаюсь его запустить оно не должно запускаться, так как оно уже ранее запущено.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.09.2008, 13:48
Ответы с готовыми решениями:

Запуск exe с флеш носителя
Добрый день! У меня такая проблема компилирую exe, который необходимо запустить с флеш носителя на...

Имя исполняемого exe файла в консольном приложении
Всем привет! потребовалось написать небольшое консольное приложение, а под рукой только XE5....

Запуск exe файла
Закинул exe файл в паку с проектом но команда не срабатывает...в чём причина? void __fastcall...

Запуск exe файла из ресурсов
всем привет собсно 2 вопроса: 1. как засунуть екзешник в ресурсы 2. как запустить его...

Запуск exe-файла из приложения
насколько я знаю, сделать это можно командами семейства exec, но у меня получилось запустить...

11
Vourhey
Почетный модератор
6931 / 2450 / 225
Регистрация: 29.07.2006
Сообщений: 13,100
01.09.2008, 13:50 2
До фига всего можно придумать. Начиная с создания lock-файла, кончая созданием мьютекса, например.
0
Sined
9 / 7 / 3
Регистрация: 30.08.2008
Сообщений: 120
01.09.2008, 13:53  [ТС] 3
Цитата Сообщение от Vourhey Посмотреть сообщение
До фига всего можно придумать. Начиная с создания lock-файла, кончая созданием мьютекса, например.
а что такое мьютекс

Нашел!!! http://ru.wikipedia.org/wiki/Категория:Windows_API
0
Vourhey
Почетный модератор
6931 / 2450 / 225
Регистрация: 29.07.2006
Сообщений: 13,100
01.09.2008, 14:04 4
http://ru.wikipedia.org/wiki/%D0%9C%...B5%D0%BA%D1%81
0
01.09.2008, 14:04
Lord_Voodoo
Супер-модератор
8716 / 2371 / 137
Регистрация: 07.03.2007
Сообщений: 11,317
Завершенные тесты: 1
01.09.2008, 14:14 5
вот как это в билдере выглядит:
Код
   HANDLE HM = OpenMutex(MUTEX_ALL_ACCESS, false, "ServerNaryadII");
   if (HM == 0) HM = CreateMutex(NULL, false, "ServerNaryadII");
   else _exit(0);
   ...
   ReleaseMutex(HM);
1
Sined
9 / 7 / 3
Регистрация: 30.08.2008
Сообщений: 120
01.09.2008, 14:24  [ТС] 6
Цитата Сообщение от WooDooMan Посмотреть сообщение
HANDLE HM = OpenMutex(MUTEX_ALL_ACCESS, false, "ServerNaryadII");
if (HM == 0) HM = CreateMutex(NULL, false, "ServerNaryadII");
else _exit(0);
...
ReleaseMutex(HM);
Я думаю, что и C++ будет также. Попробую.
0
Vourhey
Почетный модератор
6931 / 2450 / 225
Регистрация: 29.07.2006
Сообщений: 13,100
01.09.2008, 14:42 7
Цитата Сообщение от Sined Посмотреть сообщение
Я думаю, что и C++ будет также. Попробую.
Это, типа, и был С++...
0
Sined
9 / 7 / 3
Регистрация: 30.08.2008
Сообщений: 120
01.09.2008, 14:51  [ТС] 8
Цитата Сообщение от Vourhey Посмотреть сообщение
Это, типа, и был С++...
Ну спасибо, что подсказал. Я просто с билдером никогда не работал %). А код то работает в Visual Studio 2005.

Еще пару вопросов.

Что за параметры в OpenMutex, CreateMutex?
И куда лучше вставить этот код в MFC приложении,не в функцию InitInstance класса CWinApp перед инициализацией m_pMainWnd?
0
Vourhey
Почетный модератор
6931 / 2450 / 225
Регистрация: 29.07.2006
Сообщений: 13,100
01.09.2008, 15:04 9
Да, можешь перед инициализацией. Все описания параметров есть в MSDN. Главное для тебя это имя и "открытость".
0
Sined
9 / 7 / 3
Регистрация: 30.08.2008
Сообщений: 120
01.09.2008, 15:16  [ТС] 10
Да, я знаю что в MSDN, но по руски всетаки лучше!
0
MsDos
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 96
02.09.2008, 14:51 11
а для futex слова такие же?
0
oxotnik
1658 / 1127 / 80
Регистрация: 21.08.2008
Сообщений: 4,724
Записей в блоге: 1
Завершенные тесты: 1
02.09.2008, 15:20 12
Код
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
  CreateMutex ( NULL, false, "{F1B6EDDD-08C8-461b-A323-7DB8A1A70B64}");
  if ( GetLastError () == ERROR_ALREADY_EXISTS )
     {
       MessageDlg("Запущена вторая копия!!!", mtError, TMsgDlgButtons() << mbAbort, 0);
       return ( 0 );

....
....
....
}
1
02.09.2008, 15:20
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.09.2008, 15:20

Размер исполняемого файла!
Здраствуйте! Мне надо: Показать размер исполняемого файла. Предусмотреть что имя (ехе) файла...

Создание исполняемого файла!
Доброй всей ночи! Сразу не подумайте что я не знаю как создавать exe, просто меня взяло одно...

Оптимизация размера исполняемого файла
Возникла необходимо выполнить оптимизацию приложения по размеру исполняемого файла. Перерыл...


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

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

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