Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Result von msg.exe abfragen

Frage Entwicklung Visual Studio

Mitglied: ahstax

ahstax (Level 2) - Jetzt verbinden

18.09.2013 um 11:37 Uhr, 1318 Aufrufe, 2 Kommentare, 1 Danke

Hallo miteinander,

mit einem Code werden alle PCs (Win7) und die daran angemeldeten User im Netzwerk abgefragt. Diese Infos werden in eine CheckedListBox geladen (Formatierung: vbTab & User & vbTab & vbTab & PC). An darin ausgewählte Personen kann man dann eine Nachricht (mit msg.exe) senden (ohne, dass auf der anderen Seite ein Programm außer den Bord-Mitteln läuft). Die Nachricht wird versendet mit folgendem Code:

01.
Public Sub NachrichtVersenden() 
02.
 
03.
        Dim p1 As New System.Diagnostics.Process 
04.
        Dim applicationPath As String = Application.StartupPath 
05.
        Dim executablePath As String = applicationPath & "\msg.exe" 
06.
        Dim strEmpfaengerDaten As String() 
07.
        Dim Nachricht As String = Nothing 
08.
 
09.
        For Each Item As String In chlsBoxEmpfaenger.CheckedItems 
10.
 
11.
            strEmpfaengerDaten = Split(Item, vbTab) 
12.
 
13.
            'MsgBox(strEmpfaengerDaten.Length) 
14.
            'Kürzel 
15.
            'MsgBox(strEmpfaengerDaten(1)) 
16.
            'PC-Name 
17.
            'MsgBox(strEmpfaengerDaten(3)) 
18.
 
19.
            Nachricht = txtBoxNachricht.Text 
20.
 
21.
            If My.Computer.Network.Ping(strEmpfaengerDaten(3), 500) = True Then 
22.
 
23.
                With p1.StartInfo 
24.
 
25.
                    .FileName = executablePath 
26.
 
27.
                    If strEmpfaengerDaten(1) = "" Then 
28.
                        strEmpfaengerDaten(1) = "*" 
29.
                    End If 
30.
                    .Arguments = strEmpfaengerDaten(1) & " /SERVER:" & strEmpfaengerDaten(3) & " /time:3600 /v " & Nachricht 
31.
                    .UseShellExecute = False 
32.
                    .ErrorDialog = False 
33.
                    .RedirectStandardOutput = True 
34.
                    .RedirectStandardError = True 
35.
                    .CreateNoWindow = True 
36.
 
37.
                End With 
38.
                With p1 
39.
                    .Start() 
40.
                    .WaitForExit() 
41.
                End With 
42.
            End If 
43.
 
44.
        Next 
45.
 
46.
        MsgBox("Nachricht" & vbCrLf & vbCrLf & Nachricht & vbCrLf & vbCrLf & "wurde versendet.", , "Info") 
47.
        UnCheckAll() 
48.
        txtBoxNachricht.Text = "" 
49.
 
50.
    End Sub
Das klappt auch (soweit).
Ich würde nun gerne feststellen können, ob beim Übermitteln der Nachricht ein Fehler aufgetreten ist.
Bei der Abfrage der PCs funktioniert das (so was ähnliches) mit

01.
With p0.StartInfo 
02.
                .CreateNoWindow = True 
03.
                .FileName = "net.exe" 
04.
                .Arguments = " view" 
05.
                .RedirectStandardOutput = True 
06.
                .UseShellExecute = False 
07.
 
08.
                With p0 
09.
                    .Start() 
10.
                    .WaitForExit(1000) 
11.
                    Dim result As String = "" 
12.
                    While .StandardOutput.Peek > -1 
13.
                        result = .StandardOutput.ReadLine() 
14.
...
Ich habe versucht, das entsprechend anzupassen. Aber irgendwie scheint msg.exe kein Feedback bereitzustellen...?

Fragen:
Wie kann ich ein Result von msg.exe (zumindest Fehler) auswerten?
Gibt es eine einfache Alternative zu msg.exe?

Ich freue mich auf Hinweise.

Neugierige Grüße,
Andreas
Mitglied: Nobody-Is-Perfect
18.09.2013, aktualisiert um 14:25 Uhr
Hi Andreas,

ohne den Code jetzt nachstellen zu wollen, hätte ich aber eine Idee.
Jeder Process liefert einen ExitCode (nachzulesen: hier ).
Jedes so ausgeführte Programm hat Rückgabewerte. Der Rückgabewert 0 bedeutet für gewöhnlich ohne Fehler beendet.

Ich hoffe, das hilft.

Grüße vom Nobody
Bitte warten ..
Mitglied: ahstax
18.09.2013 um 14:32 Uhr
Danke, das wars!!!
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...