void CALLBACK WaveInProc 出错 Access Violation
如果在主Aplication中在MainForm前申明如
void CALLBACK WaveInProc(HWAVEIN waveOut, UINT uMsg, DWORD dwInstance, DWORD dwParam1, DWORD dwParam2)
{
if( uMsg == MM_WIM_DATA )
{
MainForm->DoProcess();
}
}
在Form里
void __fastcall TMainForm::DoProcess()
{
bFlag=true; //bFlag 是在头文件中private的已申明变量
...
}
其他略
这样是是不会出错的
但如果我在主Aplication中调用ProcessForm 此ProcessForm如上相同代码就会报错Access Violation
也就是 运行的程序试图存取未被指定使用的存储区
比如:
我在主程序Form1用一Button来调用Form2 Form2中此代码就会出错
而我在Form1直接用代码不会出错
问
如何在Form2中运行而不会出错