文件管理部分功能得以通讯
2605
CcRemote/CcRemote/CFileManagerDlg.cpp
Normal file
156
CcRemote/CcRemote/CFileManagerDlg.h
Normal file
@ -0,0 +1,156 @@
|
||||
#pragma once
|
||||
#include "TrueColorToolBar.h"
|
||||
#include "include/IOCPServer.h"
|
||||
#include "resource.h"
|
||||
|
||||
|
||||
typedef CList<CString, CString&> strList;
|
||||
// CFileManagerDlg 对话框
|
||||
|
||||
class CFileManagerDlg : public CDialog
|
||||
{
|
||||
DECLARE_DYNAMIC(CFileManagerDlg)
|
||||
|
||||
public:
|
||||
CFileManagerDlg(CWnd* pParent = NULL, CIOCPServer* pIOCPServer = NULL, ClientContext *pContext = NULL); // 标准构造函数
|
||||
virtual ~CFileManagerDlg();
|
||||
bool m_bIsStop;
|
||||
CString m_strReceiveLocalFile;
|
||||
CString m_strUploadRemoteFile;
|
||||
void ShowProgress();
|
||||
void SendStop();
|
||||
int m_nTransferMode;
|
||||
CString m_hCopyDestFolder;
|
||||
void SendContinue();
|
||||
void SendException();
|
||||
void EndLocalRecvFile();
|
||||
void EndRemoteDeleteFile();
|
||||
CString m_strOperatingFile; // 文件名
|
||||
__int64 m_nOperatingFileLength; // 文件总大小
|
||||
__int64 m_nCounter;// 计数器
|
||||
void WriteLocalRecvFile();
|
||||
void CreateLocalRecvFile();
|
||||
BOOL SendDownloadJob();
|
||||
BOOL SendUploadJob();
|
||||
BOOL SendDeleteJob();
|
||||
|
||||
strList m_Remote_Download_Job;
|
||||
strList m_Remote_Upload_Job;
|
||||
strList m_Remote_Delete_Job;
|
||||
CTrueColorToolBar m_wndToolBar_Local;
|
||||
CTrueColorToolBar m_wndToolBar_Remote;
|
||||
void ShowMessage(char *lpFmt, ...);
|
||||
CString m_Remote_Path;
|
||||
BYTE m_bRemoteDriveList[1024];
|
||||
CString GetParentDirectory(CString strPath);
|
||||
void OnReceiveComplete();
|
||||
|
||||
CImageList* m_pImageList_Large;
|
||||
CImageList* m_pImageList_Small;
|
||||
|
||||
int m_nNewIconBaseIndex; // 新加的ICON
|
||||
|
||||
ClientContext* m_pContext;
|
||||
CIOCPServer* m_iocpServer;
|
||||
CString m_IPAddress;
|
||||
|
||||
CProgressCtrl* m_ProgressCtrl;
|
||||
HCURSOR m_hCursor;
|
||||
CString m_Local_Path;
|
||||
bool FixedUploadDirectory(LPCTSTR lpPathName);
|
||||
void FixedLocalDriveList();
|
||||
void FixedRemoteDriveList();
|
||||
void FixedLocalFileList(CString directory = "");
|
||||
void GetRemoteFileList(CString directory = "");
|
||||
void FixedRemoteFileList(BYTE *pbBuffer, DWORD dwBufferLen);
|
||||
|
||||
HICON m_hIcon;
|
||||
CStatusBar m_wndStatusBar;
|
||||
|
||||
CComboBox m_Remote_Directory_ComboBox;
|
||||
CComboBox m_Local_Directory_ComboBox;
|
||||
CListCtrl m_list_remote;
|
||||
CListCtrl m_list_local;
|
||||
// 对话框数据
|
||||
#ifdef AFX_DESIGN_TIME
|
||||
enum { IDD = IDD_FILE };
|
||||
#endif
|
||||
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
|
||||
virtual void PostNcDestroy();
|
||||
virtual BOOL OnInitDialog();
|
||||
afx_msg HCURSOR OnQueryDragIcon();
|
||||
afx_msg void OnSize(UINT nType, int cx, int cy);
|
||||
afx_msg void OnDblclkListLocal(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnBegindragListLocal(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnBegindragListRemote(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg BOOL OnToolTipNotify(UINT id, NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
|
||||
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
|
||||
afx_msg void OnTimer(UINT nIDEvent);
|
||||
afx_msg void OnClose();
|
||||
afx_msg void OnDblclkListRemote(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnLocalPrev();
|
||||
afx_msg void OnRemotePrev();
|
||||
afx_msg void OnLocalView();
|
||||
afx_msg void OnLocalList();
|
||||
afx_msg void OnLocalReport();
|
||||
afx_msg void OnLocalBigicon();
|
||||
afx_msg void OnLocalSmallicon();
|
||||
afx_msg void OnRemoteBigicon();
|
||||
afx_msg void OnRemoteList();
|
||||
afx_msg void OnRemoteReport();
|
||||
afx_msg void OnRemoteSmallicon();
|
||||
afx_msg void OnRemoteView();
|
||||
afx_msg void OnUpdateLocalStop(CCmdUI* pCmdUI);
|
||||
afx_msg void OnUpdateRemoteStop(CCmdUI* pCmdUI);
|
||||
afx_msg void OnUpdateLocalPrev(CCmdUI* pCmdUI);
|
||||
afx_msg void OnUpdateRemotePrev(CCmdUI* pCmdUI);
|
||||
afx_msg void OnUpdateLocalCopy(CCmdUI* pCmdUI);
|
||||
afx_msg void OnUpdateRemoteCopy(CCmdUI* pCmdUI);
|
||||
afx_msg void OnUpdateRemoteDelete(CCmdUI* pCmdUI);
|
||||
afx_msg void OnUpdateRemoteNewfolder(CCmdUI* pCmdUI);
|
||||
afx_msg void OnUpdateLocalDelete(CCmdUI* pCmdUI);
|
||||
afx_msg void OnUpdateLocalNewfolder(CCmdUI* pCmdUI);
|
||||
afx_msg void OnRemoteCopy();
|
||||
afx_msg void OnLocalCopy();
|
||||
afx_msg void OnLocalDelete();
|
||||
afx_msg void OnRemoteDelete();
|
||||
afx_msg void OnRemoteStop();
|
||||
afx_msg void OnLocalStop();
|
||||
afx_msg void OnLocalNewfolder();
|
||||
afx_msg void OnRemoteNewfolder();
|
||||
afx_msg void OnTransfer();
|
||||
afx_msg void OnRename();
|
||||
afx_msg void OnEndlabeleditListLocal(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnEndlabeleditListRemote(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnDelete();
|
||||
afx_msg void OnNewfolder();
|
||||
afx_msg void OnRefresh();
|
||||
afx_msg void OnLocalOpen();
|
||||
afx_msg void OnRemoteOpenShow();
|
||||
afx_msg void OnRemoteOpenHide();
|
||||
afx_msg void OnRclickListLocal(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
afx_msg void OnRclickListRemote(NMHDR* pNMHDR, LRESULT* pResult);
|
||||
DECLARE_MESSAGE_MAP()
|
||||
|
||||
|
||||
protected:
|
||||
CListCtrl* m_pDragList; //Which ListCtrl we are dragging FROM
|
||||
CListCtrl* m_pDropList; //Which ListCtrl we are dropping ON
|
||||
BOOL m_bDragging; //T during a drag operation
|
||||
int m_nDragIndex; //Index of selected item in the List we are dragging FROM
|
||||
int m_nDropIndex; //Index at which to drop item in the List we are dropping ON
|
||||
CWnd* m_pDropWnd; //Pointer to window we are dropping on (will be cast to CListCtrl* type)
|
||||
|
||||
void DropItemOnList(CListCtrl* pDragList, CListCtrl* pDropList);
|
||||
private:
|
||||
bool m_bIsUpload; // 是否是把本地主机传到远程上,标志方向位
|
||||
bool MakeSureDirectoryPathExists(LPCTSTR pszDirPath);
|
||||
void SendTransferMode();
|
||||
void SendFileData();
|
||||
void EndLocalUploadFile();
|
||||
bool DeleteDirectory(LPCTSTR lpszDirectory);
|
||||
void EnableControl(BOOL bEnable = TRUE);
|
||||
};
|
@ -205,6 +205,8 @@
|
||||
<ClInclude Include="..\..\common\macros.h" />
|
||||
<ClInclude Include="CcRemote.h" />
|
||||
<ClInclude Include="CcRemoteDlg.h" />
|
||||
<ClInclude Include="CFileManagerDlg.h" />
|
||||
<ClInclude Include="FileTransferModeDlg.h" />
|
||||
<ClInclude Include="CScreenSpyDlg.h" />
|
||||
<ClInclude Include="CSettingDlg.h" />
|
||||
<ClInclude Include="CShellDlg.h" />
|
||||
@ -215,6 +217,7 @@
|
||||
<ClInclude Include="include\IOCPServer.h" />
|
||||
<ClInclude Include="include\Mapper.h" />
|
||||
<ClInclude Include="IniFile.h" />
|
||||
<ClInclude Include="InputDlg.h" />
|
||||
<ClInclude Include="pch.h" />
|
||||
<ClInclude Include="PublicStruct.h" />
|
||||
<ClInclude Include="Resource.h" />
|
||||
@ -225,6 +228,8 @@
|
||||
<ItemGroup>
|
||||
<ClCompile Include="CcRemote.cpp" />
|
||||
<ClCompile Include="CcRemoteDlg.cpp" />
|
||||
<ClCompile Include="CFileManagerDlg.cpp" />
|
||||
<ClCompile Include="FileTransferModeDlg.cpp" />
|
||||
<ClCompile Include="CScreenSpyDlg.cpp" />
|
||||
<ClCompile Include="CSettingDlg.cpp" />
|
||||
<ClCompile Include="CShellDlg.cpp" />
|
||||
@ -244,6 +249,7 @@
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Use</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Use</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="InputDlg.cpp" />
|
||||
<ClCompile Include="pch.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
|
||||
@ -257,15 +263,23 @@
|
||||
<ResourceCompile Include="CcRemote.rc" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="res\1.cur" />
|
||||
<None Include="res\2.cur" />
|
||||
<None Include="res\3.cur" />
|
||||
<None Include="res\4.cur" />
|
||||
<None Include="res\CcRemote.rc2" />
|
||||
<None Include="res\dot.cur" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="res\background_picture.bmp" />
|
||||
<Image Include="res\Bitmap_4.bmp" />
|
||||
<Image Include="res\Bitmap_5.bmp" />
|
||||
<Image Include="res\bmp00001.bmp" />
|
||||
<Image Include="res\CcRemote.ico" />
|
||||
<Image Include="res\cmdshell.ico" />
|
||||
<Image Include="res\system.ico" />
|
||||
<Image Include="res\toolbar1.bmp" />
|
||||
<Image Include="res\toolbar2.bmp" />
|
||||
<Image Include="res\ToolBar_Main.bmp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
|
@ -78,6 +78,15 @@
|
||||
<ClInclude Include="CScreenSpyDlg.h">
|
||||
<Filter>头文件</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="CFileManagerDlg.h">
|
||||
<Filter>头文件</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="FileTransferModeDlg.h">
|
||||
<Filter>头文件</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="InputDlg.h">
|
||||
<Filter>源文件</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="CcRemote.cpp">
|
||||
@ -119,6 +128,15 @@
|
||||
<ClCompile Include="CScreenSpyDlg.cpp">
|
||||
<Filter>源文件</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="CFileManagerDlg.cpp">
|
||||
<Filter>源文件</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="FileTransferModeDlg.cpp">
|
||||
<Filter>源文件</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="InputDlg.cpp">
|
||||
<Filter>源文件</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="CcRemote.rc">
|
||||
@ -132,6 +150,18 @@
|
||||
<None Include="res\dot.cur">
|
||||
<Filter>资源文件</Filter>
|
||||
</None>
|
||||
<None Include="res\1.cur">
|
||||
<Filter>资源文件</Filter>
|
||||
</None>
|
||||
<None Include="res\2.cur">
|
||||
<Filter>资源文件</Filter>
|
||||
</None>
|
||||
<None Include="res\3.cur">
|
||||
<Filter>资源文件</Filter>
|
||||
</None>
|
||||
<None Include="res\4.cur">
|
||||
<Filter>资源文件</Filter>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="res\CcRemote.ico">
|
||||
@ -152,5 +182,17 @@
|
||||
<Image Include="res\background_picture.bmp">
|
||||
<Filter>资源文件</Filter>
|
||||
</Image>
|
||||
<Image Include="res\Bitmap_4.bmp">
|
||||
<Filter>资源文件</Filter>
|
||||
</Image>
|
||||
<Image Include="res\Bitmap_5.bmp">
|
||||
<Filter>资源文件</Filter>
|
||||
</Image>
|
||||
<Image Include="res\bmp00001.bmp">
|
||||
<Filter>资源文件</Filter>
|
||||
</Image>
|
||||
<Image Include="res\toolbar2.bmp">
|
||||
<Filter>资源文件</Filter>
|
||||
</Image>
|
||||
</ItemGroup>
|
||||
</Project>
|
@ -84,8 +84,8 @@ BEGIN_MESSAGE_MAP(CCcRemoteDlg, CDialogEx)
|
||||
ON_MESSAGE(WM_OPENSHELLDIALOG, OnOpenShellDialog)
|
||||
ON_MESSAGE(WM_OPENPSLISTDIALOG, OnOpenSystemDialog)
|
||||
ON_MESSAGE(WM_OPENSCREENSPYDIALOG, OnOpenScreenSpyDialog)
|
||||
ON_MESSAGE(WM_OPENMANAGERDIALOG, OnOpenManagerDialog)
|
||||
|
||||
|
||||
//-------------系统-------------
|
||||
ON_WM_SYSCOMMAND()
|
||||
ON_WM_PAINT()
|
||||
@ -294,6 +294,8 @@ void CCcRemoteDlg::OnSize(UINT nType, int cx, int cy)
|
||||
if (SIZE_MINIMIZED == nType)//当窗口最小化避免大小为0造成崩溃直接返回
|
||||
return;
|
||||
|
||||
|
||||
|
||||
if (m_CList_Online.m_hWnd != NULL)
|
||||
{
|
||||
CRect rc;
|
||||
@ -310,6 +312,12 @@ void CCcRemoteDlg::OnSize(UINT nType, int cx, int cy)
|
||||
int lenth = dd; //转换为int 类型
|
||||
m_CList_Online.SetColumnWidth(i, (lenth)); //设置当前的宽度
|
||||
}
|
||||
//TCHAR szBuffer[_MAX_PATH];
|
||||
//VERIFY(::GetModuleFileName(AfxGetInstanceHandle(), szBuffer, _MAX_PATH));
|
||||
//CString sPath = (CString)szBuffer; sPath = sPath.Left(sPath.ReverseFind('\\') + 1);
|
||||
CString sPath = "F:\\myapp\\CcRemote\\CcRemote\\CcRemote\\res\\background_list_online.bmp";
|
||||
m_CList_Online.SetBkImage(sPath.GetBuffer(sPath.GetLength()), TRUE); // 定义:CListCtrl m_controllist1;
|
||||
sPath.ReleaseBuffer();
|
||||
}
|
||||
if (m_CList_Message.m_hWnd != NULL)
|
||||
{
|
||||
@ -327,6 +335,9 @@ void CCcRemoteDlg::OnSize(UINT nType, int cx, int cy)
|
||||
int lenth = dd; //转换为int 类型
|
||||
m_CList_Message.SetColumnWidth(i, (lenth)); //设置当前的宽度
|
||||
}
|
||||
CString sPath = "F:\\myapp\\CcRemote\\CcRemote\\CcRemote\\res\\background_list_online.bmp";
|
||||
m_CList_Message.SetBkImage(sPath.GetBuffer(sPath.GetLength()), TRUE); // 定义:CListCtrl m_controllist1;
|
||||
sPath.ReleaseBuffer();
|
||||
}
|
||||
|
||||
if (m_wndStatusBar.m_hWnd != NULL) { //当对话框大小改变时 状态条大小也随之改变
|
||||
@ -375,15 +386,15 @@ int CCcRemoteDlg::InitMyMenu()
|
||||
|
||||
int CCcRemoteDlg::InitList()
|
||||
{
|
||||
//m_CList_Online.SetTextBkColor(CLR_NONE);
|
||||
//m_CList_Online.SetBkColor(CLR_NONE);
|
||||
//m_CList_Online.SetTextColor(RGB(255, 0, 0));
|
||||
//TCHAR szBuffer[_MAX_PATH];
|
||||
//VERIFY(::GetModuleFileName(AfxGetInstanceHandle(), szBuffer, _MAX_PATH));
|
||||
////CString sPath = (CString)szBuffer; sPath = sPath.Left(sPath.ReverseFind('\\') + 1);
|
||||
//CString sPath = "F:\myapp\\CcRemote\\CcRemote\\CcRemote\\background_picture.bmp";
|
||||
//m_CList_Online.SetBkImage(sPath.GetBuffer(sPath.GetLength()), TRUE); // 定义:CListCtrl m_controllist1;
|
||||
//sPath.ReleaseBuffer();
|
||||
|
||||
// CLR_NONE没有背景色。图像是透明的。
|
||||
m_CList_Online.SetTextBkColor(CLR_NONE);
|
||||
m_CList_Online.SetBkColor(CLR_NONE);
|
||||
m_CList_Online.SetTextColor(RGB(255, 0, 0));
|
||||
|
||||
m_CList_Message.SetTextBkColor(CLR_NONE);
|
||||
m_CList_Message.SetBkColor(CLR_NONE);
|
||||
//m_CList_Message.SetTextColor(RGB(255, 0, 0));
|
||||
|
||||
//设置list可选中
|
||||
m_CList_Online.SetExtendedStyle(LVS_EX_FULLROWSELECT);
|
||||
@ -451,12 +462,13 @@ void CCcRemoteDlg::ShowMessage(bool bIsOK, CString strMsg)
|
||||
m_OnlineCount = (m_OnlineCount <= 0 ? 0 : m_OnlineCount); //防止iCount 有-1的情况
|
||||
strStatusMsg.Format("已连接: %d", m_OnlineCount);
|
||||
m_wndStatusBar.SetPaneText(0, strStatusMsg); //在状态条上显示文字
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
void CCcRemoteDlg::Test()
|
||||
{
|
||||
|
||||
ShowMessage(true, "软件初始化成功...");
|
||||
//AddList("192.168.0.1", "本机局域网", "CHANG", "Windows7", "2.2GHZ", "有", "123232");
|
||||
//AddList("192.168.10.1", "本机局域网", "WANG", "Windows10", "2.2GHZ", "无", "111111");
|
||||
@ -520,6 +532,8 @@ void CCcRemoteDlg::OnOnlineDesktop()
|
||||
void CCcRemoteDlg::OnOnlineFile()
|
||||
{
|
||||
// TODO: 在此添加命令处理程序代码
|
||||
BYTE bToken = COMMAND_LIST_DRIVE; //在服务端中搜索COMMAND_LIST_DRIVE
|
||||
SendSelectCommand(&bToken, sizeof(BYTE));
|
||||
}
|
||||
|
||||
|
||||
@ -709,6 +723,8 @@ void CCcRemoteDlg::OnClose()
|
||||
{
|
||||
// TODO: 在此添加消息处理程序代码和/或调用默认值
|
||||
Shell_NotifyIcon(NIM_DELETE, &nid); //销毁图标
|
||||
m_CList_Message.SetBkImage("relese", TRUE);
|
||||
m_CList_Online.SetBkImage("relese", TRUE);
|
||||
CDialogEx::OnClose();
|
||||
}
|
||||
|
||||
@ -766,9 +782,9 @@ void CCcRemoteDlg::ProcessReceiveComplete(ClientContext *pContext)
|
||||
{
|
||||
switch (pContext->m_Dialog[0])
|
||||
{
|
||||
//case FILEMANAGER_DLG:
|
||||
// ((CFileManagerDlg *)dlg)->OnReceiveComplete();
|
||||
// break;
|
||||
case FILEMANAGER_DLG:
|
||||
((CFileManagerDlg *)dlg)->OnReceiveComplete();
|
||||
break;
|
||||
case SCREENSPY_DLG:
|
||||
((CScreenSpyDlg *)dlg)->OnReceiveComplete();
|
||||
break;
|
||||
@ -824,11 +840,7 @@ void CCcRemoteDlg::ProcessReceiveComplete(ClientContext *pContext)
|
||||
}
|
||||
|
||||
break;
|
||||
/*case TOKEN_DRIVE_LIST: // 驱动器列表
|
||||
// 指接调用public函数非模态对话框会失去反应, 不知道怎么回事,太菜
|
||||
g_pCcRemoteDlg->PostMessage(WM_OPENMANAGERDIALOG, 0, (LPARAM)pContext);
|
||||
break;
|
||||
|
||||
/*
|
||||
case TOKEN_WEBCAM_BITMAPINFO: // 摄像头
|
||||
g_pCcRemoteDlg->PostMessage(WM_OPENWEBCAMDIALOG, 0, (LPARAM)pContext);
|
||||
break;
|
||||
@ -838,6 +850,10 @@ void CCcRemoteDlg::ProcessReceiveComplete(ClientContext *pContext)
|
||||
case TOKEN_KEYBOARD_START:
|
||||
g_pCcRemoteDlg->PostMessage(WM_OPENKEYBOARDDIALOG, 0, (LPARAM)pContext);
|
||||
break;*/
|
||||
case TOKEN_DRIVE_LIST: // 驱动器列表
|
||||
// 指接调用public函数非模态对话框会失去反应, 不知道怎么回事,太菜
|
||||
g_pCcRemoteDlg->PostMessage(WM_OPENMANAGERDIALOG, 0, (LPARAM)pContext);
|
||||
break;
|
||||
case TOKEN_BITMAPINFO: //
|
||||
// 指接调用public函数非模态对话框会失去反应, 不知道怎么回事
|
||||
g_pCcRemoteDlg->PostMessage(WM_OPENSCREENSPYDIALOG, 0, (LPARAM)pContext);
|
||||
@ -1029,23 +1045,41 @@ LRESULT CCcRemoteDlg::OnOpenScreenSpyDialog(WPARAM wParam, LPARAM lParam)
|
||||
return 0;
|
||||
}
|
||||
|
||||
//打开文件管理窗口
|
||||
LRESULT CCcRemoteDlg::OnOpenManagerDialog(WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
|
||||
ClientContext *pContext = (ClientContext *)lParam;
|
||||
|
||||
//转到CFileManagerDlg 构造函数
|
||||
CFileManagerDlg *dlg = new CFileManagerDlg(this, m_iocpServer, pContext);
|
||||
// 设置父窗口为桌面
|
||||
dlg->Create(IDD_FILE, GetDesktopWindow());
|
||||
dlg->ShowWindow(SW_SHOW);
|
||||
|
||||
pContext->m_Dialog[0] = FILEMANAGER_DLG;
|
||||
pContext->m_Dialog[1] = (int)dlg;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
//绘制背景图片
|
||||
BOOL CCcRemoteDlg::OnEraseBkgnd(CDC* pDC)
|
||||
{
|
||||
// TODO: 在此添加消息处理程序代码和/或调用默认值
|
||||
CDC MemDC; MemDC.CreateCompatibleDC(pDC);
|
||||
CBitmap Cbp;
|
||||
Cbp.LoadBitmap(IDB_BACKGROUND_CCREMOTE);
|
||||
MemDC.SelectObject(&Cbp);
|
||||
BITMAP Bp;
|
||||
Cbp.GetBitmap(&Bp);
|
||||
CRect rect;
|
||||
GetClientRect(&rect);
|
||||
pDC->StretchBlt(0, 0, rect.Width(), rect.Height(), &MemDC, 0, 0, Bp.bmWidth, Bp.bmHeight, SRCCOPY);
|
||||
MemDC.DeleteDC();
|
||||
//CDC MemDC; MemDC.CreateCompatibleDC(pDC);
|
||||
//CBitmap Cbp;
|
||||
//Cbp.LoadBitmap(IDB_BACKGROUND_CCREMOTE);
|
||||
//MemDC.SelectObject(&Cbp);
|
||||
//BITMAP Bp;
|
||||
//Cbp.GetBitmap(&Bp);
|
||||
//CRect rect;
|
||||
//GetClientRect(&rect);
|
||||
//pDC->StretchBlt(0, 0, rect.Width(), rect.Height(), &MemDC, 0, 0, Bp.bmWidth, Bp.bmHeight, SRCCOPY);
|
||||
//MemDC.DeleteDC();
|
||||
|
||||
return TRUE;
|
||||
//return CDialogEx::OnEraseBkgnd(pDC);
|
||||
return CDialogEx::OnEraseBkgnd(pDC);
|
||||
}
|
||||
|
||||
|
||||
|
@ -8,6 +8,7 @@
|
||||
#include "CShellDlg.h"
|
||||
#include "CSystemDlg.h"
|
||||
#include "CScreenSpyDlg.h"
|
||||
#include "CFileManagerDlg.h"
|
||||
#pragma once
|
||||
|
||||
|
||||
@ -101,6 +102,7 @@ public:
|
||||
afx_msg LRESULT OnOpenShellDialog(WPARAM, LPARAM);
|
||||
afx_msg LRESULT OnOpenSystemDialog(WPARAM, LPARAM);
|
||||
afx_msg LRESULT OnOpenScreenSpyDialog(WPARAM, LPARAM);
|
||||
afx_msg LRESULT OnOpenManagerDialog(WPARAM, LPARAM);
|
||||
|
||||
//-------------系统消息处理-------------
|
||||
afx_msg void OnNMRClickOnline(NMHDR *pNMHDR, LRESULT *pResult);
|
||||
|
@ -10,21 +10,7 @@ f:\myapp\ccremote\ccremote\ccremote\debug\csystemdlg.obj
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\cshelldlg.obj
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\csettingdlg.obj
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\cscreenspydlg.obj
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremotedlg.obj
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.obj
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\iocpserver.obj
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\buffer.obj
|
||||
f:\myapp\ccremote\bin\ccremote.ilk
|
||||
f:\myapp\ccremote\bin\ccremote.exe
|
||||
f:\myapp\ccremote\bin\ccremote.pdb
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.res
|
||||
f:\myapp\ccremote\ccremote\ccremote\..\..\bin\ccremote.exe
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\filetransfermodedlg.obj
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.tlog\cl.command.1.tlog
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.tlog\cl.read.1.tlog
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.tlog\cl.write.1.tlog
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.tlog\link.command.1.tlog
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.tlog\link.read.1.tlog
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.tlog\link.write.1.tlog
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.tlog\rc.command.1.tlog
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.tlog\rc.read.1.tlog
|
||||
f:\myapp\ccremote\ccremote\ccremote\debug\ccremote.tlog\rc.write.1.tlog
|
||||
|
@ -1,45 +1,2 @@
|
||||
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCTargets\Microsoft.CppBuild.targets(377,5): warning MSB8004: Output 目录未以斜杠结尾。 此生成实例将添加斜杠,因为必须有这个斜杠才能正确计算 Output 目录。
|
||||
pch.cpp
|
||||
CcRemote.cpp
|
||||
CcRemoteDlg.cpp
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(164): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(169): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(310): warning C4244: “初始化”: 从“double”转换到“int”,可能丢失数据
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(327): warning C4244: “初始化”: 从“double”转换到“int”,可能丢失数据
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(812): warning C4018: “<=”: 有符号/无符号不匹配
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(894): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
CScreenSpyDlg.cpp
|
||||
f:\myapp\ccremote\ccremote\ccremote\cscreenspydlg.cpp(54): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\cscreenspydlg.cpp(607): warning C4554: “<<”: 检查运算符优先级是否存在的可能的错误;使用括号阐明优先级
|
||||
f:\myapp\ccremote\ccremote\ccremote\cscreenspydlg.cpp(621): warning C4554: “<<”: 检查运算符优先级是否存在的可能的错误;使用括号阐明优先级
|
||||
CSettingDlg.cpp
|
||||
CShellDlg.cpp
|
||||
f:\myapp\ccremote\ccremote\ccremote\cshelldlg.cpp(95): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\cshelldlg.cpp(122): warning C4018: “<”: 有符号/无符号不匹配
|
||||
f:\myapp\ccremote\ccremote\ccremote\cshelldlg.cpp(208): warning C4018: “<=”: 有符号/无符号不匹配
|
||||
f:\myapp\ccremote\ccremote\ccremote\cshelldlg.cpp(218): warning C4018: “<”: 有符号/无符号不匹配
|
||||
CSystemDlg.cpp
|
||||
f:\myapp\ccremote\ccremote\ccremote\csystemdlg.cpp(114): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
CpuUsage.cpp
|
||||
IniFile.cpp
|
||||
f:\myapp\ccremote\ccremote\ccremote\inifile.cpp(33): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
|
||||
d:\windows kits\10\include\10.0.17763.0\ucrt\string.h(90): note: 参见“strcat”的声明
|
||||
SEU_QQwry.cpp
|
||||
TrueColorToolBar.cpp
|
||||
正在生成代码...
|
||||
Buffer.cpp
|
||||
IOCPServer.cpp
|
||||
f:\myapp\ccremote\ccremote\ccremote\include\iocpserver.cpp(133): warning C4996: 'WSASocketA': Use WSASocketW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(3416): note: 参见“WSASocketA”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\include\iocpserver.cpp(725): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\include\iocpserver.cpp(774): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据
|
||||
f:\myapp\ccremote\ccremote\ccremote\include\iocpserver.cpp(920): warning C4018: “>=”: 有符号/无符号不匹配
|
||||
正在生成代码...
|
||||
CcRemote.vcxproj -> F:\myapp\CcRemote\CcRemote\CcRemote\..\..\bin\CcRemote.exe
|
||||
|
BIN
CcRemote/CcRemote/Debug/cfilemanagerdlg.obj.enc
Normal file
63
CcRemote/CcRemote/FileTransferModeDlg.cpp
Normal file
@ -0,0 +1,63 @@
|
||||
// CInputDlg.cpp: 实现文件
|
||||
//
|
||||
|
||||
#include "pch.h"
|
||||
#include "CcRemote.h"
|
||||
#include "FileTransferModeDlg.h"
|
||||
#include "afxdialogex.h"
|
||||
|
||||
|
||||
// CFileTransferModeDlg 对话框
|
||||
|
||||
IMPLEMENT_DYNAMIC(CFileTransferModeDlg, CDialog)
|
||||
|
||||
CFileTransferModeDlg::CFileTransferModeDlg(CWnd* pParent /*=nullptr*/)
|
||||
: CDialog(IDD_TRANSFERMODE_DLG, pParent)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
CFileTransferModeDlg::~CFileTransferModeDlg()
|
||||
{
|
||||
}
|
||||
|
||||
void CFileTransferModeDlg::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CDialog::DoDataExchange(pDX);
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CFileTransferModeDlg, CDialog)
|
||||
ON_CONTROL_RANGE(BN_CLICKED, IDC_OVERWRITE, IDC_CANCEL, OnEndDialog)
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
|
||||
// CFileTransferModeDlg 消息处理程序
|
||||
|
||||
|
||||
BOOL CFileTransferModeDlg::OnInitDialog()
|
||||
{
|
||||
CDialog::OnInitDialog();
|
||||
|
||||
// TODO: 在此添加额外的初始化
|
||||
CString str;
|
||||
str.Format("此文件夹已包含一个名为“%s”的文件", m_strFileName);
|
||||
|
||||
for (int i = 0; i < str.GetLength(); i += 120)
|
||||
{
|
||||
str.Insert(i, "\n");
|
||||
i += 1;
|
||||
}
|
||||
|
||||
SetDlgItemText(IDC_TIPS, str);
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// 异常: OCX 属性页应返回 FALSE
|
||||
}
|
||||
|
||||
|
||||
//重写这个函数是因为让继承他的子类能够重载这个函数来判断id吧
|
||||
void CFileTransferModeDlg::OnEndDialog(UINT id)
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
EndDialog(id);
|
||||
}
|
27
CcRemote/CcRemote/FileTransferModeDlg.h
Normal file
@ -0,0 +1,27 @@
|
||||
#pragma once
|
||||
|
||||
#include "resource.h"
|
||||
// CFileTransferModeDlg 对话框
|
||||
|
||||
class CFileTransferModeDlg : public CDialog
|
||||
{
|
||||
DECLARE_DYNAMIC(CFileTransferModeDlg)
|
||||
|
||||
public:
|
||||
CString m_strFileName;
|
||||
CFileTransferModeDlg(CWnd* pParent = nullptr); // 标准构造函数
|
||||
virtual ~CFileTransferModeDlg();
|
||||
|
||||
// 对话框数据
|
||||
#ifdef AFX_DESIGN_TIME
|
||||
enum { IDD = IDD_TRANSFERMODE_DLG };
|
||||
#endif
|
||||
|
||||
protected:
|
||||
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
|
||||
afx_msg void OnEndDialog(UINT id);
|
||||
virtual BOOL OnInitDialog();
|
||||
DECLARE_MESSAGE_MAP()
|
||||
public:
|
||||
|
||||
};
|
228
CcRemote/CcRemote/InputDlg.cpp
Normal file
@ -0,0 +1,228 @@
|
||||
////////////////////////////////////////////////////////////////
|
||||
// MSDN Magazine -- June 2005
|
||||
// If this code works, it was written by Paul DiLascia.
|
||||
// If not, I don't know who wrote it.
|
||||
// Compiles with Visual Studio .NET 2003 (V7.1) on Windows XP. Tab size=3.
|
||||
//
|
||||
#include "pch.h"
|
||||
#include "InputDlg.h"
|
||||
#include "PublicStruct.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#endif
|
||||
|
||||
//////////////////
|
||||
// Note: Make sure nBufLen is big enough to hold your entire dialog template!
|
||||
//
|
||||
CDlgTemplateBuilder::CDlgTemplateBuilder(UINT nBufLen)
|
||||
{
|
||||
m_pBuffer = new WORD[nBufLen];
|
||||
m_pNext = m_pBuffer;
|
||||
m_pEndBuf = m_pNext + nBufLen;
|
||||
}
|
||||
|
||||
CDlgTemplateBuilder::~CDlgTemplateBuilder()
|
||||
{
|
||||
delete [] m_pBuffer;
|
||||
}
|
||||
|
||||
//////////////////
|
||||
// Create template (DLGTEMPLATE)
|
||||
//
|
||||
DLGTEMPLATE* CDlgTemplateBuilder::Begin(DWORD dwStyle, const CRect& rc,
|
||||
LPCTSTR text, DWORD dwStyleEx)
|
||||
{
|
||||
ASSERT(m_pBuffer==m_pNext); // call Begin first and only once!
|
||||
|
||||
DLGTEMPLATE* hdr = (DLGTEMPLATE*)m_pBuffer;
|
||||
hdr->style = dwStyle; // copy style..
|
||||
hdr->dwExtendedStyle = dwStyleEx; // ..and extended, too
|
||||
hdr->cdit = 0; // number of items: zero
|
||||
|
||||
// Set dialog rectangle.
|
||||
CRect rcDlg = rc;
|
||||
hdr->x = (short)rcDlg.left;
|
||||
hdr->y = (short)rcDlg.top;
|
||||
hdr->cx = (short)rcDlg.Width();
|
||||
hdr->cy = (short)rcDlg.Height();
|
||||
|
||||
// Append trailing items: menu, class, caption. I only use caption.
|
||||
m_pNext = (WORD*)(hdr+1);
|
||||
*m_pNext++ = 0; // menu (none)
|
||||
*m_pNext++ = 0; // dialog class (use standard)
|
||||
m_pNext = AddText(m_pNext, text); // append dialog caption
|
||||
|
||||
ASSERT(m_pNext < m_pEndBuf);
|
||||
return hdr;
|
||||
}
|
||||
|
||||
//////////////////
|
||||
// Add dialog item (control).
|
||||
//
|
||||
void CDlgTemplateBuilder::AddItemTemplate(WORD wType, DWORD dwStyle,
|
||||
const CRect& rc, WORD nID, DWORD dwStyleEx)
|
||||
{
|
||||
ASSERT(m_pNext < m_pEndBuf);
|
||||
|
||||
// initialize DLGITEMTEMPLATE
|
||||
DLGITEMTEMPLATE& it = *((DLGITEMTEMPLATE*)AlignDWORD(m_pNext));
|
||||
it.style = dwStyle;
|
||||
it.dwExtendedStyle = dwStyleEx;
|
||||
|
||||
CRect rcDlg = rc;
|
||||
it.x = (short)rcDlg.left;
|
||||
it.y = (short)rcDlg.top;
|
||||
it.cx = (short)rcDlg.Width();
|
||||
it.cy = (short)rcDlg.Height();
|
||||
it.id = nID;
|
||||
|
||||
// add class (none)
|
||||
m_pNext = (WORD*)(&it+1);
|
||||
*m_pNext++ = 0xFFFF; // next WORD is atom
|
||||
*m_pNext++ = wType; // ..atom identifier
|
||||
ASSERT(m_pNext < m_pEndBuf); // check not out of range
|
||||
|
||||
// increment control/item count
|
||||
DLGTEMPLATE* hdr = (DLGTEMPLATE*)m_pBuffer;
|
||||
hdr->cdit++;
|
||||
}
|
||||
|
||||
//////////////////
|
||||
// Add dialog item (control).
|
||||
//
|
||||
void CDlgTemplateBuilder::AddItem(WORD wType, DWORD dwStyle,
|
||||
const CRect& rc, LPCTSTR text, WORD nID, DWORD dwStyleEx)
|
||||
{
|
||||
AddItemTemplate(wType, dwStyle, rc, nID, dwStyleEx);
|
||||
m_pNext = AddText(m_pNext, text); // append title
|
||||
*m_pNext++ = 0; // no creation data
|
||||
ASSERT(m_pNext < m_pEndBuf);
|
||||
}
|
||||
|
||||
//////////////////
|
||||
// Add dialog item (control).
|
||||
//
|
||||
void CDlgTemplateBuilder::AddItem(WORD wType, DWORD dwStyle,
|
||||
const CRect& rc, WORD wResID, WORD nID, DWORD dwStyleEx)
|
||||
{
|
||||
AddItemTemplate(wType, dwStyle, rc, nID, dwStyleEx);
|
||||
*m_pNext++ = 0xFFFF; // next is resource id
|
||||
*m_pNext++ = wResID; // ..here it is
|
||||
*m_pNext++ = 0; // no extra stuff
|
||||
ASSERT(m_pNext < m_pEndBuf);
|
||||
}
|
||||
|
||||
//////////////////
|
||||
// Append text to buffer. Convert to Unicode if necessary.
|
||||
// Return pointer to next character after terminating NULL.
|
||||
//
|
||||
WORD* CDlgTemplateBuilder::AddText(WORD* buf, LPCTSTR text)
|
||||
{
|
||||
if (text) {
|
||||
USES_CONVERSION;
|
||||
wcscpy((WCHAR*)buf, T2W((LPTSTR)text));
|
||||
buf += wcslen((WCHAR*)buf)+1;
|
||||
} else {
|
||||
*buf++ = 0;
|
||||
}
|
||||
return buf;
|
||||
}
|
||||
|
||||
//////////////////
|
||||
// Create string dialog. If no icon specified, use IDI_QUESTION. Note that
|
||||
// the order in which the controls are added is the TAB order.
|
||||
//
|
||||
BOOL CInputDialog::Init(LPCTSTR caption, LPCTSTR prompt, CWnd* pParent, WORD nIDIcon)
|
||||
{
|
||||
const int CXDIALOG = 200; // dialog width
|
||||
const int DLGMARGIN = 7; // margins all around
|
||||
const int CYSTATIC = 8; // height of static text
|
||||
const int CYEDIT = 12; // height of edit control
|
||||
const int CYSPACE = 5; // vertical space between controls
|
||||
const int CXBUTTON = 40; // button width...
|
||||
const int CYBUTTON = 15; // ..and height
|
||||
|
||||
CDlgTemplateBuilder& dtb = m_dtb;
|
||||
CRect rc(
|
||||
CPoint(0,0),
|
||||
CSize(CXDIALOG, CYSTATIC + CYEDIT + CYBUTTON + 2*DLGMARGIN + 2*CYSPACE));
|
||||
|
||||
// create dialog header
|
||||
DLGTEMPLATE* pTempl = dtb.Begin(WS_POPUPWINDOW|DS_MODALFRAME|WS_DLGFRAME,rc,caption);
|
||||
|
||||
// shrink main rect by margins
|
||||
rc.DeflateRect(CSize(DLGMARGIN,DLGMARGIN));
|
||||
|
||||
// create icon if needed
|
||||
if (nIDIcon) {
|
||||
if (nIDIcon >= (WORD)IDI_APPLICATION) {
|
||||
// if using a system icon, I load it here and set it in OnInitDialog
|
||||
// because can't specify system icon in template, only icons from
|
||||
// application resource file.
|
||||
m_hIcon = ::LoadIcon(NULL, MAKEINTRESOURCE(nIDIcon));
|
||||
nIDIcon = 0;
|
||||
} else {
|
||||
m_hIcon = NULL;
|
||||
}
|
||||
|
||||
// The size is calculated in pixels, but it seems to work OK--???
|
||||
CSize sz(GetSystemMetrics(SM_CXICON),GetSystemMetrics(SM_CYICON));
|
||||
CRect rcIcon(rc.TopLeft(), sz);
|
||||
dtb.AddItem(CDlgTemplateBuilder::STATIC, // add icon
|
||||
WS_VISIBLE|WS_CHILD|SS_LEFT|SS_ICON, rc, nIDIcon, IDICON);
|
||||
rc.left += sz.cx; // shrink main rect by width of icon
|
||||
}
|
||||
|
||||
// add prompt
|
||||
rc.bottom = rc.top + CYSTATIC; // height = height of static
|
||||
dtb.AddItem(CDlgTemplateBuilder::STATIC, // add it
|
||||
WS_VISIBLE|WS_CHILD|SS_LEFT, rc, prompt);
|
||||
|
||||
// add edit control
|
||||
rc += CPoint(0, rc.Height() + CYSPACE); // move below static
|
||||
rc.bottom = rc.top + CYEDIT; // height = height of edit control
|
||||
dtb.AddItem(CDlgTemplateBuilder::EDIT, // add it ES_AUTOHSCROLL must be add
|
||||
WS_VISIBLE|WS_CHILD|WS_BORDER|WS_TABSTOP|ES_AUTOHSCROLL, rc, m_str, IDEDIT);
|
||||
|
||||
// add OK button
|
||||
rc += CPoint(0, rc.Height() + CYSPACE); // move below edit control
|
||||
rc.bottom = rc.top + CYBUTTON; // height = button height
|
||||
rc.left = rc.right - CXBUTTON; // width = button width
|
||||
rc -= CPoint(CXBUTTON + DLGMARGIN,0); // move left one button width
|
||||
dtb.AddItem(CDlgTemplateBuilder::BUTTON, // add it
|
||||
WS_VISIBLE|WS_CHILD|WS_TABSTOP|BS_DEFPUSHBUTTON, rc, _T("&OK"), IDOK);
|
||||
|
||||
// add Cancel button
|
||||
rc += CPoint(CXBUTTON + DLGMARGIN,0); // move right again
|
||||
dtb.AddItem(CDlgTemplateBuilder::BUTTON, // add Cancel button
|
||||
WS_VISIBLE|WS_CHILD|WS_TABSTOP, rc, _T("&Cancel"), IDCANCEL);
|
||||
|
||||
return InitModalIndirect(pTempl, pParent);
|
||||
}
|
||||
|
||||
//////////////////
|
||||
// Initialize dialog: if I loaded a system icon, set it in static control.
|
||||
//
|
||||
BOOL CInputDialog::OnInitDialog()
|
||||
{
|
||||
if (m_hIcon) {
|
||||
CStatic* pStatic = (CStatic*)GetDlgItem(IDICON);
|
||||
ASSERT(pStatic);
|
||||
pStatic->SetIcon(m_hIcon);
|
||||
}
|
||||
return CDialog::OnInitDialog();
|
||||
}
|
||||
|
||||
/////////////////
|
||||
// User pressed OK: check for empty string if required flag is set.
|
||||
//
|
||||
void CInputDialog::OnOK()
|
||||
{
|
||||
UpdateData(TRUE);
|
||||
if (m_bRequired && m_str.IsEmpty()) {
|
||||
MessageBeep(0);
|
||||
return; // don't quit dialog!
|
||||
}
|
||||
CDialog::OnOK();
|
||||
}
|
83
CcRemote/CcRemote/InputDlg.h
Normal file
@ -0,0 +1,83 @@
|
||||
////////////////////////////////////////////////////////////////
|
||||
// PixieLib(TM) Copyright 1997-2005 Paul DiLascia
|
||||
// If this code works, it was written by Paul DiLascia.
|
||||
// If not, I don't know who wrote it.
|
||||
// Compiles with Visual Studio.NET 7.1 or greater. Set tabsize=3.
|
||||
//
|
||||
|
||||
//////////////////
|
||||
// Helper class to build a dialog template in memory. Only supports what's
|
||||
// needed for CStringDialog.
|
||||
//
|
||||
class CDlgTemplateBuilder {
|
||||
protected:
|
||||
WORD* m_pBuffer; // internal buffer holds dialog template
|
||||
WORD* m_pNext; // next WORD to copy stuff
|
||||
WORD* m_pEndBuf; // end of buffer
|
||||
|
||||
// align ptr to nearest DWORD
|
||||
WORD* AlignDWORD(WORD* ptr) {
|
||||
ptr++; // round up to nearest DWORD
|
||||
LPARAM lp = (LPARAM)ptr; // convert to long
|
||||
lp &= 0xFFFFFFFC; // make sure on DWORD boundary
|
||||
return (WORD*)lp;
|
||||
}
|
||||
|
||||
void AddItemTemplate(WORD wType, DWORD dwStyle, const CRect& rc,
|
||||
WORD nID, DWORD dwStyleEx);
|
||||
|
||||
public:
|
||||
// Windows predefined atom names
|
||||
enum { BUTTON=0x0080, EDIT, STATIC, LISTBOX, SCROLLBAR, COMBOBOX };
|
||||
|
||||
CDlgTemplateBuilder(UINT nBufLen=1024);
|
||||
~CDlgTemplateBuilder();
|
||||
|
||||
DLGTEMPLATE* GetTemplate() { return (DLGTEMPLATE*)m_pBuffer; }
|
||||
|
||||
// functions to build the template
|
||||
DLGTEMPLATE* Begin(DWORD dwStyle, const CRect& rc, LPCTSTR caption, DWORD dwStyleEx=0);
|
||||
WORD* AddText(WORD* buf, LPCTSTR text);
|
||||
void AddItem(WORD wType, DWORD dwStyle, const CRect& rc,
|
||||
LPCTSTR text, WORD nID=-1, DWORD dwStyleEx=0);
|
||||
void AddItem(WORD wType, DWORD dwStyle, const CRect& rc,
|
||||
WORD nResID, WORD nID=-1, DWORD dwStyleEx=0);
|
||||
};
|
||||
|
||||
//////////////////
|
||||
// Class to implement a simple string input dialog. Kind of like MessageBox
|
||||
// but it accepts a single string input from user. You provide the prompt. To
|
||||
// use:
|
||||
//
|
||||
// CStringDialog dlg; // string dialog
|
||||
// dlg.m_bRequired = m_bRequired; // if string is required
|
||||
// dlg.Init(_T("Title"), _T("Enter a string:"), this, IDI_QUESTION);
|
||||
// dlg.DoModal(); // run dialog
|
||||
// CString result = dlg.m_str; // whatever the user typed
|
||||
//
|
||||
class CInputDialog : public CDialog {
|
||||
public:
|
||||
CString m_str; // the string returned [in,out]
|
||||
BOOL m_bRequired; // string required?
|
||||
HICON m_hIcon; // icon if not supplied
|
||||
|
||||
CInputDialog() { }
|
||||
~CInputDialog() { }
|
||||
|
||||
// Call this to create the template with given caption and prompt.
|
||||
BOOL Init(LPCTSTR caption, LPCTSTR prompt, CWnd* pParent=NULL,
|
||||
WORD nIDIcon=(WORD)IDI_QUESTION);
|
||||
|
||||
protected:
|
||||
CDlgTemplateBuilder m_dtb; // place to build/hold the dialog template
|
||||
enum { IDICON=1, IDEDIT }; // control IDs
|
||||
|
||||
// MFC virtual overrides
|
||||
virtual BOOL OnInitDialog();
|
||||
virtual void OnOK();
|
||||
virtual void DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
DDX_Text(pDX, IDEDIT, m_str);
|
||||
}
|
||||
};
|
||||
|
@ -66,3 +66,19 @@ typedef struct
|
||||
DWORD dwSpeed; // 网速
|
||||
}LOGININFO;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
DWORD dwSizeHigh;
|
||||
DWORD dwSizeLow;
|
||||
}FILESIZE;
|
||||
|
||||
#define MAKEINT64(low, high) ((unsigned __int64)(((DWORD)(low)) | ((unsigned __int64)((DWORD)(high))) << 32))
|
||||
#ifdef _UNICODE
|
||||
#if defined _M_IX86
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
#elif defined _M_X64
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
#else
|
||||
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
|
||||
#endif
|
||||
#endif
|
||||
|
@ -1,46 +1,46 @@
|
||||
G:\VS2017\Common7\IDE\VC\VCTargets\Microsoft.CppBuild.targets(377,5): warning MSB8004: Output 目录未以斜杠结尾。 此生成实例将添加斜杠,因为必须有这个斜杠才能正确计算 Output 目录。
|
||||
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCTargets\Microsoft.CppBuild.targets(377,5): warning MSB8004: Output 目录未以斜杠结尾。 此生成实例将添加斜杠,因为必须有这个斜杠才能正确计算 Output 目录。
|
||||
pch.cpp
|
||||
CcRemote.cpp
|
||||
CcRemoteDlg.cpp
|
||||
g:\ccremote\ccremote\ccremote\ccremote\ccremotedlg.cpp(162): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
||||
g:\ccremote\ccremote\ccremote\ccremote\ccremotedlg.cpp(167): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
g:\ccremote\ccremote\ccremote\ccremote\ccremotedlg.cpp(308): warning C4244: “初始化”: 从“double”转换到“int”,可能丢失数据
|
||||
g:\ccremote\ccremote\ccremote\ccremote\ccremotedlg.cpp(325): warning C4244: “初始化”: 从“double”转换到“int”,可能丢失数据
|
||||
g:\ccremote\ccremote\ccremote\ccremote\ccremotedlg.cpp(798): warning C4018: “<=”: 有符号/无符号不匹配
|
||||
g:\ccremote\ccremote\ccremote\ccremote\ccremotedlg.cpp(880): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(164): warning C4996: 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(2219): note: 参见“gethostbyname”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(169): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(312): warning C4244: “初始化”: 从“double”转换到“int”,可能丢失数据
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(335): warning C4244: “初始化”: 从“double”转换到“int”,可能丢失数据
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(826): warning C4018: “<=”: 有符号/无符号不匹配
|
||||
f:\myapp\ccremote\ccremote\ccremote\ccremotedlg.cpp(908): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
CScreenSpyDlg.cpp
|
||||
g:\ccremote\ccremote\ccremote\ccremote\cscreenspydlg.cpp(54): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
g:\ccremote\ccremote\ccremote\ccremote\cscreenspydlg.cpp(607): warning C4554: “<<”: 检查运算符优先级是否存在的可能的错误;使用括号阐明优先级
|
||||
g:\ccremote\ccremote\ccremote\ccremote\cscreenspydlg.cpp(621): warning C4554: “<<”: 检查运算符优先级是否存在的可能的错误;使用括号阐明优先级
|
||||
f:\myapp\ccremote\ccremote\ccremote\cscreenspydlg.cpp(54): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\cscreenspydlg.cpp(607): warning C4554: “<<”: 检查运算符优先级是否存在的可能的错误;使用括号阐明优先级
|
||||
f:\myapp\ccremote\ccremote\ccremote\cscreenspydlg.cpp(621): warning C4554: “<<”: 检查运算符优先级是否存在的可能的错误;使用括号阐明优先级
|
||||
CSettingDlg.cpp
|
||||
CShellDlg.cpp
|
||||
g:\ccremote\ccremote\ccremote\ccremote\cshelldlg.cpp(95): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
g:\ccremote\ccremote\ccremote\ccremote\cshelldlg.cpp(122): warning C4018: “<”: 有符号/无符号不匹配
|
||||
g:\ccremote\ccremote\ccremote\ccremote\cshelldlg.cpp(208): warning C4018: “<=”: 有符号/无符号不匹配
|
||||
g:\ccremote\ccremote\ccremote\ccremote\cshelldlg.cpp(218): warning C4018: “<”: 有符号/无符号不匹配
|
||||
f:\myapp\ccremote\ccremote\ccremote\cshelldlg.cpp(95): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\cshelldlg.cpp(122): warning C4018: “<”: 有符号/无符号不匹配
|
||||
f:\myapp\ccremote\ccremote\ccremote\cshelldlg.cpp(208): warning C4018: “<=”: 有符号/无符号不匹配
|
||||
f:\myapp\ccremote\ccremote\ccremote\cshelldlg.cpp(218): warning C4018: “<”: 有符号/无符号不匹配
|
||||
CSystemDlg.cpp
|
||||
g:\ccremote\ccremote\ccremote\ccremote\csystemdlg.cpp(114): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\csystemdlg.cpp(114): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
CpuUsage.cpp
|
||||
IniFile.cpp
|
||||
g:\ccremote\ccremote\ccremote\ccremote\inifile.cpp(33): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
|
||||
g:\windows kits\10\include\10.0.17763.0\ucrt\string.h(90): note: 参见“strcat”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\inifile.cpp(33): warning C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
|
||||
d:\windows kits\10\include\10.0.17763.0\ucrt\string.h(90): note: 参见“strcat”的声明
|
||||
SEU_QQwry.cpp
|
||||
TrueColorToolBar.cpp
|
||||
Buffer.cpp
|
||||
IOCPServer.cpp
|
||||
g:\ccremote\ccremote\ccremote\ccremote\include\iocpserver.cpp(133): warning C4996: 'WSASocketA': Use WSASocketW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(3416): note: 参见“WSASocketA”的声明
|
||||
g:\ccremote\ccremote\ccremote\ccremote\include\iocpserver.cpp(725): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
g:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
g:\ccremote\ccremote\ccremote\ccremote\include\iocpserver.cpp(774): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据
|
||||
g:\ccremote\ccremote\ccremote\ccremote\include\iocpserver.cpp(920): warning C4018: “>=”: 有符号/无符号不匹配
|
||||
f:\myapp\ccremote\ccremote\ccremote\include\iocpserver.cpp(133): warning C4996: 'WSASocketA': Use WSASocketW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(3416): note: 参见“WSASocketA”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\include\iocpserver.cpp(725): warning C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings
|
||||
d:\windows kits\10\include\10.0.17763.0\um\winsock2.h(1849): note: 参见“inet_ntoa”的声明
|
||||
f:\myapp\ccremote\ccremote\ccremote\include\iocpserver.cpp(774): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据
|
||||
f:\myapp\ccremote\ccremote\ccremote\include\iocpserver.cpp(920): warning C4018: “>=”: 有符号/无符号不匹配
|
||||
正在生成代码
|
||||
All 520 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
|
||||
All 523 functions were compiled because no usable IPDB/IOBJ from previous compilation was found.
|
||||
已完成代码的生成
|
||||
CcRemote.vcxproj -> G:\CcRemote\CcRemote\CcRemote\CcRemote\..\..\bin\CcRemote.exe
|
||||
CcRemote.vcxproj -> F:\myapp\CcRemote\CcRemote\CcRemote\..\..\bin\CcRemote.exe
|
||||
|
@ -1,2 +1,2 @@
|
||||
#TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=10.0.17763.0
|
||||
Release|Win32|G:\CcRemote\CcRemote\CcRemote\|
|
||||
Release|Win32|F:\myapp\CcRemote\CcRemote\|
|
||||
|
@ -15,6 +15,8 @@
|
||||
#include <afxwin.h>
|
||||
#include <afxwin.h>
|
||||
#include <afxwin.h>
|
||||
#include <afxwin.h>
|
||||
#include <afxwin.h>
|
||||
|
||||
#endif //PCH_H
|
||||
|
||||
|
BIN
CcRemote/CcRemote/res/1.cur
Normal file
After Width: | Height: | Size: 326 B |
BIN
CcRemote/CcRemote/res/2.cur
Normal file
After Width: | Height: | Size: 326 B |
BIN
CcRemote/CcRemote/res/3.cur
Normal file
After Width: | Height: | Size: 326 B |
BIN
CcRemote/CcRemote/res/4.cur
Normal file
After Width: | Height: | Size: 326 B |
BIN
CcRemote/CcRemote/res/Bitmap_4.bmp
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
CcRemote/CcRemote/res/Bitmap_5.bmp
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
CcRemote/CcRemote/res/background_list_online.bmp
Normal file
After Width: | Height: | Size: 264 KiB |
BIN
CcRemote/CcRemote/res/bmp00001.bmp
Normal file
After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 7.5 KiB After Width: | Height: | Size: 326 B |
BIN
CcRemote/CcRemote/res/toolbar2.bmp
Normal file
After Width: | Height: | Size: 1.8 KiB |
@ -29,12 +29,26 @@
|
||||
#define IDD_DIALOG1 149
|
||||
#define IDD_SCREENSPY 149
|
||||
#define IDI_DOT 153
|
||||
#define IDC_DOT 153
|
||||
#define IDB_BACKGROUND_ 154
|
||||
#define IDB_BACKGROUND_CCREMOTE 154
|
||||
#define IDD_FILE 155
|
||||
#define IDD_TRANSFERMODE_DLG 157
|
||||
#define IDR_FILEMANAGER 159
|
||||
#define IDR_LOCAL_VIEW 160
|
||||
#define IDR_REMOTE_VIEW 161
|
||||
#define IDC_DRAG 162
|
||||
#define IDC_MUTI_DRAG 163
|
||||
#define IDC_CURSOR3 164
|
||||
#define IDC_CURSOR4 165
|
||||
#define IDC_DOT 167
|
||||
#define IDB_TOOLBAR_ENABLE 168
|
||||
#define IDB_TOOLBAR_DISABLE 169
|
||||
#define IDR_TOOLBAR1 170
|
||||
#define IDR_TOOLBAR2 172
|
||||
#define IDC_ONLINE 1000
|
||||
#define IDC_LIST2 1001
|
||||
#define IDC_MESSAGE 1001
|
||||
#define IDC_LIST_REMOTE 1001
|
||||
#define IDC_EDIT_PORT 1002
|
||||
#define IDC_EDIT_MAX 1003
|
||||
#define IDC_EDIT 1003
|
||||
@ -42,6 +56,23 @@
|
||||
#define IDC_LIST_WINDOWS 1005
|
||||
#define IDC_LIST_PROCESS_OR_WINDOW 1006
|
||||
#define IDC_LIST_PROCESS_OR_WINDOW_OR_WINDOW 1006
|
||||
#define IDC_STATIC_FILE_LOCAL 1006
|
||||
#define IDC_STATIC_LOCAL 1006
|
||||
#define IDC_STATIC_FILE_REMOTE 1007
|
||||
#define IDC_STATIC_REMOTE 1007
|
||||
#define IDC_LIST_LOCAL 1008
|
||||
#define IDC_LOCAL_PATH 1009
|
||||
#define IDC_REMOTE_PATH 1010
|
||||
#define IDC_OVERWRITE 1011
|
||||
#define IDC_TIPS 1012
|
||||
#define IDC_CANCEL 1013
|
||||
#define IDC_OVERWRITE_ALL 1016
|
||||
#define IDC_ADDITION 1017
|
||||
#define IDC_JUMP 1018
|
||||
#define IDC_ADDITION_ALL 1019
|
||||
#define IDC_JUMP_ALL 1020
|
||||
#define ID_LOCAL_TOOLBAR 0x5001
|
||||
#define ID_REMOTE_TOOLBAR 0x5002
|
||||
#define ID_ONLINE_32771 32771
|
||||
#define ID_ONLINE_32772 32772
|
||||
#define ID_ONLINE_32773 32773
|
||||
@ -109,14 +140,59 @@
|
||||
#define ID_WINDOW_MAX 32836
|
||||
#define ID_WINDOW_MIN 32837
|
||||
#define ID_WINDOW_S 32838
|
||||
#define ID_FILEMANGER_32839 32839
|
||||
#define ID_FILEMANGER_32840 32840
|
||||
#define ID_FILEMANGER_32841 32841
|
||||
#define ID_FILEMANGER_I32842 32842
|
||||
#define ID_FILEMANGER_32843 32843
|
||||
#define ID_FILEMANGER_32844 32844
|
||||
#define ID_FILEMANGER_32845 32845
|
||||
#define ID_FILEMANGER_32846 32846
|
||||
#define IDM_TRANSFER 32847
|
||||
#define IDM_RENAME 32848
|
||||
#define IDM_DELETE 32849
|
||||
#define IDM_NEWFOLDER 32850
|
||||
#define IDM_LOCAL_OPEN 32851
|
||||
#define IDM_REMOTE_OPEN_SHOW 32852
|
||||
#define IDM_REMOTE_OPEN_HIDE 32853
|
||||
#define IDM_REFRESH 32854
|
||||
#define ID_LVIEW_32855 32855
|
||||
#define ID_LVIEW_32856 32856
|
||||
#define ID_LVIEW_32857 32857
|
||||
#define ID_LVIEW_32858 32858
|
||||
#define IDM_LOCAL_BIGICON 32859
|
||||
#define IDM_LOCAL_SMALLICON 32860
|
||||
#define IDM_LOCAL_LIST 32861
|
||||
#define IDM_LOCAL_REPORT 32862
|
||||
#define ID_RVIEW_32863 32863
|
||||
#define ID_RVIEW_32864 32864
|
||||
#define ID_RVIEW_32865 32865
|
||||
#define ID_RVIEW_32866 32866
|
||||
#define IDM_REMOTE_BIGICON 32867
|
||||
#define IDM_REMOTE_SMALLICON 32868
|
||||
#define IDM_REMOTE_LIST 32869
|
||||
#define IDM_REMOTE_REPORT 32870
|
||||
#define IDT_LOCAL_PREV 32871
|
||||
#define IDT_LOCAL_COPY 32872
|
||||
#define IDT_LOCAL_DELETE 32873
|
||||
#define IDT_LOCAL_NEWFOLDER 32874
|
||||
#define ID_BUTTON32875 32875
|
||||
#define IDT_LOCAL_STOP 32875
|
||||
#define IDT_LOCAL_VIEW 32876
|
||||
#define IDT_REMOTE_PREV 32877
|
||||
#define IDT_REMOTE_COPY 32878
|
||||
#define IDT_REMOTE_DELETE 32879
|
||||
#define IDT_REMOTE_NEWFOLDER 32880
|
||||
#define IDT_REMOTE_VIEW 32881
|
||||
#define IDT_REMOTE_STOP 32882
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 155
|
||||
#define _APS_NEXT_COMMAND_VALUE 32839
|
||||
#define _APS_NEXT_CONTROL_VALUE 1006
|
||||
#define _APS_NEXT_RESOURCE_VALUE 174
|
||||
#define _APS_NEXT_COMMAND_VALUE 32883
|
||||
#define _APS_NEXT_CONTROL_VALUE 1014
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
||||
|