如何使用自己的UI设计vb.net启动任何应用程序

如何使用自己的UI设计vb.net启动任何应用程序,vb.net,windows,operating-system,exe,Vb.net,Windows,Operating System,Exe,我使用以下代码: Shared Sub OpenApplication(ByVal ApplicationPath As String) Dim p As Process Dim ShowForm As New Form Dim FormPanel As New Panel FormPanel.Dock = DockStyle.Fill ShowForm.Controls.Add(FormPanel) p = Process.Start(Appli

我使用以下代码:

Shared Sub OpenApplication(ByVal ApplicationPath As String)
    Dim p As Process
    Dim ShowForm As New Form
    Dim FormPanel As New Panel
    FormPanel.Dock = DockStyle.Fill
    ShowForm.Controls.Add(FormPanel)
    p = Process.Start(ApplicationPath)
    Threading.Thread.Sleep(500)
    SetParent(p.MainWindowHandle, FormPanel.Handle)
    ShowForm.Show()
End Sub
但是它在有边框的面板内运行应用程序。 如果我自己制作虚拟操作系统,如何将边框更改为无? 像Windows7一样,Windows8和mac也有自己的窗体边框。 但我做我自己的形式边界。它是图形化的,如何使应用程序使用我的边框

这是一些示例(我无法发布图像):

这是我的UI设计:

(很抱歉,我无法插入超过2个链接,请删除http:“space”//中的空格)

http://40-89-67-30-21.weebly.com//files/theme/Notepad.png

在我的虚拟操作系统中双击notepad.exe或另一个.exe文件时,我如何能做出这样的效果?(这是经过编辑的版本!):

http://40-89-67-30-21.weebly.com//files/theme/Notepad_edited.png


它运行的exe,但与我自己的UI设计。我怎样才能做到这一点呢?

默认情况下,第三方应用程序不支持第四方开发人员对其进行重新品牌化,甚至特定于操作系统的编码约定也不强制他们这样做,除了对操作系统品牌化的支持,如尊重等

为了实现这一点,您必须进行大量低级黑客攻击、拦截UI消息(如或)等,或者用自己的库替换包含UI绘图API(如)的完整库

所有这些都需要精确的工作、对各种低级方面的良好理解、与系统其余部分协调的代码以及大约几千行代码,包括一些

这是可行的,但并不简单

另见:

  • 谷歌搜索
    windows皮肤

你真的是指虚拟操作系统还是仅仅是一个主题?我使用桌面、文件浏览、任务栏制作虚拟操作系统,但可以打开.exe文件。当我打开exe文件时,如果我在windows 7中,它将使用windows 7 UI设计,但我想使用我自己的设计。