我有一个C尖锐的控制台应用程序捕获多次MS Word文档的屏幕截图。 它工作的很好,但是当我把这个应用程序在远程的Windows XP机器上,它工作正常,而我在远程即我的远程桌面是可见的,但如果我运行我的应用程序,离开远程桌面(尽量减less,甚至没有注销,我想做 )截图需要的是空白的!
即使在没有用户连接的情况下,我如何保持GUI的活动状态?
这是我使用的代码:
所有者绘制文本框在WinForms中使用
C#挂钩Windows进程来检查debugging进程
如何在特定条件下隐藏UWPpopup窗口
确定Hyper-V当前是否处于活动状态(未安装或未configuration)
我的本地主机变得如此之慢,我在Windows 7和Asp.net MVC
public Image CaptureWindow(IntPtr handle) { // get te hDC of the target window IntPtr hdcSrc = User32.GetwindowDC(handle); // get the size User32.RECT windowRect = new User32.RECT(); User32.GetwindowRect(handle,ref windowRect); int width = windowRect.right - windowRect.left; int height = windowRect.bottom - windowRect.top; // create a device context we can copy to IntPtr hdcDest = GDI32.CreateCompatibleDC(hdcSrc); // create a bitmap we can copy it to,// using GetDeviceCaps to get the width/height IntPtr hBitmap = GDI32.CreateCompatibleBitmap(hdcSrc,width,height); // select the bitmap object IntPtr hOld = GDI32.SelectObject(hdcDest,hBitmap); // bitblt over GDI32.BitBlt(hdcDest,height,hdcSrc,GDI32.SRCcopY); // restore selection GDI32.SelectObject(hdcDest,hOld); // clean up GDI32.DeleteDC(hdcDest); User32.ReleaseDC(handle,hdcSrc); // get a .NET image object for it Image img = Image.FromHbitmap(hBitmap); // free up the Bitmap object GDI32.DeleteObject(hBitmap); return img; }
更新
我目前正在使用Printwindow,它是唯一能够捕捉窗口框架(即最小化,最大化和closuresbutton),但内部是黑色的最接近的东西。
虽然它没有完全奏效,但它certificate了我可以从窗口手柄创build一个图像,而应用程序甚至不能被用户看到。
如何确定文件系统在.net中是否区分大小写?
ClickOnce开始菜单图标
如何从Windows执行一个Unix shell脚本
如何启用/禁用防火墙?
前一段时间我们正在做类似的事情,我们发现,当RDC最小化时,远程桌面会话不会重绘或接受键或鼠标事件。 一切工作正常,直到我们最小化了RDC屏幕。 一位同事发现,这是出于性能原因。
前几天我偶然发现了这个,但是我没有机会尝试。 如果你尝试它的工作,请让我知道:)
RDC最小化时与远程桌面进行交互
关于您的意见:我认为这是另一种问题…我知道,即使没有人登录到计算机上,您也需要您的应用程序工作。 我已经实现了允许与桌面交互的服务,例如,启动应用程序并使其自动化。 即使没有人登录到本机,您仍然可以使用UI自动化库(或者您的代码)来操作UI。
启动机器后,当我的服务和自动化应用程序运行时,一切正常。 稍后,被自动化的用户界面会出现在登录的第一个人的桌面上(我是一名机器管理员,我不知道有什么权限登录的人会发生什么事情)。
我不知道如果第一次登录是通过RDC完成会发生什么。 也许你可以尝试改变这些RDC设置id,这会影响你的应用程序的行为。 另一个选择是:
使用其他远程桌面应用程序连接到本机(例如TightVNC)
这有帮助吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。