MessengerAPI funktioniert NICHT auf anderen Computern

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Shaymin123[CRI09].

    MessengerAPI funktioniert NICHT auf anderen Computern

    Hay

    Ich habe mit VB 2008 ein Tool zusammengestellt (aber noch net fertiggebracht), womit ich den MSN Messenger mittels MessengerAPI fernsteuern kann (nichts neues eiglich).

    Jetzt habe ich das Programm auf meinen alten Computer gepackt der auch MSN installiert hat und musste feststellen, das das Programm Fehlermeldungen gibt.
    Natürlich habe ich auch die .dll Datei mit auf den Computer gepackt aber wie gesag es funktioniert nicht und brauch mal eure hilfe.

    Hier is mein Code von der Hauptform:

    VB.NET-Quellcode

    1. Imports MessengerAPI
    2. Public Class Form1
    3. Dim msn As New Messenger
    4. Public WithEvents t As New Timer
    5. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Layout
    6. t.Interval = 100
    7. t.Start()
    8. Label2.Text = "Aktueller User: " + msn.MyFriendlyName
    9. End Sub
    10. Protected Sub t_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles t.Tick
    11. Dim Status As String
    12. Status = Replace(msn.MyStatus.ToString, "MISTATUS_", "")
    13. Label1.Text = "Aktueller Status: " & Status
    14. If Label1.Text = "Aktueller Status: ONLINE" Then
    15. Label1.Text = "Aktueller Status: Verfügbar (Online)"
    16. statuslogo.Image = My.Resources.icoonline
    17. ElseIf Label1.Text = "Aktueller Status: BUSY" Then
    18. Label1.Text = "Aktueller Status: Beschäftigt"
    19. statuslogo.Image = My.Resources.icobusy
    20. ElseIf Label1.Text = "Aktueller Status: AWAY" Then
    21. Label1.Text = "Aktueller Status: Abwesend"
    22. statuslogo.Image = My.Resources.icoaway
    23. ElseIf Label1.Text = "Aktueller Status: INVISIBLE" Then
    24. Label1.Text = "Aktueller Status: Offline (Unsichtbar)"
    25. statuslogo.Image = My.Resources.icooffline
    26. End If
    27. End Sub
    28. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    29. change_status.Show()
    30. End Sub
    31. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
    32. Label2.Text = "Aktueller User: " + msn.MyFriendlyName
    33. End Sub
    34. Private Sub StatusÄndernToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StatusÄndernToolStripMenuItem.Click
    35. change_status.Show()
    36. End Sub
    37. Private Sub NameAktualisierenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NameAktualisierenToolStripMenuItem.Click
    38. Label2.Text = "Aktueller User: " + msn.MyFriendlyName
    39. End Sub
    40. Private Sub Form1_Load_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    41. Label3.Text = "eMail Adresse: " + msn.MySigninName
    42. Label4.Text = "ServiceID: " + msn.MyServiceId
    43. Label5.Text = "Service Name: " + msn.MyServiceName
    44. End Sub
    45. Private Sub UsertitelpfadToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles UsertitelpfadToolStripMenuItem.Click
    46. MsgBox(msn.MyProperty(MCONTACTPROPERTY.MCONTACTPROP_USERTILE_PATH), MsgBoxStyle.Information, "Usertitelpfad")
    47. End Sub


    Hier von der 2.Form:

    VB.NET-Quellcode

    1. Public Class change_status
    2. Dim msn As New MessengerAPI.Messenger
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. msn.MyStatus = MessengerAPI.MISTATUS.MISTATUS_ONLINE
    5. MessageBox.Show("Aktueller Status ist nun Online.", "Hinweis", MessageBoxButtons.OK, MessageBoxIcon.Information)
    6. Me.Close()
    7. End Sub
    8. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    9. msn.MyStatus = MessengerAPI.MISTATUS.MISTATUS_BUSY
    10. MessageBox.Show("Aktueller Status ist nun Beschäftigt.", "Hinweis", MessageBoxButtons.OK, MessageBoxIcon.Information)
    11. Me.Close()
    12. End Sub
    13. Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    14. msn.MyStatus = MessengerAPI.MISTATUS.MISTATUS_AWAY
    15. MessageBox.Show("Aktueller Status ist nun Abwesend.", "Hinweis", MessageBoxButtons.OK, MessageBoxIcon.Information)
    16. Me.Close()
    17. End Sub
    18. Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    19. msn.MyStatus = MessengerAPI.MISTATUS.MISTATUS_INVISIBLE
    20. MessageBox.Show("Aktueller Status ist nun Offlinezeigend.", "Hinweis", MessageBoxButtons.OK, MessageBoxIcon.Information)
    21. Me.Close()
    22. End Sub
    23. Private Sub change_status_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    24. If Form1.Label1.Text = "Aktueller Status: Verfügbar (Online)" Then
    25. Button1.Enabled = False
    26. Button2.Enabled = True
    27. Button3.Enabled = True
    28. Button4.Enabled = True
    29. ElseIf Form1.Label1.Text = "Aktueller Status: Beschäftigt" Then
    30. Button1.Enabled = True
    31. Button2.Enabled = False
    32. Button3.Enabled = True
    33. Button4.Enabled = True
    34. ElseIf Form1.Label1.Text = "Aktueller Status: Abwesend" Then
    35. Button1.Enabled = True
    36. Button2.Enabled = True
    37. Button3.Enabled = False
    38. Button4.Enabled = True
    39. ElseIf Form1.Label1.Text = "Aktueller Status: Offline (Unsichtbar)" Then
    40. Button1.Enabled = True
    41. Button2.Enabled = True
    42. Button3.Enabled = True
    43. Button4.Enabled = False
    44. End If
    45. End Sub
    46. End Class


    Wenn jemand den fehler finden sollte könntet ihr mir dan den Fehler nennen

    Danke voraus
    hallo.. So genau kann man dir denk ich nicht sagen, wo der Fehler liegt.
    Was genau wird denn ausgegeben? Programm funktioniert nicht mehr.. oder Irgend ne andere Meldung?
    Ich merk grad, dass du nen Timer benutzt. Das brauchst du eigentlich garnicht, weil MessengerAPI Events besitzt, wie z.b. StatusChanged (o.ä.).
    Außerdem fängst du nirgendwo fehler ab. Kein Try Catch Blöcke, etc.
    Sinnvoll wäre auch, wenn du mal eine Log einbaust, der dir die Fehler in einer Datei schreibt. So könntest du evtl auch den Fehler selbst rausfinden.
    "Wenn jemand in einem Betrieb unverzichtbar ist, dann ist dieser Betrieb falsch organisiert." - Roberto Niederer
    Mach mal in jeder Prozedur eine Fehlerbehandlung und gib ne Messagebox aus mit dem Inhalt von ex.Message, etwa so:

    VB.NET-Quellcode

    1. Private Sub Blubb
    2. Try
    3. 'Dein Code
    4. Catch ex As Exception
    5. Messagebox.Show(ex.Message)
    6. End Try
    7. End Sub

    Und das in jeder Methode/Funktion ( auch events sind Methoden, wie z.B. ein Buttonklick Ereignis)

    Dann schauen wir weiter.
    "Wenn jemand in einem Betrieb unverzichtbar ist, dann ist dieser Betrieb falsch organisiert." - Roberto Niederer

    Shaymin123[CRI09] schrieb:

    muss das auf die Form-load?
    Wenn ja funktioniert es net


    Schau dir mein Beitrag GENAU an. Dann stell solche Fragen.
    Das beweist nur, dass der Fehler nicht unbedingt am Programm liegt, sondern weil du noch ein Frischling in der Entwicklung bist und DU den Fehler irgendwo verursacht hast.
    "Wenn jemand in einem Betrieb unverzichtbar ist, dann ist dieser Betrieb falsch organisiert." - Roberto Niederer