Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Значение функции из dll поместить в .txt файл.


Автор: Madpam 23.11.2010, 13:10
Есть dll. Нужно значение функции из dll поместить в .txt файл. Делаю вот так:
FILE *test = fopen("test.txt", "a");
       fprintf(test, "C6");
       fclose(test);
Но никакой файл не создаётся. Помогите.

Автор: xvr 23.11.2010, 13:37
Цитата(Madpam @  23.11.2010,  13:10 Найти цитируемый пост)
Нужно значение функции из dll поместить в .txt файл.
Это как? Моя твоя не понимай  smile 

Цитата(Madpam @  23.11.2010,  13:10 Найти цитируемый пост)
Делаю вот так:
Код

FILE *test = fopen("test.txt", "a");
       fprintf(test, "C6");
       fclose(test);
Я надеюсь, что это в какой то функции написано, а не на заборе?  smile 

Цитата(Madpam @  23.11.2010,  13:10 Найти цитируемый пост)
Но никакой файл не создаётся.
Позвать, то что написали, не забыли?


Автор: Madpam 23.11.2010, 15:39
Есть функция в dll которое имеет значение. Мне надо, чтобы dll создало .txt файл и сбросило туда значение этой функции. smile 

Автор: bsa 23.11.2010, 16:43
Madpam, "функция в dll которое имеет значение" - на каком это языке написано?
dll - это библиотека. она не имеет никаких значений
функция - принимает параметры, возвращает результат. У нее есть адрес, его можно присвоить указателю на функцию.

dll не умеет ничего делать. "Мне надо, чтобы dll создало .txt файл и сбросило туда значение этой функции" - это тоже самое, что сказать: "мне нужно, чтобы шкаф написал сочинение и сдал".

Автор: Леопольд 23.11.2010, 17:18
Цитата
"мне нужно, чтобы шкаф написал сочинение и сдал".

 smile

флудерастия неизлечима...  smile 

Автор: Sartorius 23.11.2010, 17:34
Сеанс телепании:
Ему нужно в функции dll-ки просто записать строчку в текстовый файл.

Madpam, используй полный путь к файлу. Он у тебя может и создается, но текущий каталог левый какой-нить

Автор: Madpam 23.11.2010, 19:38
 smile Я не знаю уже как обьяснить. Есть dll, в неё посылаются значения, она их прощитывает и возвращает какой-то результат. Так вот нужно, когда в dll'ке функция возвратит значение в переменную, значение этой переменной записалось в файл, ну а дальше продолжилось выполнение dll.
Вот примерно так:

double C6 = FunktionC5 (.....); // пердача значения
FILE *test = fopen("D:\test.txt", "a");
       fprintf(test, "C6");
       fclose(test);
return C6;// конец dll

Автор: xvr 23.11.2010, 21:16
Цитата(Madpam @  23.11.2010,  19:38 Найти цитируемый пост)
Так вот нужно, когда в dll'ке функция возвратит значение в переменную, 
Функция какая то особенная, или все подряд в этой dll? 
Сама dll ваша, или сторонняя (ее код модифицировать можно)? 
Цитата(Madpam @  23.11.2010,  19:38 Найти цитируемый пост)
значение этой переменной записалось в файл
В какой файл?

Цитата(Madpam @  23.11.2010,  19:38 Найти цитируемый пост)
Вот примерно так:
Ну примерно так и будет работать (только fopen("D:\\test.txt", "a"); )

Автор: Madpam 23.11.2010, 21:21
Цитата

Функция какая то особенная, или все подряд в этой dll? 
Сама dll ваша, или сторонняя (ее код модифицировать можно)? 

Функция особенная, но впринципе она возвращает значение в переменную, которую и нужно записать..dll моя, в ней, собственно, и пишу.
Цитата

В какой файл?

.txt
Скомпилировал dll. Файл создался, но печатается не значение переменной, а С6 ( наверно из-за  fprintf(test, "C6");). Но если С6 писать без кавычек, то пишет ошибку: cannot convert parameter 2 from 'double' to 'const char *'

Автор: bsa 24.11.2010, 00:21
Код
double C6 = FunktionC5 (.....); // пердача значения
FILE *test = fopen("D:\\test.txt", "a");
       fprintf(test, "%f", C6);
       fclose(test);
return C6;// конец dll

Автор: Madpam 24.11.2010, 13:05
Всё спасибо. То что нужно. Жаль репутацию не могу изменить.

Автор: xvr 24.11.2010, 17:35
Цитата(Madpam @ 24.11.2010,  13:05)
Всё спасибо. То что нужно. Жаль репутацию не могу изменить.

Это дело поправимое  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)