Salve, sono appena passato su visual basic .net e ne stavo approffittando per fare un po' di esercizio.
Dunque volevo modificare le proprietà di un form qualsiasi, mi ricordo che con VB6 ero riuscito ad ottenere l'handle delle finestre usando le Api e modificare la caption del form e dei controlli con sendmessage.
Purtroppo ho perso il progetto.

Sul vb.net vorrei, avendo già trovato l'handle, cambiare una qualche proprietà del form identificato con l'handle.
Mi interesserebbe cambiare il text (il caption del vb6) e l'opacity e, se possibile, usare l'handle in questione per stampare quel form.

codice:
Imports System.Runtime.InteropServices
Imports System.Drawing.Printing

Public Class frm_prova

    Public Const WM_SETTEXT = &HC

    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal Hwnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer

    Private Sub frm_prova_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

         SendMessage(2754032, WM_SETTEXT, 0, 0) '2754032 handle di prova

    End Sub
End Class
In questo esempio si azzera il text al form con l'handle selezionato (anche se non con tutti funziona), però non so come impostare il testo e le altre proprietà di cui parlavo (anche se ho dato un'occhiata a queste costanti http://www.vbcode.com/Asp/showsn.asp?theID=11797).

Potete aiutarmi?

Edit: mi sono accorto che dovevo dichiarare lParam come String e dunque SendMessage(2754032, WM_SETTEXT, 0, "testoprova") funziona, ma stranamente non su tutte. :master:.