2015-02-13 1 views
0

Я использую этот код:Как запустить любое приложение с собственной UI Design vb.net

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 

но запустить приложение внутри панели с границей. Если я создаю свою собственную виртуальную операционную систему, как мне изменить границу на none? , как окна 7 имеют свою собственную границу формы, окна 8 и Mac тоже. но я делаю свою собственную границу формы. это графически, как я могу заставить приложение использовать мою границу?

это несколько примеров (я не могу опубликовать изображение):

Windows 8 Notepad with Their UI Design (it's Form Border for me)

Windows 7 Notepad with Their UI Design

И это мой UI Design:

(жаль, что я не могу вставить более, что 2 ссылки, удалить пробел в http: «Space» //)

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

Как я могу сделать это при двойном щелчке файла notepad.exe или другого .exe в моем виртуальном os? (Это отредактированная версия!):

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

это запустить ехе, но с моей Дизайн пользовательского интерфейса. Как я могу так поступить?

+0

ли вы на самом деле означает виртуальную ОС или просто тему? –

+0

Я делаю виртуальные ОС с рабочим столом, файлом, панель задач, но могу открыть файл .exe. когда я открываю exe-файл, если я нахожусь в Windows 7, он будет использовать дизайн пользовательского интерфейса Windows 7, но я хочу использовать свой собственный дизайн. –

ответ

0

По умолчанию сторонние приложения не поддерживают их ребрендинг сторонних разработчиков, и даже соглашения об использовании ОС не заставляют их делать это, за исключением поддержки для брендинга ОС, например, для system colors, accessibility features и т.д.

для реализации этого вам придется сделать много хакерства низкого уровня, сообщения перехватывают интерфейс (например, WM_NCCALCSIZE или WM_PAINT) и т.д., или заменить полные библиотеки, содержащие интерфейс рисование API (например GDI32.DLL) с твой собственный.

Все это требует точной работы, хорошего понимания различных аспектов и кода низкого уровня, хорошо скоординированных с остальной частью системы и примерно нескольких тысяч строк кода, включая некоторые native (not managed) code.

Это выполнимо, но не просто, см., Например, Stardock's WindowBlinds

Смотрите также:

  • поиск Google windows skins
Смежные вопросы