id_handler.h
上传用户:hyz2004817
上传日期:2022-03-30
资源大小:226k
文件大小:4k
- #include "stdafx.h"
- #include "RCPServer.h"
- #ifndef _ID_HANDLER_H_
- #define _ID_HANDLER_H_
- // these uses to the dwImageFormat member of RCAGETSCREENDATA struct
- #define IMAGE_FORMAT_BMP 1
- #define IMAGE_FORMAT_JPEG 2
- #define IMAGE_FORMAT_JPE IMAGE_FORMAT_JPEG
- #define IMAGE_FORMAT_JPG IMAGE_FORMAT_JPEG
- #define IMAGE_FORMAT_GIF 3
- ///////////////////////////////////////
- //
- //
- // 描述 : 请求服务器传送屏幕图像. 这个数据结构 大小为 40 字节.
- // 0x20 子协议要求的附带数据为 40 字节, 接收完这 40 字节后
- // 可以将这40 字节强制转换成 RCAGETSCREENDATA 结构
- //
- //
- //
- //
- typedef struct _RCAGetImageData{
- int x; // 截屏矩形的左上角的 x 座标
- int y; // 截屏矩形的左上角的 y 座标
- int w; // 截屏矩形的宽
- int h; // 截屏矩形的高
- int zw; // 返回图象的缩放, 若为0, 则不缩放.
- int zh; // 返回图象的缩放, 若为0, 则不缩放.
- int iBitCount; // 要求的位深, 可以是以下一个值 8, 16, 24, 32
- DWORD dwImageFormat; // 图象格式标记
- DWORD dwFlagEx1; // 保留给特定格式使用
- DWORD dwFlagEx2; // 保留给特定格式使用
- DWORD dwFlagEx3; // 保留给特定格式使用
- DWORD dwFlagEx4; // 保留给特定格式使用
- } RCAGETIMAGEDATA, *PRCAGETIMAGEDATA;
- // 与 WINDOWS MOUSEINPUT 结构兼容
- typedef struct RCAMouseInput {
- LONG dx;
- LONG dy;
- DWORD mouseData;
- DWORD dwFlags;
- DWORD time;
- ULONG_PTR dwExtraInfo;
- } RCAMOUSEINPUT, *PRCAMOUSEINPUT;
- // 与 WINDOWS KEYBDINPUT 结构兼容
- typedef struct RCAKeybdInput{
- WORD wVk;
- WORD wScan;
- DWORD dwFlags;
- DWORD time;
- ULONG_PTR dwExtraInfo;
- } RCAKEYBDINPUT, *PRCAKEYBDINPUT;
- // 定义一个信息结构. 在子协议 0x110 中使用
- //
- typedef struct RCAComputerInfo {
- CHAR pszOS[6]; // WIN95 / WIN98 / WINNT / WIN2K / WINXP
- MEMORYSTATUS memoryStatus; // 由 GlobalMemoryStatus 函数获得
- DWORD dwScreenWidth; // 当前显示分辨率的宽
- DWORD dwScreenHeight; // ................高
- DWORD dwScreenBitCount; // ................位深
- } RCACOMPUTERINFO, *PRCACOMPUTERINFO;
- //////////////////////////////////////////////////////////////////
- //////////////////// 函数 函数 函数 函数//////////////////////////
- //////////////////////////////////////////////////////////////////
- /////////////////////////////////
- //
- // ID 号: 0x10
- //
- // 描述 : 通过调用 ShellExecute 创建一个进程
- //
- // 实现文件: 0X10.cpp
- //
- extern "C"
- BOOL WINAPI RCAID_0X10_HANDLER(
- SOCKET s,
- RCAREQUESTHANDLEDATA * pData,
- RCAREQUESTHEADER * pRCAHead,
- HANDLE hEventArray[2]
- );
- /////////////////////////////////////////////////////////////////////
- //
- // ID 号: 0x20
- //
- // 描述 : 请求服务器传送系统的屏幕图象, 传送完后, 服务器会释放所有资源,
- // 而不保持连接, 以备接受下一次的请求. 若要保持连接, 用另一子协议
- //
- // 实现文件: 0X20.cpp
- //
- extern "C"
- BOOL WINAPI RCAID_0X20_HANDLER(
- SOCKET s,
- RCAREQUESTHANDLEDATA * pData,
- RCAREQUESTHEADER * pRCAHead,
- HANDLE hEventArray[2]
- );
- ///////////////////////////////////////////////////
- //
- //
- // ID 号: 0x40
- //
- // 描述: 请求服务器执行指定的鼠标输入操作
- //
- // 实现文件: 0X40.cpp
- //
- extern "C"
- BOOL WINAPI
- RCAID_0X40_HANDLER(
- SOCKET s,
- RCAREQUESTHANDLEDATA * pData,
- RCAREQUESTHEADER * pRCAHead,
- HANDLE hEventArray[2]
- );
- ///////////////////////////////////////////////////
- //
- // ID 号: 0x41
- //
- // 描述: 请求服务器执行指定的键盘输入操作
- //
- // 实现文件: 0x41.cpp
- //
- extern "C"
- BOOL WINAPI
- RCAID_0X41_HANDLER(
- SOCKET s,
- RCAREQUESTHANDLEDATA * pData,
- RCAREQUESTHEADER * pRCAHead,
- HANDLE hEventArray[2]
- );
- ///////////////////////////////////////////////
- //
- // 获取远程计算机的信息
- //
- //
- extern "C"
- BOOL
- WINAPI
- RCAID_0X110_HANDLER(
- SOCKET s,
- RCAREQUESTHANDLEDATA * pData,
- RCAREQUESTHEADER * pRCAHead,
- HANDLE hEventArray[2]
- );
- #endif