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

CMD Fenster bei Aufruf von vbScript Funktion verstecken

Frage Entwicklung VB for Applications

Mitglied: homecomingservice

homecomingservice (Level 1) - Jetzt verbinden

01.04.2011, aktualisiert 14:08 Uhr, 6217 Aufrufe, 6 Kommentare

Hallo Leute!

ich habe eine Function geschrieben die so aussieht


01.
Public Function SNMPAbfrage (version, ipadresse, OID ) 
02.
	Dim WshShell, oExec, name 
03.
	Set WshShell = CreateObject ("WScript.Shell") 
04.
	Set oExec = WshShell.Exec ("snmpget -" & version & " -c public " & ipadresse & " " & OID) 
05.
	Do While oExec.Status = 0 
06.
		WScript.Sleep 100 
07.
	Loop 
08.
	Do While oExec.StdOut.AtEndOfStream <> True 
09.
		name = oExec.StdOut.ReadLine 
10.
	Loop 
11.
	If inStr(name, Chr (34)) Then	 
12.
		searchleft = Chr (34) 
13.
		searchright = Chr (34) 
14.
		result = mid (name, instr(name, searchleft)+1, instrrev(name, searchright)-instr(name, searchleft)-1) 
15.
	Else 
16.
		result=right (name, len(name)-instrrev (name," ")) 
17.
	End If 
18.
	SNMPAbfrage = result 
19.
end function
nun möchte ich das CMD Fenster das beim Aufrufen dieser Function erscheint verstecken
wisst ihr wie ich das umsetzen könnte?

Vielen Dank
homecomingservice
Mitglied: colinardo
01.04.2011 um 15:26 Uhr
  • Sowas kannst du mit Exescript machen -> http://www.hide-folder.com/overview/hf_7.html
  • Das WSH Shell Objekt bietet noch eine "Run" Methode, der du einen Wert für die Sichtbarkeit mitgeben kannst - leider ist der Rückgabewert der Funktion kein WshScriptExec-Object.
  • Oder das ganze in ein AutoIt-Script packen, das bietet Optionen dafür.

Wenn du willst mach ich dir aus dem Script eine "EXE"-Datei mit verstecktem Fenster....

Uwe
Bitte warten ..
Mitglied: homecomingservice
01.04.2011 um 15:39 Uhr
Danke Uwe für deine antwort
das Problem is bloß das Programm ist etwas länger ich habe 13 SNMP abfragen und lass mir den Rückgabewert Speziell zurückgeben.
Es wird mir für jede einzelne SNMP Abfrage ein Fenster geöffnet und dann weider geschlossen kann man das Komplett mit der Run Methonde verstecken?
Das mit der Run Methode hab ich auch schon gelesen nur leider kenn ich mich nich allzugut in vbs aus (das Script erstelln war schon Arbeit genug :D)

Bei Bedarf Poste ich dir auch das ganze Script
lg homecomingservice
Bitte warten ..
Mitglied: colinardo
01.04.2011 um 15:46 Uhr
Was passiert ausserhalb des Funktionsaufrufes ? kommen irgendwelche grafischen Ausgaben zum Einsatz oder schreibt das Script die Ergebnisse in eine Datei ? Post mal das ganze Script...
Bitte warten ..
Mitglied: homecomingservice
01.04.2011 um 15:53 Uhr
01.
'Script zum Abfragen eines Druckers per SNMP 
02.
' Abfrage bestimmter Werte wie Tonerstand und Status 
03.
 
04.
 
05.
'Deklaration und Wertzuweisung von Constanten und Variablen 
06.
Dim IP, OID, Version , modell, status, maxgedruckt, fagedruckt, swgedruckt, swmax, swatm, mamax, maatm, gemax 
07.
Dim cymax, cyatm, sw, ma, ge, cy, WshShell, oExec, name, result 
08.
Const intOK = 0 
09.
Const intWarning = 1 
10.
Const intCritical = 2 
11.
Const intUnknown = 3 
12.
IP = "192.168.50.207" 
13.
OID = "1.3.6.1" 
14.
Version = "v1" 
15.
 
16.
'SNMP-Abfrage vorgegebener Werte 
17.
modell = SNMPAbfrage (Version, "192.168.50.207",".1.3.6.1.4.1.1347.40.10.1.1.5.1") 
18.
If modell = "ErrSNMPprog" Then 
19.
	'SNMP-Programm nicht vorhanden 
20.
ElseIf modell <> "" Then 
21.
	sernum = SNMPAbfrage (Version, IP, OID & ".2.1.43.5.1.1.17.1") 
22.
	status = SNMPAbfrage (Version, IP, OID & ".2.1.25.3.5.1.1.1") 
23.
	maxgedruckt =  SNMPAbfrage (Version, IP, OID & ".2.1.43.10.2.1.4.1.1") 
24.
	fagedruckt =  SNMPAbfrage (Version, IP, OID & ".4.1.1347.42.2.2.1.1.3.1.2") 
25.
	swgedruckt =  SNMPAbfrage (Version,IP, OID & ".4.1.1347.42.2.2.1.1.3.1.1") 
26.
	swmax = SNMPAbfrage (Version, IP, OID & ".2.1.43.11.1.1.8.1.4") 
27.
	swatm = SNMPAbfrage (Version, IP, OID & ".2.1.43.11.1.1.9.1.4") 
28.
	mamax = SNMPAbfrage (Version, IP, OID & ".2.1.43.11.1.1.8.1.2") 
29.
	maatm = SNMPAbfrage (Version, IP, OID & ".2.1.43.11.1.1.9.1.2") 
30.
	gemax = SNMPAbfrage (Version, IP, OID & ".2.1.43.11.1.1.8.1.3") 
31.
	geatm = SNMPAbfrage (Version, IP, OID & ".2.1.43.11.1.1.9.1.3") 
32.
	cymax = SNMPAbfrage (Version, IP, OID & ".2.1.43.11.1.1.8.1.1") 
33.
	cyatm = SNMPAbfrage (Version, IP, OID & ".2.1.43.11.1.1.9.1.1") 
34.
	sw = (swatm * 100) / swmax 
35.
	ma = (maatm * 100) / mamax 
36.
	ge = (geatm * 100) / gemax 
37.
	cy = (cyatm * 100) / cymax 
38.
End If 
39.
 
40.
 
41.
'Ausgabe der Daten 
42.
If modell = "" Then 'Gerät nicht erreichbar 
43.
	Wscript.Echo "IP:" & " " & IP & "-" & "Statusabfrage nicht möglich" 
44.
	Wscript.Quit(intUnknown) 
45.
ElseIf modell = "ErrSNMPprog" Then 'SNMP-Programm nicht vorhanden 
46.
	Wscript.Echo "SNMPT-Programm nicht vorhanden" 
47.
	Wscript.Quit(intCritical) 
48.
ElseIf sw <=5 or cy <=5 or ma <=5 or ge <=5 Then 'Tonerstand unter 5% 
49.
	Wscript.Echo modell & " " & "(" & "SerNR" &" " & sernum & "/" & "IP" & " " & IP & ")" & "-" & "Tonerstand unter 5%" & "-" & "Zählerstand:" & " " & maxgedruckt & "(Farbe:" & " " & fagedruckt & "/SW:" & " " & swgedruckt & "-" & "Tonerstand: K" & " " & sw & "%" & "/C" & " " & cy & "%" & "/M" & " " & ma & "%" & "/Y" & " " & ge & "%" 
50.
	Wscript.Quit(intCritical) 
51.
ElseIf sw <= 20 or cy <=20 or ma <=20 or ge <=20 Then 'Tonerstand unter 20% 
52.
	Wscript.Echo modell & " " & "(" & "SerNR" &" " & sernum & "/" & "IP" & " " & IP & ")" & "-" & "Tonerstand unter 20%" & "-" & "Zählerstand:" & " " & maxgedruckt & "(Farbe:" & " " & fagedruckt & "/SW:" & " " & swgedruckt & "-" & "Tonerstand: K" & " " & sw & "%" & "/C" & " " & cy & "%" & "/M" & " " & ma & "%" & "/Y" & " " & ge & "%" 
53.
	Wscript.Quit(intWarning) 
54.
Else 'Alles OK 
55.
	Wscript.Echo  modell & " " & "(" & "SerNR" &" " & sernum & "/" & "IP" & " " & IP & ")" & "-" & status & "-" & "Zählerstand:" & " " & maxgedruckt & "(Farbe:" & " " & fagedruckt & "/SW:" & " " & swgedruckt & "-" & "Tonerstand: K" & " " & sw & "%" & "/C" & " " & cy & "%" & "/M" & " " & ma & "%" & "/Y" & " " & ge & "%" 
56.
	Wscript.Quit(intOK) 
57.
End If	 
58.
 
59.
'SNMP-Abfrage 
60.
Public Function SNMPAbfrage (version, ipadresse, OID ) 
61.
	Dim WshShell, oExec, name 
62.
	Set WshShell = CreateObject ("WScript.Shell") 
63.
	Set oExec = WshShell.Exec ("snmpget -" & version & " -c public " & ipadresse & " " & OID) 
64.
	Do While oExec.Status = 0 
65.
		WScript.Sleep 100 
66.
	Loop 
67.
	Do While oExec.StdOut.AtEndOfStream <> True 
68.
		name = oExec.StdOut.ReadLine 
69.
	Loop 
70.
	If inStr(name, Chr (34)) Then	 
71.
		searchleft = Chr (34) 
72.
		searchright = Chr (34) 
73.
		result = mid (name, instr(name, searchleft)+1, instrrev(name, searchright)-instr(name, searchleft)-1) 
74.
	Else 
75.
		result=right (name, len(name)-instrrev (name," ")) 
76.
	End If 
77.
	SNMPAbfrage = result 
78.
end function
das ist das Komplette Script Liest per SNMP Werte aus dem drucker und gibt mir nur 1 Ausgabe je nach Rückgabe Daten aus
ich möchte das Script später einmal für Icinga benutzen
Bitte warten ..
Mitglied: colinardo
01.04.2011 um 16:04 Uhr
du kannst das script auf der Kommandozeile so aufrufen, dann erscheinen keine Fenster:
01.
cscript //B NAME_DER_VBS.VBS
Danach kannst du dann den Rückgabewert auswerten...
Bitte warten ..
Mitglied: homecomingservice
01.04.2011 um 17:23 Uhr
Super! Danke! so sollte es sein :D
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

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

(1)

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

Ähnliche Inhalte
Batch & Shell
gelöst Trotz exit schließt sich das CMD Fenster nicht. (13)

Frage von Klaus20 zum Thema Batch & Shell ...

Batch & Shell
gelöst Taskkill für bestimmtes cmd Fenster (6)

Frage von n0cturne zum Thema Batch & Shell ...

Batch & Shell
gelöst Unterschiede im Aufruf und Funktion von FOREACH in Powershell (3)

Frage von SamTrex zum Thema Batch & Shell ...

LAN, WAN, Wireless
Hat On Networks PL500PS WLAN-Funktion? (4)

Frage von Andy1987 zum Thema LAN, WAN, Wireless ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (14)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...