View Full Version : [VB.NET] Applicanzione contenente finestra word
Ciao, in un pannello della mia applicatione dovrei iserire un finestra word, sapete come si fa? Esiste un elemento in VB.NET che corrisponde ad esso?
Grazie
Ciao!
Il metodo forse più semplice in assoluto è il controllo WebBrowser, che può aprire un buon numero di documenti di vari formati, purchè ovviamente la relativa applicazione sia installata sul PC che esegue il programma :
WebBrowser1.Navigate("C:\Test.doc")
Questo metodo lo conosco. Il probrlema é che in questo modo l'applicazione word che si apre all'interno del browser é limitata, per esempio manca il meno e altre toolbar che io avrei bisogno.
Ho trovato la possibilità di far partire un istanza di word in questo modo:
Dim winWord As New Microsoft.Office.Interop.Word.Application()
WinWord.Visible = True
Io vorrei però che questa finestra che si apre esternamente vada a finire dentro il mio form.
Non sapete come si fa?
Ci sono diversi metodi per farlo, ma avrai bisogno di fare riferimento diretto ad alcune librerie API, ad esempio in questo modo :
> Dichiarazioni API necessarie :
Private Const WM_SYSCOMMAND As Integer = 274
Private Const SC_MAXIMIZE As Integer = 61488
Private Declare Auto Function SetParent Lib "user32.dll" (ByVal hWndChild As IntPtr, ByVal hWndNewParent As IntPtr) As Integer
Private Declare Auto Function SendMessage Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
> Apertura Word in Form :
Dim P As Process = Process.Start("winword.exe")
P.WaitForInputIdle()
SetParent(P.MainWindowHandle, Me.Handle)
SendMessage(P.MainWindowHandle, WM_SYSCOMMAND, SC_MAXIMIZE, 0)
;)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.