首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于DLL里头创建的线程启动不了,跪求大神

2013-03-21 
关于DLL里面创建的线程启动不了,跪求大神我用VS2010封装了一个DLL DLLMain里面没有做任何操作这个DLL里面

关于DLL里面创建的线程启动不了,跪求大神
我用VS2010封装了一个DLL 
DLLMain里面没有做任何操作
这个DLL里面有一个接口是创建一个线程。
调用的时候,接口能进去,但是线程启动不了。
请教大神们 是什么原因?
[解决办法]
问题描述不够详细啊
[解决办法]
Dll入口进去之后,你确定你调用了启动线程的接口了吗?

定义错误信息,根据返回的错误信息找原因。打log也可以
[解决办法]

void CThreadTest::StartThread()
{
    //m_hKill = CreateEvent(NULL,TRUE,FALSE,NULL);
    //m_hExit = CreateEvent(NULL,TRUE,FALSE,NULL);
    UINT uiThread;
    DWORD dwThreadId;
    //m_hThread = (HANDLE)_beginthreadex(NULL, 0, ThreadProc,this,NULL,&uiThread);
    m_hThread = CreateThread( 
        NULL,              // default security attributes
        0,                 // use default stack size  
        (LPTHREAD_START_ROUTINE)ThreadProc,        // thread function 
        this,             // argument to thread function 
        0,                 // use default creation flags 
        &dwThreadId);
}
 
UINT CThreadTest::ThreadProc(LPVOID pParam)
{
    CThreadTest* pThis = reinterpret_cast<CThreadTest*>(pParam);
 
    int a = 1;
 
    //SetEvent(pThis->m_hExit);
    TRACE("Thread is running...")
    return 2000;
}


用这个代码试试
[解决办法]
线程函数里面什么都没做,会不会被优化了? 加其他语句试试呢,类似输出什么的?

热点排行