关于myseelite2的架设

Yeeler 2009-07-02 02:36:37
我在编译myseelite2后,运行capture.exe出现了一个奇怪的问题。

运行环境: vs2008sp1
库: wxWidgets-2.8.10 ACE 5.7

编译过程: 出现了部分小错误,都一一解决,成功编译。

运行: 修改tracker.cfg和superpeer.cfg中的ip,并分别运行tracker.exe和superpeer.exe,显示一切正常。
但是,运行livestream.exe 点击 “开始上传”后 马上出错。
...全文
403 18 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eleven 2010-05-17
  • 打赏
  • 举报
回复
结贴通知:
请lz注意结贴。。。。
yiyepianzhounc 2010-03-10
  • 打赏
  • 举报
回复
请问楼主问题得到解决没有?
Yeeler 2009-07-03
  • 打赏
  • 举报
回复
跟踪调试 最后发现是 读取mms流 没有成功。
Yeeler 2009-07-02
  • 打赏
  • 举报
回复
可能是发布的开源代码 不全
virtual bool SetCallback(IReportCallback* pCallback)=0;
是不是表示 这个函数不起作用啊?我没看到setcallback的实现代码,我想应该是这个问题了, 谢谢你啊 oyljerry。
oyljerry 2009-07-02
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 Yeeler 的回复:]
大虾果然高手

这是“开始上传”按钮的函数
C/C++ codevoidCliveStreamDlg::OnBnClickedButtonStart()
{
UpdateData(true);
m_bOnReady=false;
m_pISPClient=CreaterSPClient();
m_pISPClient->SetSPIP_PORT(m_strSPAddr.GetBuffer(m_strSPAddr.GetLength()), m_spPort);
m_pISPClient->Start();
m_pISPClient->SetCallback((IReportCallback*)this);//上面这句注释就不出错了,但是我按f12看到的定义…
[/Quote]
找SetCallback这个函数的实现等,看它帮助文档等,SetCallback这个函数是否使用z正确
Yeeler 2009-07-02
  • 打赏
  • 举报
回复

#ifndef __SPCLIENT_H__
#define __SPCLIENT_H__


class IReportCallback
{
public:
virtual bool OnReportSendByte(int iSum)=0;
virtual bool OnReadyToSend()=0;
};
// 这么多0 是不是意思函数没有完成?
class ISPClient
{
public:
virtual bool SetSPIP_PORT(char* szIP, int iPort)=0;
virtual bool Start()=0;
virtual bool Stop()=0;
virtual bool SendRegister(char* szChanName, int iUserID, char* szPassWor/*md5 len*/, char* pChanData, int iDataLen)=0;
virtual bool SendBlock(void* pBlock, int iBlockNum, int iOffset,int iLen)=0;
//
virtual bool SetCallback(IReportCallback* pCallback)=0;
};

ISPClient* CreaterSPClient(void);
void DeleteSPClient(void* pVoid);

#endif

Yeeler 2009-07-02
  • 打赏
  • 举报
回复
大虾果然高手

这是“开始上传”按钮的函数

void CliveStreamDlg::OnBnClickedButtonStart()
{
UpdateData(true);
m_bOnReady = false;
m_pISPClient = CreaterSPClient();
m_pISPClient->SetSPIP_PORT(m_strSPAddr.GetBuffer(m_strSPAddr.GetLength()), m_spPort);
m_pISPClient->Start();
m_pISPClient->SetCallback((IReportCallback*)this);
//上面这句注释就不出错了,但是我按f12看到的定义是virtual bool SetCallback(IReportCallback* pCallback)=0;
// 这个函数是怎么工作的啊,我不知道怎么处理。
}
oyljerry 2009-07-02
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 Yeeler 的回复:]
D:\Program Files\Microsoft Visual Studio 9.0\VC\crt\src\close.c
C/C++ codeint__cdecl _close (intfh
)
{intr;/*return value*//*validate file handle*/_CHECK_FH_CLEAR_OSSERR_RETURN( fh, EBADF,-1);
_VALIDATE_CLEAR_OSSERR_RETURN((fh>=0&&(unsigned)fh<(unsigned)_nhandle), EBADF,-1);
_VALIDATE_CLEAR_OSSERR_RETURN((_osfile(fh)&FOPEN), EBADF,-1);

_lock_fh(fh);/*lock file*/…
[/Quote]
查看一下你的函数call stack等,看是你什么代码的函数,调用到这个函数的
Yeeler 2009-07-02
  • 打赏
  • 举报
回复
D:\Program Files\Microsoft Visual Studio 9.0\VC\crt\src\close.c

int __cdecl _close (
int fh
)
{
int r; /* return value */

/* validate file handle */
_CHECK_FH_CLEAR_OSSERR_RETURN( fh, EBADF, -1 );
_VALIDATE_CLEAR_OSSERR_RETURN((fh >= 0 && (unsigned)fh < (unsigned)_nhandle), EBADF, -1);
_VALIDATE_CLEAR_OSSERR_RETURN((_osfile(fh) & FOPEN), EBADF, -1);

_lock_fh(fh); /* lock file */

__try {
if ( _osfile(fh) & FOPEN )
r = _close_nolock(fh);
else {
errno = EBADF;
r = -1;
_ASSERTE(("Invalid file descriptor. File possibly closed by a different thread",0));
}
}
__finally {
_unlock_fh(fh); /* unlock the file */
}

return r;
}



大虾,我怎么知道我在哪里调用了这个函数?这个是vc里的文件我没改动过的
hendriclee 2009-07-02
  • 打赏
  • 举报
回复
MARK
oyljerry 2009-07-02
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 Yeeler 的回复:]
图片如果不能打开,复制链接,贴到浏览器里就可以看到。
[/Quote]
点击重试,自己调试看看,什么assert宏出错了
Yeeler 2009-07-02
  • 打赏
  • 举报
回复
图片如果不能打开,复制链接,贴到浏览器里就可以看到。
Yeeler 2009-07-02
  • 打赏
  • 举报
回复
“开始上传” 点击后 单步跟踪都没出错,完成该事件后,回到vc自带的cpp文件 再单步下去就是cpu代码,而且一直在里面循环,再按f5 就出现上图错误了。
Yeeler 2009-07-02
  • 打赏
  • 举报
回复
这个错误 可能会是什么问题啊 各位大虾。
wuhuwy 2009-07-02
  • 打赏
  • 举报
回复
帮顶,学习
oyljerry 2009-07-02
  • 打赏
  • 举报
回复
出错的时候,自己用编译器跟踪一下,设置断点等
Yeeler 2009-07-02
  • 打赏
  • 举报
回复


18,363

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧