//
//
//
//
//
//
//
//
//
//
软件Tags:
易语言远程屏幕差异传送源码系统结构:连接服务器,数据处理,发送数据,客户端断开,屏幕,取图片差异,截图,取空白字节集_,HeapAlloc,GetProcessHeap,CopyMemory_BITMAPINFO,CopyMemory_BITMAPFILEHEADER,复制内存_字节集到字节集,GetDC,CreateCompatibleDC,SelectObject,CreateDIBSection,BitBlt,复制内存_字节集,DeleteDC,DeleteObject,ReleaseDC,模拟键盘行动_,模拟鼠标,移动光标,NewProc,置横向滚动条,置纵向滚动条,屏幕,组合差异图片,打开服务器,关闭服务器,数据处理,发送数据,SetScrollInfo,ShowScrollBar,取得窗口信息_,设置窗口信息_,CallWindowProcA,GetScrollInfo,SetWindowLongA, ======窗口程序集1 || ||------__启动窗口_创建完毕 || ||------连接服务器 || ||------数据处理 || ||------发送数据 || ||------客户端断开 || ||------__启动窗口_将被销毁 || ||------_按钮1_被单击 || ||------_按钮2_被单击 || || ======程序集1 || ||------屏幕 || ||------取图片差异 || ||------截图 || ||------取空白字节集_ || || ======调用的Dll || ||---[dll]------HeapAlloc || ||---[dll]------GetProcessHeap || ||---[dll]------CopyMemory_BITMAPINFO || ||---[dll]------CopyMemory_BITMAPFILEHEADER || ||---[dll]------复制内存_字节集到字节集 || ||---[dll]------GetDC || ||---[dll]------CreateCompatibleDC || ||---[dll]------SelectObject || ||---[dll]------CreateDIBSection || ||---[dll]------BitBlt || ||---[dll]------复制内存_字节集 || ||---[dll]------DeleteDC || ||---[dll]------DeleteObject || ||---[dll]------ReleaseDC || ||---[dll]------模拟键盘行动_ || ||---[dll]------模拟鼠标 || ||---[dll]------移动光标 ======窗口程序集1 || ||------__启动窗口_创建完毕 || ||------NewProc || ||------置横向滚动条 || ||------置纵向滚动条 || ||------__启动窗口_尺寸被改变 || ||------__启动窗口_可否被关闭 || ||------_发送CtrlShiftEsc_被选择 || ||------_发送CtrlShift_被选择 || ||------_发送Ctrl空格_被选择 || ||------_发送CtrlF12_被选择 || ||------_发送CtrlEsc_被选择 || ||------_发送AltF4_被选择 || ||------_远程屏幕画板_鼠标左键被放开 || ||------_远程屏幕画板_鼠标右键被放开 || ||------_远程屏幕画板_鼠标左键被按下 || ||------_远程屏幕画板_鼠标右键被按下 || ||------_远程屏幕画板_鼠标位置被移动 || ||------_远程屏幕画板_被双击 || ||------屏幕 || ||------组合差异图片 || ||------__启动窗口_按下某键 || ||------_传送鼠标和键盘操作_被选择 || ||------_停止鼠标和键盘操作_被选择 || ||------_保存当前画面_被选择 || || ======程序集1 || ||------打开服务器 || ||------关闭服务器 || ||------数据处理 || ||------发送数据 || || ======调用的Dll || ||---[dll]------SetScrollInfo || ||---[dll]------ShowScrollBar || ||---[dll]------取得窗口信息_ || ||---[dll]------设置窗口信息_ || ||---[dll]------CallWindowProcA || ||---[dll]------GetScrollInfo || ||---[dll]------SetWindowLongA 调用的DLL命令: .DLL命令HeapAlloc,整数型,"kernel32.dll","HeapAlloc",,从堆中分配内存 .参数hHeap,整数型 .参数dwFlags,整数型 .参数dwBytes,整数型 .DLL命令GetProcessHeap,整数型,"kernel32.dll","GetProcessHeap",,获取调用过程堆句柄 .DLL命令CopyMemory_BITMAPINFO,整数型,"kernel32.dll","RtlMoveMemory" .参数Destination,字节型,传址 .参数Source,BITMAPINFO .参数Length,整数型 .DLL命令CopyMemory_BITMAPFILEHEADER,整数型,"kernel32.dll","RtlMoveMemory" .参数Destination,字节型,传址 .参数Source,BITMAPFILEHEADER .参数Length,整数型 .DLL命令复制内存_字节集到字节集,整数型,"kernel32.dll","RtlMoveMemory" .参数pDestination,字节型,传址 .参数pSource,字节型,传址 .参数Length,整数型 .DLL命令GetDC,整数型,"user32.dll","GetDC",,获取指定窗口的设备场景指定窗口的设备场景句柄,出错则为0 .参数窗口的句柄,整数型,,将获取其设备场景的窗口的句柄。若为0,则要获取整个屏幕的DC; .DLL命令CreateCompatibleDC,整数型,"Gdi32.dll","CreateCompatibleDC" .参数hdc,整数型 .DLL命令SelectObject,整数型,"gdi32.dll","SelectObject" .参数hdc,整数型 .参数hgdiobj,整数型 .DLL命令CreateDIBSection,整数型,"gdi32.dll","CreateDIBSection" .参数设备场景句柄,整数型 .参数位图数据,字节集,传址 .参数常数,整数型 .参数内存地址,整数型,传址 .参数文件映射句柄,整数型 .参数偏移量,整数型 .DLL命令BitBlt,整数型,"gdi32.dll","BitBlt" .参数hdcDest,整数型 .参数nXDest,整数型 .参数nYDest,整数型 .参数nWidth,整数型 .参数nHeight,整数型 .参数hdcSrc,整数型 .参数nXSrc,整数型 .参数nYSrc,整数型 .参数dwRop,整数型 .DLL命令复制内存_字节集,整数型,"kernel32.dll","RtlMoveMemory" .参数pDestination,字节型,传址 .参数pSource,整数型 .参数Length,整数型 .DLL命令DeleteDC,整数型,"gdi32.dll","DeleteDC" .参数hdc .DLL命令DeleteObject,逻辑型,"gdi32.dll","DeleteObject" .参数hObject,整数型 .DLL命令ReleaseDC,整数型,"user32.dll","ReleaseDC",,ReleaseDC .参数窗口句柄,整数型,,hwnd,要释放的设备场景相关的窗口句柄 .参数设备场景,整数型,,hdc,要释放的设备场景句柄 .DLL命令模拟键盘行动_,整数型,"user32.dll","keybd_event",,这个函数模拟了键盘行动 .参数键代码,,,bVk,欲模拟的虚拟键码 .参数键扫描码,,,bScan,键的OEM扫描码 .参数标志值,,,dwFlags,标志常数 .参数特定值,,,dwExtraInfo,通常不用的一个值 .DLL命令模拟鼠标,,"user32.dll","mouse_event" .参数dwFlags .参数dx .参数dy .参数cButtons .参数dwExtraInfo .DLL命令移动光标,逻辑型,"user32.dll","SetCursorPos" .参数x .参数y 调用的DLL命令: .DLL命令SetScrollInfo,整数型,"user32.dll","SetScrollInfo" .参数hwnd,整数型 .参数n,整数型 .参数lpcScrollInfo,SCROLLINFO .参数bool,逻辑型 .DLL命令ShowScrollBar,整数型,"user32.dll","ShowScrollBar",,,ShowScrollBar .参数窗口句柄,整数型,,hwnd .参数滚动条标志,整数型,,wBar .参数显示标志,整数型,,bShow .DLL命令取得窗口信息_,整数型,"user32.dll","GetWindowLongA",,从指定窗口的结构中取得信息由nIndex决定。零表示出错。会设置GetLastError .参数窗口句柄,整数型,,欲为其获取信息的窗口的句柄 .参数属性,整数型,,欲取回的信息,可以是下述任何一个常数:;GWL_EXSTYLE:扩展窗口样式;GWL_STYLE:窗口样式;GWL_WNDPROC:该窗口的窗口函数的地址;GWL_HINSTANCE:拥有窗口的实例的句柄;GWL_HWNDPARENT:该窗口之父的句柄。不要用SetWindowWord来改变这个值;GWL_ID:对话框中一个子窗口的标识符;GWL_USERDATA:含义由应用程序规定;DWL_DLGPROC:这个窗口的对话框函数地址;DWL_MSGRESULT:在对话框函数中处理的一条消息返回的值;DWL_USER:含义由应用程序规定; .DLL命令设置窗口信息_,整数型,"user32.dll","SetWindowLongA",,在窗口结构中为指定的窗口设置信息指定数据的前一个值 .参数窗口句柄,整数型,,hwnd,欲为其取得信息的窗口的句柄 .参数窗口信息值,整数型,,nIndex,请参考GetWindowLong函数的nIndex参数的说明 .参数窗口信息新值,整数型,,dwNewLong,由nIndex指定的窗口信息的新值 .DLL命令CallWindowProcA,整数型,"user32.dll","CallWindowProcA" .参数lpPrevWndFunc,整数型 .参数hWnd,整数型 .参数Msg,整数型 .参数wParam,整数型 .参数lParam,整数型 .DLL命令GetScrollInfo,整数型,"user32","GetScrollInfo" .参数hwnd,整数型 .参数n,整数型 .参数lpcScrollInfo,SCROLLINFO .DLL命令SetWindowLongA,整数型,"user32.dll","SetWindowLongA" .参数hWnd,整数型 .参数nIndex,整数型 .参数dwNewLong,整数型
