2009-10-01 4 views
0

Я хочу начать поток в компоненте XPCOM. Вот код для создания нити_beginthread в XPCOM Ошибка компонента C2440

nsresult rv = NS_OK; 
    nsCOMPtr<Callback> obj = do_CreateInstance("@jscallback.p2psearch.com/f2f;1", &rv); 
    NS_ENSURE_SUCCESS(rv, rv); 
    char* str="Hello from C++"; 
    _beginthread((void(*)(nsCOMPtr<Callback>))&P2P::test, 0,obj); 

    return NS_OK;//obj->Status(str); 

Вот функция

#include "winsock2.h" 
#include <process.h> 
#include "nsCOMPtr.h" 
#include "Callback.h" 
class P2P{ 
public: 
    void test(nsCOMPtr<Callback> obj){ 

} 

}; 

Я получаю сообщение об ошибке, как

ошибка C2440: «приведение типа»: не удается преобразовать из «пустого (__thiscall P2P :: *) (nsCOMPtr) 'to' void (__cdecl *) (nsCOMPtr) '

ответ

0

Сделать P2P :: test static и добавить соглашение о вызове __cdecl.

+0

.... lol :) ... спасибо – Xinus

 Смежные вопросы

  • Нет связанных вопросов^_^