Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Чайник запутался или помогите Дельферу / 10 сообщений из 10, страница 1 из 1
30.11.2016, 21:43
    #39358077
Чайник запутался или помогите Дельферу
Пытаюсь повторить код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
int main(int argc, char* argv[])
{
	// имя картинки задаётся первым параметром
	char* filename = "Image0.jpg";
	// получаем картинку
	image = cvLoadImage(filename, 0);
	// клонируем картинку 
	src = cvCloneImage(image);


Файл лежит рядом с экзешником.
Собранный экзешник отрабатывает нормально. Работает так как и должно быть.

Но VC 2015, получаю ошибку:

exception: cv::Exception at memory location

Что со студией не так и как это побороть? Менял на полный путь, бестолку, скомпилированный файл работает, в дебагере та же ошибка
...
Рейтинг: 0 / 0
30.11.2016, 21:45
    #39358078
Чайник запутался или помогите Дельферу
Ошибка возникает при клонировании. Т.е. image = nil ну или NULL
...
Рейтинг: 0 / 0
01.12.2016, 00:56
    #39358103
ТиФорс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чайник запутался или помогите Дельферу
Чайник_дельфер,

ну и где объявление image? или в Делфи можно и не объявлять?
...
Рейтинг: 0 / 0
01.12.2016, 05:10
    #39358130
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чайник запутался или помогите Дельферу
Чайник_дельферОшибка возникает при клонировании. Т.е. image = nil ну или NULLНадо проверять, что image не nullptr(вместо NULL, так правильнее), в Дельфах же условия есть? :)
if (image != nullptr) тогда клонирование. Хотя странно, что cvCloneImage не проверяет входной параметр на тот же nullptr
ТиФорсну и где объявление image? или в Делфи можно и не объявлять?это не дельфи, это с++
...
Рейтинг: 0 / 0
01.12.2016, 11:08
    #39358292
Siemargl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чайник запутался или помогите Дельферу
Обращу внимание, что выбрасывается cv::Exception, т.е внутреннее исключение библиотеки.

Она хочет что то сказать, надо выяснить что.

Возможно, в студии запускается дебаг-сборка с расширенной диагностикой.
...
Рейтинг: 0 / 0
04.12.2016, 08:53
    #39359984
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чайник запутался или помогите Дельферу
SiemarglОбращу внимание, что выбрасывается cv::Exception, т.е внутреннее исключение библиотеки.

Она хочет что то сказать, надо выяснить что.

Возможно, в студии запускается дебаг-сборка с расширенной диагностикой.


так спроси ее, что же она хочет...
...
Рейтинг: 0 / 0
04.12.2016, 17:18
    #39360074
Касалапый
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чайник запутался или помогите Дельферу
Что такое "cv::"? А на чём "работает"?
ТиФорсну и где объявление image? или в Делфи можно и не объявлять?CEMbэто не дельфи, это с++Он имел ввиду что переменная вроде как не объявлена нигде. Объявлять надо в любом из этих языков.
Но я предположу что "image" объявлено глобально, иначе бы просто не компилилось. А вот правильного ли оно типа?
Чайник_дельферОшибка возникает при клонировании. Т.е. image = nil ну или NULLЕсли у вас "image = nil", то это не при клонировании, а ещё при загрузке.
...
Рейтинг: 0 / 0
11.12.2016, 14:55
    #39364390
Чайник запутался или помогите Дельферу
В общем я сделяль.
При запуске из студии почему то берется путь к местоположению проекта, а не к скомпилированному файлу. И отсчет внутри проекта тоже строится от положения файла .vcxproj
Положил файл туда и все заработало, а при деплое нужно ложить рядом с экзешником.
...
Рейтинг: 0 / 0
11.12.2016, 18:47
    #39364473
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чайник запутался или помогите Дельферу
Чайник_дельферПоложил файл туда и все заработало, а при деплое нужно ложить рядом с экзешником.
Не обязательно поможет. Рабочая папка не обязана совпадать с папкой нахождения exe. То что она совпадает при запуске exe из проводника виндовса это просто частный случай.
...
Рейтинг: 0 / 0
12.12.2016, 05:43
    #39364604
CEMb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чайник запутался или помогите Дельферу
Чайник_дельфер,

GetModuleFileName - можно узнать, откуда нас запустили, где мы находимся
GetCurrentDirectory/SetCurrentDirectory - рабочая текущая папка для текущего процесса
SHGetFolderPath - получить путь папки по идентификатору. Это для поиска места в "моих документах", где лучше всего хранить ресурсы для работы программы (т.е. хранить рядом с ехе-шником не всегда хорошо).
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Чайник запутался или помогите Дельферу / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]