Показать сообщение отдельно

помогите найти где я втыканул в коде...
  #1819  
Старый 12.11.2008, 00:28
NetSter
студент
Регистрация: 30.07.2007
Сообщений: 800
С нами: 9885926

Репутация: 1188


Question помогите найти где я втыканул в коде...

есть функция RUN которая берет значение, полученное с листбокса диалога, передает его в подключаемую DLL библиотеку, которая должна приплюсовать к этому значению 3 и вернуть в RUN результат. Потом функция RUN выводит результат не экран.
вот что накодил...

Код:
void CMyFrameWin::OnRun()
{
	/*  
        char s[80];                         // проверка доходит ли Number до передачи в DLL
	CClientDC dc(this);                 // проверка доходит ли Number до передачи в DLL
	wsprintf(s,"Number is %d",Number);  // проверка доходит ли Number до передачи в DLL
	dc.TextOut(100,200,s);              // проверка доходит ли Number до передачи в DLL
    */
    int res;
	HINSTANCE hDll;
	char s[100];
	hDll=::LoadLibrary("MyDll");
	typedef int (*FUN)(int);
	FUN func;
	func=(FUN)::GetProcAddress(hDll, "calc");
	res=(*func)(Number);
	sprintf(s,"%f", res);
	MessageBox(s,"Result");
	 //создание и запись результата в файл
     FILE *result;
	 result=fopen("result.txt","w");
	 fprintf(result,"%f",res);
	 fclose(result); 
  
 
  }
значение Number в функцию RUN доходит нормально (проверка выводом на экран без использования DLL)

собственно сам код DLL библиотеки: MyDll
Код:
#include "stdafx.h"
#include <conio.h>

int calc(int Number)
{
	int r=Number;
	int res;
        res=r+3;
	return res;
}
и код файлика MyDll.def
Код:
LIBRARY      "MyDll"
DESCRIPTION 'This library has one function'
EXPORTS
  calc @1
независимо от того какое значение Number получает функция RUN от листбокса диалога (а получает постоянно точно то же что я выбрал в диалоге, я проверял без подключения DLL простым выводом) получаем постоянно в результате НОЛЬ...



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