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

(VB 6) rasdial.exe Ausgabe abfangen

Frage Entwicklung VB for Applications

Mitglied: 17735

17735 (Level 2)

11.07.2007, aktualisiert 12.07.2007, 10633 Aufrufe, 2 Kommentare

Hallo,
ich möchte mit VB 6 eine Clientanwendung schreiben, mit deren Hilfe man sich per VPN zu einem Netzwerk verbinden kann. Dazu verwende ich die rasdial.exe, die ich per shell-Befehl aus Visual Basic aus aufrufe.

Soweit klappt die Herstellung der Verbindung auch, wenn richtige Zugangsdaten eingegeben wurden.

Mein Programm soll auf Verbindungsfehler reagieren können und bei erfolgreicher Herstellung der Verbindung die Möglichkeit der Trennung anbieten bzw. anzeigen, wie lange die VPN-Verbindung bereits besteht. Wie kann ich die Ausgabe der EXE-Datei abfangen, um herauszufinden, ob die Verbindungsherstellung geklappt hat? Ich habe bereits so versucht:

01.
Dim VPNMessage as String 
02.
 
03.
VPNMessage = Shell "rasdial.exe VPN " & username & " " & password & " /DOMAIN:DOMAIN /PHONEBOOK:C:\vpnconnect.inf", vbHide
Leider gibt das Ausgeben der Variable VPNMessage dann nur die Task-ID zurück, mit denen ich nichts anfangen kann. Ich möchte wie gesagt das, was die EXE-Datei ausgibt abfangen, um überprüfen zu können, ob die Verbindung hergestellt wurde.

Gruß,
Ahnenforscher
Mitglied: bastla
11.07.2007 um 20:10 Uhr
Hallo Ahnenforscher!

Sollte eigentlich auch in VB6 so gehen:
01.
strRun = "rasdial.exe VPN " & username & " " & password & " /DOMAIN:DOMAIN /PHONEBOOK:C:\vpnconnect.inf" 
02.
Set objShell = CreateObject("WScript.Shell") 
03.
Set objWshScriptExec = objShell.Exec(strRun) 
04.
Set objstdOut = objWshScriptExec.StdOut 
05.
 
06.
'Zeilenweises Einlesen ... 
07.
Do While Not objstdOut.AtEndOfStream 
08.
    MsgBox objstdOut.ReadLine 
09.
Loop 
10.
 
11.
'... oder am Stück mit Zerlegung in ein Array 
12.
'strOutput = objstdOut.ReadAll 
13.
'aLines = Split(strOutput, vbCrLF) 
14.
'...
Ist zwar eleganter, als die Ausgabe des "rasdial"-Befehles in eine temporäre Textdatei umzuleiten, allerdings wird kurzzeitig das CMD-Fenster angezeigt ...

Grüße
bastla
Bitte warten ..
Mitglied: 17735
12.07.2007 um 09:06 Uhr
Hallo bastla,

ja so habe ich das jetzt auch gelöst - Nachteil ist wie gesagt nur die CMD-Box, deshalb mein erster Versuch mit Shell() - da kann ich per WindowsStyle vbHide angeben, um das Fenster zu verstecken.

Naja macht nichts.

Danke nochmal & Gruß,
Ahnenforscher
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (10)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...