Über COM-Schnittstelle mit anderem Programm kommunizieren.

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von FloFuchs.

    Über COM-Schnittstelle mit anderem Programm kommunizieren.

    Also ich habe ein Programm geschrieben, dass mir alle Daten einliest und später über eine COM-Schnittstelle (ActiveX) an ein anderen Programm diese Daten einträgt und etwas bestimmtes macht.

    Problem dabei, ich habe noch nie mit COM Schnittstellen gearbeitet, wie muss ich vorgehen und wie baue ich die Verbindung auf, das ich diese Daten übertragen kann?

    Fürs erste kann es auch eine Anbindung an Excel sein ;)

    MFG Joox ;)
    Wenn Du 2 Ports an Deinem Rechner hast, kannst Du Dir ein Programm als Sender/Empfänger und ein anderes als Empfänger/Sender machen und dann so lange spielen, bis es funktioniert. Oder Du machst das auf 2 Rechnerm mit je einem Port.
    Nutze das Control SerialPort aus dem Designer.
    Gehe auf die Startseite vom Forum und tippe SerialPort in das Suchfeld ein, da bekommst Du meterweise Hinweise und Code.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Joox schrieb:

    Fürs erste kann es auch eine Anbindung an Excel sein

    FloFuchs schrieb:

    Zuerst musstu Excel mit VB verbinden
    Sprich, den Verweis einfügen und importieren...
    danach deine Datei öffnen und an eine Variable binden.
    entsprechend dann das zu bearbeitende Worksheet...

    VB.NET-Quellcode

    1. Imports Microsoft.Office.Interop
    2. Public Class Form1
    3. Dim xlApp As New Excel.Application
    4. Dim xlWorkbook As Excel.Workbook
    5. Dim xlWorksheet As Excel.Worksheet
    6. Sub WerteEintragen()
    7. xlWorkbook = xlApp.Workbooks.Open("DeinPfad")
    8. xlWorksheet = CType(xlWorkbook.Worksheets("DeinSheetName"), Excel.Worksheet)
    9. Dim suchRng As Excel.Range = xlWorksheet.Range("A:A")
    10. For Each rng As Excel.Range In suchRng
    11. If String.IsNullOrEmpty(rng.Value.ToString) Then Exit For
    12. If rng.Value.ToString = "Was du suchst halt" Then
    13. rng.Offset(Zeilebleibtgleich, SpaltenOffset).value = wasAuchImmer
    14. End If
    15. Next
    16. End Sub