fix: 文件管理对话框SetPaneText崩溃,传输故障
This commit is contained in:
@@ -160,6 +160,7 @@ BEGIN_MESSAGE_MAP(CFileManagerDlg, CDialog)
|
||||
ON_COMMAND(IDM_REMOTE_OPEN_HIDE, OnRemoteOpenHide)
|
||||
ON_NOTIFY(NM_RCLICK, IDC_LIST_LOCAL, OnRclickListLocal)
|
||||
ON_NOTIFY(NM_RCLICK, IDC_LIST_REMOTE, OnRclickListRemote)
|
||||
ON_MESSAGE(WM_MY_MESSAGE, OnMyMessage)
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
@@ -1110,14 +1111,17 @@ void CFileManagerDlg::FixedRemoteFileList(BYTE *pbBuffer, DWORD dwBufferLen)
|
||||
|
||||
void CFileManagerDlg::ShowMessage(char *lpFmt, ...)
|
||||
{
|
||||
char buff[1024];
|
||||
char *buff = new char[1024];
|
||||
va_list arglist;
|
||||
va_start( arglist, lpFmt );
|
||||
|
||||
memset(buff, 0, sizeof(buff));
|
||||
memset(buff, 0, 1024);
|
||||
|
||||
vsprintf(buff, lpFmt, arglist);
|
||||
m_wndStatusBar.SetPaneText(0, buff);
|
||||
// fix: <20><><EFBFBD>̲߳<DFB3><CCB2><EFBFBD><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// m_wndStatusBar.SetPaneText(0, buff);
|
||||
// msg <20><>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С,<2C><>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>
|
||||
SendMessage(WM_MY_MESSAGE, 1024, (LPARAM)buff);
|
||||
va_end( arglist );
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
#endif // _MSC_VER > 1000
|
||||
#include "gh0st2Remote.h"
|
||||
|
||||
#define WM_MY_MESSAGE (WM_USER+300)
|
||||
|
||||
// FileManagerDlg.h : header file
|
||||
//
|
||||
|
||||
@@ -15,6 +17,16 @@ typedef CList<CString, CString&> strList;
|
||||
|
||||
class CFileManagerDlg : public CDialog
|
||||
{
|
||||
protected:
|
||||
// <20><><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>Ϣ
|
||||
afx_msg LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
char *buff = (char*)lParam;
|
||||
m_wndStatusBar.SetPaneText(0, buff);
|
||||
delete[]buff;
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
// Construction
|
||||
public:
|
||||
bool m_bIsStop;
|
||||
|
||||
@@ -521,7 +521,17 @@ BOOL IOCPServer::OnClientReceiving(PCONTEXT_OBJECT ContextObject, DWORD dwTrans
|
||||
VOID IOCPServer::OnClientPreSending(CONTEXT_OBJECT* ContextObject, PBYTE szBuffer, ULONG ulOriginalLength)
|
||||
{
|
||||
assert (ContextObject);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD>
|
||||
if (ulOriginalLength < 100) {
|
||||
char buf[100] = { 0 };
|
||||
if (ulOriginalLength == 1){
|
||||
sprintf_s(buf, "command %d", int(szBuffer[0]));
|
||||
}
|
||||
else {
|
||||
memcpy(buf, szBuffer, ulOriginalLength);
|
||||
}
|
||||
OutputDebugStringA("[COMMAND] Send: " + CString(buf) + "\r\n");
|
||||
}
|
||||
try
|
||||
{
|
||||
if (ulOriginalLength > 0)
|
||||
|
||||
Reference in New Issue
Block a user