Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2013, 13:41   #1
Romowski
Пользователь
 
Регистрация: 02.04.2012
Сообщений: 49
По умолчанию вылетает приложение!

Доброго времени суток!

При запуске приложения из среды Visual c++ оно работает нормально. Но если запустить исполнительный exe, то на определенной функции приложение вылетает.

В функции запускаю консольное приложение с параметрами и ждет его окончания. Консоль ищет кое-что через веб-сервисе и записывает в таблицу БД. По завершении, главная программа ищет в базе наличие нужных записей... Вот в принципе и все...

Подскажите, что может быть?
Romowski вне форума Ответить с цитированием
Старый 18.01.2013, 14:37   #2
EUGY
Форумчанин
 
Аватар для EUGY
 
Регистрация: 11.07.2010
Сообщений: 914
По умолчанию

А как осуществляется ожидание завершения консольного приложения?
EUGY вне форума Ответить с цитированием
Старый 18.01.2013, 14:54   #3
Romowski
Пользователь
 
Регистрация: 02.04.2012
Сообщений: 49
По умолчанию

Код:
PROCESS_INFORMATION		ePI={0};
	STARTUPINFO				rSI={0};
	rSI.cb =				sizeof(rSI);
	rSI.dwFlags =			STARTF_USESHOWWINDOW;
	rSI.wShowWindow =		SW_MINIMIZE;  // or SW_HIDE or SW_MINIMIZED

	if (CreateProcess(L"DKFinder\\DKFinder.exe",  // program name 
					s,
					NULL, NULL,  // security stuff (use defaults)
					TRUE,        // inherit handles (not important here)
					0,           // don't need to set priority or other flags
					NULL,        // use default Environment vars
					NULL,        // don't set current directory
					&rSI,        // where we set up the ShowWIndow setting
					&ePI))         // gets populated with handle info
	{
		WaitForSingleObject(ePI.hProcess, INFINITE);
Romowski вне форума Ответить с цитированием
Старый 18.01.2013, 15:19   #4
EUGY
Форумчанин
 
Аватар для EUGY
 
Регистрация: 11.07.2010
Сообщений: 914
По умолчанию

Хм, действительно честно ждет. А наследование хендлов точно не влияет?
EUGY вне форума Ответить с цитированием
Старый 18.01.2013, 15:32   #5
Romowski
Пользователь
 
Регистрация: 02.04.2012
Сообщений: 49
По умолчанию

Цитата:
Сообщение от EUGY Посмотреть сообщение
Хм, действительно честно ждет. А наследование хендлов точно не влияет?
хм... скорее всего что-то с библиотеками... на XP нормально отрабатывает (у самого 7)
покопаюсь еще немного...
Romowski вне форума Ответить с цитированием
Старый 18.01.2013, 15:45   #6
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

В коде вопросной вылетающей функции ставим printf() на каждой строчке и смотрим ГДЕ именно вылетает.

Далее, в студии идем в Debug/Exceptions и включаем Win32 exceptions и смотрим будет ли и дальше работать под студией.

Также проверяем с какой рабочей папкой работает в студии и без - вы то ведь не показали что будет если НЕ запустится ЕХЕ...
waleri вне форума Ответить с цитированием
Старый 18.01.2013, 15:53   #7
Romowski
Пользователь
 
Регистрация: 02.04.2012
Сообщений: 49
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
В коде вопросной вылетающей функции ставим printf() на каждой строчке и смотрим ГДЕ именно вылетает.

Далее, в студии идем в Debug/Exceptions и включаем Win32 exceptions и смотрим будет ли и дальше работать под студией.

Также проверяем с какой рабочей папкой работает в студии и без - вы то ведь не показали что будет если НЕ запустится ЕХЕ...
да я в с++ "новорожденный" ))) так что если что-то не так объясняю, не судите строго... просто пришлось дорабатывать проект...
В общем, если
Код:
if (CreateProcess(L"DKFinder\...
не выполняется, то функция возвращает ЛОЖЬ и дальше по проекту выполняются другие задачи... но там ничего особенного нет.
Romowski вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вылетает програмка Timmon Общие вопросы C/C++ 8 18.02.2012 08:14
Вылетает Qt Levsha100 Qt и кроссплатформенное программирование С/С++ 2 03.11.2010 18:19
Задача:в вижуал с++ Разработать приложение-сервер и приложение (смотри дальше сообщение) Мила777 Фриланс 2 21.10.2009 11:05
Вылетает System32! k1r1ch Безопасность, Шифрование 8 18.09.2009 08:47