Form über Remote anzeigen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Creepx.

    Form über Remote anzeigen

    Hallo!

    Ich sitze zurzeit an einem Tool mit dem es möglich ist Nachrichten über "Remote" zu verschicken. Das klappt alles ganz wunderbar, nur ich möchte jetzt ein kleines Extra einbauen, bei dem ich nicht wirklich weiterkomme.

    Ich möchte das wenn man eine neue Nachricht erhält, diese in einer neuen Form angezeigt wird. Deswegen wollte ich es so programmieren, dass über Remotebefehle, die Form 2 geöffnet wird. Nur da komm ich leider nicht weiter.

    Konkrete Frage:

    Wie schicke ich einen Befehl per Remote, der Form 2 anzeigt?

    Lg
    Hallo @Creepx,Wenn ich dich richtig verstehe bekommt deine Form1 ja schon mal den Text den du sendest?!
    Wenn ja prüf doch einfach ob zb. der Text "Form2 anzeigen" oder so ähnlich gesendet wurde und lass dann form2 öffnen

    Um ein Beispiel zu zeigen müsstest du aber deinen verwendeten Code posten, das macht die Sache leichter

    LG Ruerte
    Unfortunately, this Signature is not available in Germany because it may contain music for which GEMA
    has not granted the respective music rights. Sorry about that.

    Problem gelöst, aber jetzt habe ich ein anderes Problem:

    Ich habe in Form1 einen Button. Wenn ich den drücke wird eine Nachricht per Remote geschickt.

    Ich möchte jetzt in Form2 einen Button machen und wenn ich den drücke wird der Button in Form1 versteckt gedrückt bzw, ausgeführt. Ist das möglich?

    LG
    @Creepx,
    Wenn ich dich richtig verstehe möchtest das hier?
    Dialoge: Instanziierung von Forms und Aufruf von Dialogen

    @OMA er will nicht den Button "Verstecken" sondern diesen drücken

    Creepx schrieb:

    versteckt gedrückt bzw, ausgeführt.

    LG Ruerte
    Unfortunately, this Signature is not available in Germany because it may contain music for which GEMA
    has not granted the respective music rights. Sorry about that.

    Weiters Problem. Ich habe nun zwei Ports auf meinem Mini Messenger laufen. Der eine klappt einwandfrei, der andere wird gesperrt. Gibt es ne Möglichkeit das zu umgehen? Ich weiß mein Code ist nicht wirklich sauber.

    Code:

    VB.NET-Quellcode

    1. #Region "Imports"
    2. Imports System.Net.Sockets
    3. Imports System.Threading
    4. Imports System.IO
    5. #End Region
    6. Public Class Form1
    7. #Region "Variablen"
    8. Dim listener As New TcpListener(40674)
    9. Dim listenerip As New TcpListener(40122)
    10. Dim client As TcpClient
    11. Dim client2 As TcpClient
    12. Dim nachricht As String = ""
    13. Dim ipnachricht As String = ""
    14. Dim ipaddresse = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName).AddressList.GetValue(0).ToString
    15. Dim listthread As New Thread(New ThreadStart(AddressOf listening))
    16. Dim listthread2 As New Thread(New ThreadStart(AddressOf listeningip))
    17. #End Region
    18. #Region "openfiledialog"
    19. Private Sub ofd()
    20. OpenFileDialog1.Filter = "Profilbild|*.png"
    21. OpenFileDialog1.Title = "Wähle dein Profilbild"
    22. End Sub
    23. #End Region
    24. #Region "Form_Closing"
    25. Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
    26. listener.Stop()
    27. listenerip.Stop()
    28. End Sub
    29. #End Region
    30. #Region "Form_Load"
    31. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    32. ipaddressetxt.Text = ipaddresse
    33. listthread.Start()
    34. listthread2.Start()
    35. status_dropdown.SelectedItem = "Online"
    36. 'ipaddressetxt.Hide()
    37. yourtexttxt.Hide()
    38. texttxt.Hide()
    39. End Sub
    40. #End Region
    41. #Region "Listening"
    42. Public Sub listening()
    43. listener.Start()
    44. End Sub
    45. Public Sub listeningip()
    46. listenerip.Start()
    47. End Sub
    48. #End Region
    49. #Region "Timer"
    50. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    51. If Not suche_txt.Text = "" Then
    52. Label1.Hide()
    53. Else
    54. Label1.Show()
    55. End If
    56. If status_dropdown.SelectedItem = "Online" Then
    57. ElseIf status_dropdown.SelectedItem = "Abwesend" Then
    58. ElseIf status_dropdown.SelectedItem = "Beschäftigt" Then
    59. ElseIf status_dropdown.SelectedItem = "Im Meeting" Then
    60. ElseIf status_dropdown.SelectedItem = "Telefonieren" Then
    61. End If
    62. End Sub
    63. Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
    64. If listener.Pending = True Then
    65. nachricht = ""
    66. client = listener.AcceptTcpClient
    67. Dim reader As New StreamReader(client.GetStream())
    68. While reader.Peek > -1
    69. nachricht = nachricht + Convert.ToChar(reader.Read()).ToString
    70. End While
    71. texttxt.Text = texttxt.Text & nachricht & vbCrLf
    72. ipaddressetxt.Text = partneriptxt.Text & nachricht & vbCrLf
    73. Else
    74. End If
    75. If listenerip.Pending = True Then
    76. ipnachricht = ""
    77. client2 = listenerip.AcceptTcpClient
    78. Dim reader2 As New StreamReader(client2.GetStream())
    79. While reader2.Peek > 1
    80. ipnachricht = ipnachricht + Convert.ToChar(reader2.Read()).ToString
    81. End While
    82. partneriptxt.Text = partneriptxt.Text & ipnachricht & vbCrLf
    83. End If
    84. If Not texttxt.Text = "" Then
    85. Form2.texttxt.Text = texttxt.Text
    86. Else
    87. End If
    88. If Not texttxt.Text = "" Then
    89. Form2.Show()
    90. Else
    91. End If
    92. End Sub
    93. #End Region
    94. #Region " PictureBox"
    95. Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click
    96. OpenFileDialog1.ShowDialog()
    97. End Sub
    98. #End Region
    99. #Region "button"
    100. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    101. client = New TcpClient(ip_txt.Text, 40674)
    102. client2 = New TcpClient(ip_txt.Text, 40112)
    103. Dim writer As New StreamWriter(client.GetStream())
    104. writer.Write(vbCrLf & "User: " & yourtexttxt.Text)
    105. writer.Write(ipaddressetxt.Text)
    106. writer.Flush()
    107. End Sub
    108. #End Region
    109. Private Sub ButtonBlue1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonBlue1.Click
    110. Form2.Show()
    111. End Sub
    112. End Class


    Error:



    Der Fehler kommt wenn der Port nicht gelisted wird, doch eigentliche Liste ich ihn doch oder nicht?

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Creepx“ ()

    Ist evtl ne schlechte Methode, aber ich wollte, dass wenn man jemandem schreibt, die IP mit übermittelt wird. Diese soll sich in eine versteckte Textbox schreiben. Nur das Problem ist das es sich immer in die Textbox schreibt, wo nur der Chat reinkommen soll und nicht die IP.

    Gibt es andere Möglichkeiten?

    Lg