窗体下按下一个按钮建立一个线程
路之远 2012-08-20 02:01:04 本人学习C++不久,今日遇到一个难题,向各位大虾求教
用vs2010环境下,建立一个窗体,窗体上建立一个按钮,按一下按钮,执行创建线程的命令,部分源代码如下:
public ref class Form1 : public System::Windows::Forms::Form
{
public:
static DWORD WINAPI gsoapThread(LPVOID param)
{
return 0;
}
//一下部分代码省略,自动生成的窗体代码
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)
{
DWORD dwThreadId = 0;
HANDLE han = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)gsoapThread,NULL,0,(LPDWORD)&dwThreadId);
CloseHandle(han);
}
以上代码调试无错误:但是一运行,当点击按钮时,程序就会崩溃,单步执行发现执行按钮部分程序到}时,出现testthread2.exe 中的 0x0073086e 处有未经处理的异常: 0xC0000005: 读取位置 0x0000000c 时发生访问冲突,求解求解