Mit VB08 im externen Programm (Remedy) ein Makro ausführen lassen

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von MSB2000.

    Mit VB08 im externen Programm (Remedy) ein Makro ausführen lassen

    Hallo zusammen,

    ich möchte ein Programm schreiben welches mir unter anderen ermöglicht ein externes Programm zu öffnen und in diesem externen Programm ein Makro startet.

    Auf dem Rechner wo ich mein programm schreibe existiert dieses Programm aber nicht. Ich möchte quasi so schreiben, dass mein Tool auf einem anderen Rechner funktionieren soll - wo sich das externe Programm befindet.

    Auf dem anderen Rechner konnte ich es bereits über Excel03 VBA umsetzen. Allerdings konnte ich, da das Programm auch installiert ist, einen Verweis darauf deklarieren (Verweis auf ARUser). Es handelt sich um das Remedy - wer es kennt?! Hier mal der Code für Excel 2003

    VB.NET-Quellcode

    1. Dim objARSession As New ARUSER.COMAppObj
    2. Dim objARWindow As ARUSER.ICOMFormWnd2
    3. Dim sessionID As Long
    4. Dim stUserName, stPassword As String
    5. stUserName = "Mein Username"
    6. stPassword = "Mein Passwort"
    7. sessionID = objARSession.Login(stUserName, stPassword, 0)
    8. Set objARWindow = objARSession.LoadForm(sessionID, "Mein Server", "Mein Link", "", ARDisplay, 1)
    9. Call objARSession.RunMacro(sessionID, "TEST MAKRO", 0, 0)
    10. End Sub


    Klappt wirklich super. Aber weiß jemand wie dieses in VB 2008 umsetzen kann, so dass dieses als Prog läuft??

    Danke im voraus...

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „MSB2000“ ()

    Nicht Shell, sondern Process.
    Da kannst Du das Programm ordentlich starten, bekommst ein Handle und kannst, nicht SendKeys, sondern API.SendMessage rüberblasen, was immer Du willst.
    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!
    Hey,

    wenn ihr ein externes Programm öffnet wollt, dann sichert euch ab.
    Ich hatte das Problem, dass Shell bei mir eine .exe Datei zerpflügt hat.
    Ich wollte die .exe dann normal starten, dann kam immer in der CMD die Meldung:
    Speicher ungenügend zum Ausführen des Programmes.

    und hast sich sofort wieder geschlossen.

    Grüßle Marco

    MSB2000 schrieb:

    diese Prozedur kenn ich gar nicht

    Das ist keine Prozedur, sondern einer Klasse.
    Mal als Anhaltrspunkt:

    VB.NET-Quellcode

    1. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    2. Process.Start("Notepad.exe")
    3. Process.Start("mailto:bla.bla@bla.de")
    4. Dim pr As New Process
    5. pr.StartInfo.FileName = "notepad.exe"
    6. pr.Start()
    7. Dim pr2 As New Process
    8. pr2.StartInfo.FileName = "bla.pdf" ' hier muss ein gültiger Pfad rein
    9. pr2.Start()
    10. End Sub
    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!