① 高分辨率屏幕远程桌面的时候屏幕内容过小,有哪位大神知道如何解决这个问题
因为现在新出的笔记本屏幕分辨率较高,使用远程桌面时由于两遍分辨率不同,导致自己看到对方桌面的图片和文字都很小,特别影响体验。亲测解决办法如下:
1、修改注册表:
用运行-regedit编辑注册表,找到:
HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows > CurrentVersion > SideBySide
新建DWORD,命名PreferExternalManifest,并双击设置值为1.
2、控制面板-文件资源管理器选项-查看-高级选项-隐藏已知文件类型的扩展名,去掉打勾。
3、到桌面右键新建-文本,重命名,后缀txt改为xml,确认;复制并粘贴如下代码,保存后再次修改文本名称为:mstsc.exe.manifest(后缀也修改为manifest了)。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0" processorArchitecture="*"
publicKeyToken="6595b64144ccf1df"
language="*">
</assemblyIdentity>
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.VC90.CRT"
version="9.0.21022.8"
processorArchitecture="amd64"
publicKeyToken="1fc8b3b9a1e18e3b">
</assemblyIdentity>
</dependentAssembly>
</dependency>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="asInvoker"
uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
<asmv3:application>
<asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
<ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
</asmv3:windowsSettings>
</asmv3:application>
</assembly>
---------------------------------------------华丽分割
4、讲这个文件放到指定路径中:C:WindowsSystem32;找不到路径的,在桌面已经生成的远程桌面快捷方式,右键-属性-打开文件所在位置,就能看到C:WindowsSystem32mstsc.exe,讲代码文件放到文件夹里,重启电脑,再次打开RemoteAPP和远程链接,Bingo!分辨率是不是正常了,虽然虚了一些,但是起码看得清楚!
② 如何修改远程桌面连接进去时候的图片
在远程桌面被控端上点击开始-运行,输入gpedit.msc,点击“确定”,然后依次展开左侧列表当中的“计算机配置”-“管理模板”-“Windows 组建”-“终端服务”,然后双击右侧列表当中的“强制删除远程桌面墙纸”,点击“已禁用”,点击“确定”,关闭组策略编辑器。提示:这样操作后,在慢速连接条件下,可能对远程桌面性能造成不良影响。
③ 远程桌面控制原理是什么,符合那些条件才可以实现
原理很简单,优化很复杂;
就是抓屏,发送,至少要优化一下,每次只发送不同的地方;
设计条件如下:
① 【主机】端的界面位图传输功能使用的是《Visual C++C6.0技术内幕第五版》源码ex34a的Blocksock,这个TCP套接字类非常好用,因为带了“超时取消”功能,建议在工程中多多使用这样的类;
② 【主机】端的桌面位图捕获,见CopyBitmap、ToMemory两个函数,分为实现了获取桌面HBITMAP和将这个HBITMAP完整的按bitmap格式保存到内存中。ToMemory的第三个参数为像素颜色,可选择32、24、16、8,自己试一试,会占用不同的内存容量,建议取8,这样一幅800×600的位图不压缩时占用480K字节多;
③ 【主机】端的位图压缩,采用了开源项目miniLZO,这个开源压缩项目非常好用。经验证,一般界面下的位图,压缩后压缩比可以达到90%而且速度超快。这些比例数字都在程序中显示;
④ 鼠标键盘控制信息采用了低级钩子的方法获取,注意,低级钩子它们并不需要单独写DLL。(VC6捕获鼠标事件(移动、单击等)的一些总结(MFC消息、DriectInput、钩子)),说明了为什么要使用低级钩子来换取;
⑤ 鼠标键盘的控制信息传输采用了UDP,在Lan.cpp中实现;
⑥ 为了提高程序的健壮性,使用毫秒级的多媒体测时函数,测量发送、接收花费的时间,做到心中有数;
⑦ 【远程终端】把收到的压缩位图,解压后,使用函数GetHBmp得到HBIMAP,并使用一个位图控件做显示。
使用时,先将每个程序的IP地址设一下(每个程序有两处IP需要设,IP指的是都是对方的IP地址),先运行【远程终端】,再运行【主机】程序。
④ 请问如何将远程桌面上的文件download到本地电脑
如果本地机器和服务器不是同一个操作系统,有时候无法共享成功.但是有时候也可以.如 WINXP / WIN2003 就可以. WIN2000/WIN2003就没有成功过,你可以测试一下.
如果无法共享硬盘,还有其他办法:
1\用PCANYWHERE这个远程控制软件,网上很容易下载到.这个和远程桌面差不多,不过有传输文件的功能.
2\在服务器上安装FTP服务软件,如SERV-U,也很容易下载到,安装之后可以通过FTP从服务器上下载文件.
3\将服务器上的文件打包后放到该服务器上某个WEB目录下,本地机器通过WEB方式下载此压缩包.
以上方案均可行.看你哪一种方便了