Les Snippets

Connexion

ProcessHosting

Niveau requis pour utiliser/comprendre cette source : 2 ( Initié )
Créé le 18/08/2010 11:04:10 et initié par gillardg [Liste]
Vue : 4199
Catégorie(s) : API, Trucs & Astuces, Divers, Class, WinForm
Langages dispo pour ce code :
- VB 2005, VB 2008



Langage : VB 2005 , VB 2008
Date ajout : 18/08/2010
Posté par gillardg [Liste]

Imports Microsoft.VisualBasic
Imports System
Imports System.Collections.Generic
Imports System.Windows.Forms
Imports System.Diagnostics
Imports System.Runtime.InteropServices
Imports System.Threading
Imports System.Drawing


Class Processhost


    ' Inherits Form
    Private p As Process


    <DllImport("user32.dll", SetLastError:=True)> _
    Shared Function SetParent(ByVal hWndChild As IntPtr, ByVal hWndNewParent As IntPtr) As IntPtr
    End Function


    <DllImport("user32.dll")> _
    Shared Function SetWindowPos(ByVal hWnd As IntPtr, ByVal hWndInsertAfter As IntPtr, ByVal X As Integer, ByVal Y As Integer, ByVal cx As Integer, ByVal cy As Integer, ByVal uFlags As UInteger) As <MarshalAs(UnmanagedType.Bool)> Boolean
    End Function



    Private Shared ReadOnly HWND_TOP As New IntPtr(0)
    Public Const SWP_NOACTIVATE As Integer = &H10
    Public Const SWP_SHOWWINDOW As Integer = &H40


    'process name may include a path and filename
    'container handle may be me.handle or similar
    'rect the rectangle where you wish to see the process
    '
    'example:
    'WBool= Start£Process("mspaint.exe",panel1.handle,Me.ClientRectangle)
    '
    Public Function StartProcess(ByVal ProcessName As String, ByVal ContainerHandle As IntPtr, ByVal Rect As Rectangle) As Boolean
        Try
            p = New Process()
            p.StartInfo.FileName = ProcessName
            p.Start()
            p.WaitForInputIdle(-1)
            SetParent(p.MainWindowHandle, ContainerHandle)
            SetWindowPos(p.MainWindowHandle, HWND_TOP, Rect.Left, Rect.Top, Rect.Width, Rect.Height, SWP_NOACTIVATE Or SWP_SHOWWINDOW)


        Catch ex As Exception
            Return False
        End Try
        Return True
    End Function


    ' call this in your form resize :)
    Public Function ParentResize(ByVal rect As Rectangle) As Boolean


        Try
            SetWindowPos(p.MainWindowHandle, HWND_TOP, rect.Left, rect.Top, rect.Width, rect.Height, SWP_NOACTIVATE Or SWP_SHOWWINDOW)


        Catch ex As Exception
            Return False
        End Try
        Return True
    End Function


End Class


Snippets en rapport avec : Form, Host, Process



Codes sources en rapport avec : Form, Host, Process

{C# / C#.NET} AFFICHER LA CELLULE D'UN DATAGRIDVIEW DANS UN TEXTBOX D'UN AUTRE FORM
Bonjour, Je souhaite afficher la colonne 2 de la ligne sélectionnée dans un textBox de mon Form Com...

{Delphi} EFFET MATRIX DANS UN PANEL
Bonjour , voici un petit effet du film Matrix , il s'agit au départ d'un screensaver existant sur...

{Visual Basic, VB6, VB.NET, VB 2005} DÉGRADÉS DE COULEUR DANS LES OBJETS PAR SIMPLE CALL À UNE PROCÉDURE.
J'ai décidé de retirer toutes les sources que j'ai déposées sur ce site en raison de l'attitude de c...

{Delphi} LE BUREAU DANS LA FORM
Titre:Le Bureau dans la form Un exemple de code qui montre comment mettre le Bureau de Windows dans...

{Visual Basic, VB6, VB.NET, VB 2005} TROUVER UN CONTROLE "ACTIF" DANS UN FORM
Petit bout de code pour trouver par exemple une checkbox à true dans un form, au milieu d'un groupbo...

{Visual Basic, VB6, VB.NET, VB 2005} METTRE VOTRE FORM VB.NET EN PLEINE ÉCRAN
Voila une source qui sera parfaites pour mettre vos formulaires VB.net en pleine écran. Elle sera...

{Visual Basic, VB6, VB.NET, VB 2005} STYLE AERO DE VISTA/SEVEN SUR FORM VB
Voila une source qui va vous plaire !!! Elle va vous permettre de créer un composant personnaliser...

{Visual Basic, VB6, VB.NET, VB 2005} CRÉER SON PROPRE DESIGNER COMME CELUI DE VISUAL STUDIO
Ce code montre comment utiliser les fonctionnalités incluses dans le framework lui même et qui perme...

{C# / C#.NET} CONNAITRE LE PROCESS CONNECTÉ À VOS SOCKET
Permet de récupérer une instance de Process désignant l'application connecté à l'autre bout de vos S...

{JAVA / J2EE} GESTION DE FORMULAIRE SWING
Petite source pour créer des formulaires facilement, gestion des validations des champs plus la mise...