powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ошибка при использовании vfprintf в dll при stdout
2 сообщений из 2, страница 1 из 1
Ошибка при использовании vfprintf в dll при stdout
    #38440985
CHERTS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день уважаемые коллеги, есть проблема, не могу её решить.

Пишу программу в Visual Studio 2010
Упростим задачу до минимума:
Есть dll с 2 экспортируемыми функциями:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
extern "C" __declspec(dllexport) void WriteMyText1(FILE *stream, char *format, ...)
{
		va_list args;
		va_start(args, format);
		vfprintf(stream, format, args);
		va_end(args);
}

extern "C" __declspec(dllexport) void WriteMyText2(char *format, ...)
{
	va_list args;
	va_start(args, format);
	vprintf(format, args);
	va_end(args);
}



все собирается баз проблем

есть тестовая программа, которая использует эту dll, в ней всего 2 вызова:

Код: plaintext
1.
2.
3.
	WriteMyText2("%s", "hello world 1");

	WriteMyText1(stdout, "%s", "hello world 2");



первый вызов функции отрабатывает и на экран выводится hello world 1
при вызове WriteMyText1 вылетает экзепшн и приехали :(
разница только в использовании vfprintf или vprintf

вопрос, почему вылетает этот экзепшн? почему при вызове vfprintf(stream, format, args) из dll туда не передается указатель на stdout ?

Я уже облазил пол инета и не могу понять в чем беда, подскажите плиз.

Во вложении готовый проект.
...
Рейтинг: 0 / 0
Ошибка при использовании vfprintf в dll при stdout
    #38441423
CHERTS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема решена!

Project Properties > Configuration Properties > C/C++ > Code Generation > Runtime Library
Basic Runtime Check = Default


и все работает!
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ошибка при использовании vfprintf в dll при stdout
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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