vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
ma noch ne Frage... 
Autor: Bene
Datum: 20.07.04 15:07

Danke erstma!

Ich habe da nur ne Frage....
ICh komme irgendwie mit dem Code von dem posting nicht klar...
http://www.vbarchiv.net/forum/id10_i19735t19718.html

 
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" ( _
        ByVal hwnd As Int32, _
        ByVal wMsg As Int32, _
        ByVal wParam As Int32, _
        ByRef lParam As COPYDATASTRUCT) _
        As Int32
    Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" ( _
    ByVal lpClassName As String, _
    ByVal lpWindowName As String) As Int32
    Public Structure COPYDATASTRUCT
        Public dwData As IntPtr
        Public cbData As Integer
        Public lpData As String
    End Structure
 
    Const WM_COPYDATA As Integer = &H4A
 
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
  System.EventArgs) Handles Button1.Click
        Dim cpy As COPYDATASTRUCT
        Dim strMsg As String = "Hello World!"
        Dim hwnd As Integer = getWindowHandle()
        cpy.lpData = strMsg
        cpy.cbData = strMsg.Length
        If hwnd = -1 Then MessageBox.Show("Keine 2. Instanz gefunden!") : Return
        Try
            SendMessage(hwnd, WM_COPYDATA, 0, cpy)
        Catch ex As Exception
            MessageBox.Show(ex.ToString)
        End Try
    End Sub
 
 
    Private Function getWindowHandle() As Integer
        For Each p As Process In System.Diagnostics.Process.GetProcessesByName( _
          Process.GetCurrentProcess.ProcessName)
            If p.Id <> Process.GetCurrentProcess.Id AndAlso _
            p.MainWindowTitle = "Destination" Then
                Return p.MainWindowHandle.ToInt32
            End If
        Next
        Return -1
    End Function
    Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
        MyBase.WndProc(m)
        Try
            If m.Msg = WM_COPYDATA Then
                Dim cpy As COPYDATASTRUCT
                cpy = CType(m.GetLParam(cpy.GetType), COPYDATASTRUCT)
                MessageBox.Show("Nachricht: " + cpy.lpData)
            End If
        Catch ex As Exception
            MessageBox.Show(ex.ToString)
        End Try
    End Sub
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles MyBase.Load
        Me.Text = "Destination"
    End Sub
Kann mir jemand sagen, was die getWindowHandle() Prozedur macht???

Wäre nett, wenn ihr mir ein wenig erklären könntet.
ciao
mfg Bene
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Sendkeys?(neu?)957Bene20.07.04 14:31
Re: Sendkeys?(neu?)727WaldiMaywood20.07.04 14:41
ma noch ne Frage...745Bene20.07.04 15:07
Re: ma noch ne Frage...678WaldiMaywood20.07.04 15:11
Re: ma noch ne Frage...684Bene20.07.04 15:21
Re: ma noch ne Frage...662WaldiMaywood20.07.04 15:29
Re: ma noch ne Frage...840Bene20.07.04 15:43
Re: ma noch ne Frage...647WaldiMaywood20.07.04 16:09
Re: ma noch ne Frage...665WaldiMaywood20.07.04 16:24

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel