|
안녕하세요 문제가 있어서 왠만한 홈피는 다 돌아봤는데 없어서여
두 폼사이의 통신에 관한 내용은 있는데 ...
폼을 두개 만듭니다. Form1에서 Form2를 만듭니다. 각각의 폼에는 버튼과 에디트가 하나씩 있구
여... 다음은 소스내용입니다.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TForm2 *Form2;
Form2=new TForm2(Application);
Form2->Show();
}
void __fastcall TForm2::Button1Click(TObject *Sender)
{
Form1->Edit1->Text=Edit1->Text;
}
소스를 보시면 아시겠지만 폼1에서 버튼 누르면 폼2가 생성되고 폼2의 에디터에
값을 넣고 버튼 누르면 폼2의 에디트 내용이 폼1의 에디트에 찍히는겁니다.
근데 이건 아주 잘됩니다. 제가봐두 잘 될수박에 .... 근데 정작 제가 짜고있는
프로그램에서는 위의 내용처럼하면 안된다는 겁니다.... 프로그램이 멈추거든요
그러면서 다음과 같은 메세지가 뜹니다.
Project PIDTestPrj.exe raised exception class EAccess Violation with message
'Access violation at address 00461A55 in module'PIDTESTPRJ.EXE'.
Read of address FFFFFFFF. Process stoped. Use Step or Run to continue.
어딘가 읽지 말어야할 메모리를 읽어서 멈춘거 같은데 ... 이유를 모르겠습니다.
왜 이런건지 아시거나 혹은 어떤 식으루 이유를 찾아가야 하는지 좀 알려주세요
그럼 수고하세요
|