|
最近决定为华为客户端写个界面,写得差不多了。但有个问题:
我从QObject和QThread派生出来一个类处理网络操作。
当连接时new一个对象出来,在断开连接时delete掉他。
但是现在每当delete时程序就会崩溃。
看了些文档,也用了deleteLater()。但当其真正消除对象的时候,仍然会崩溃。
该类声明如下:
[code:1]
class HuaweiNetwork:public QObject, public QThread
{
Q_OBJECT
u_char m_DestMac[6]; //目标MAC
pcap_t *m_fp; //网卡设备
USERDATA m_Data;//用户数据
bool isonline;
signals:
void Message(const char *);
void Connected();
void ConnectionInterrupted();
protected:
bool SendVersion(const u_char Id);
bool SendUsername(const u_char Id);
bool SendPassword(const u_char Id, const u_char *Chap);
bool SendKeeponline(const u_char Id);
bool OpenAdapter();
void CloseAdapter();
void SetMd5Buf(PPASSWORDFRM pBuf, const u_char ID, const u_char *chap);
void InitBuf(u_char *buf);
bool SendLogin();
bool SendLogout();
virtual void run();
public:
HuaweiNetwork(const QString & username, const QString & passwd, const QString & interfacenum, int * ip, int *mac);
void Connect();
void DisConnect();
};
[/code:1]
不知您是否也在写这个界面。如果您写了,我就不写了。不过还请您帮忙解决上面的问题。
多谢! |
|