C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[6128] main->dll로 데이터를 ...???(이거 아시는분 아마두 없나요?ㅠ.ㅠ)
고도리 [] 1967 읽음    2001-03-15 13:06
여기 계신분덜은 전부 빌더에 고수인것 같군요. 왜 요길 오늘에서야 알았을까??
전 한참 빌더를 배우고 있는데요.
메인창에서 dll의 함수를 호출하고 데이터를 다시
dll로 넘겨서 Edit에 표시를 하려고 하거든요. 그런데 코드를 보시면 아시겠지만 timer에 의해 일정시간마다 dll을 호출합니다. 그런데 한번 호출하고 Close()가 있는데도 폼을 닫지 않고 계속해서 생성이 되네요. 제가 알고 싶은건
1. 왜 Close()가 먹히질 않는가??
2. 어떻게 하면 dll폼을 한번만 띄워놓고 거기에 계속 데이터를 넘겨받아 표시할수 있는가??

입니다.

현재 코드입니다.
//main------------------------------------------------------
void __fastcall TSampleForm::Timer1Timer(TObject *Sender)
{
  Edit1->Text = Data;

   typedef void (__stdcall *IMPPROC) (int);
   HINSTANCE   DllInstance;
   IMPPROC ImpFunc;

   DllInstance = LoadLibrary("About.dll");
   ImpFunc = (IMPPROC) GetProcAddress(DllInstance, "_InvokeAboutDialog");
   ImpFunc(Data);
   FreeLibrary(DllInstance);

  Data++;
  if (Data >=100)
    Data = 0;
}

//Aboutdll-----------------------------------------------------------------------------
void InvokeAboutDialog(int mainData)
{

   AnsiString a;
   a.sprintf("%d",mainData);

   TAboutForm *AboutDlg = new TAboutForm(NULL);
   AboutDlg->AboutEdit->Text = a;
   AboutDlg->ShowModal();

   AboutDlg->Close();         <----바로 이부분이 안먹히는거 같아요ㅠ.ㅠ
   delete AboutDlg;
}

+ -

관련 글 리스트
6128 main->dll로 데이터를 ...???(이거 아시는분 아마두 없나요?ㅠ.ㅠ) 고도리 1967 2001/03/15
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.