将另一个.exe的缩略图图像嵌入到窗体中作为预览

时间:2011-03-11 04:26:26

标签: vb.net preview

我希望将.exe嵌入到我的表单中。我想要做的一个例子是在Windows中选择屏幕保护程序时的预览区域。它显示当前窗口中应用程序的小型运行预览。我怎么用我的VB形式做到这一点?

1 个答案:

答案 0 :(得分:0)

嗯,那不是那么容易的。屏幕保护程序明确设计为支持预览。它们不是EXE,它们是DLL。它们运行进程并导出Windows调用的3个函数,以使它们执行屏幕保护程序通常执行的操作。

预览EXE窗口是一个完全不同的问题,更难解决。通过对SetParent()API函数进行直接调用,使您的窗口成为EXE窗口的父级,这有点可能。为此,您必须拥有EXE窗口的句柄,这很难获得。没有太多令人讨厌的pinvoke的最佳选择是Process.MainWindowHandle。获取缩略图视图也不太可能,EXE控制窗口的绘制。你可以通过移动MoveWindow使窗口更小,你得到的是不可预测但不太可能像缩略图。例如,尝试将Visual Studio窗口的大小调整为缩略图大小。

如果您想尝试此操作,请访问pinvoke.net以获取所需的声明。如果这是一个“入门”的项目,那么请考虑尝试解决不太可能令人失望的事情。