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

Abfragescript vor Programmstart....

Frage Entwicklung VB for Applications

Mitglied: halunke

halunke (Level 1) - Jetzt verbinden

05.05.2011, aktualisiert 12:21 Uhr, 3163 Aufrufe, 3 Kommentare

Hallo @ all,

also ich bin kein Coder das schonmal vorweg.....

als ich drehe hier durch da sitze ich schon zwei Wochen an diesem Script und es geht auch zur Hälfte aber halt nur zur Hälfte.
Ich hoffe das Ihr mir weiterhelfen könnt.

Das Script sol folgendes machen:

1. einen Warnhinweis ausgeben wenn ich das will. -> das geht
2. den Ordner Temp\pvv und Unterordner abfragen ob noch dateien Vorhanden sind ausser Dateien mit der Endung (*log und *.tmp) die sollten Ignoriert werden
Wenn Nein das Programm pvv.exe Starten. -> das geht
Wenn Ja sollen die Dateien mit Pfadangabe (auch wieder ohne .log und *.temp) aufgelistet werden die Vorhanden sind.
Eine Messagebox mit OK oder Abrechen bei Abrechen soll die pvv.exe starten
Bei OK soll die pvv.exe Starten.

Ich hoffe da kann mir jemand weiter helfen?


01.
Dim fso 
02.
	Set fso = CreateObject("Scripting.FileSystemObject") 
03.
	If fso.FileExists("\\192.168.1.10\Wartungsmeldung\hinweis.txt") then 
04.
	sInfoText = "\\192.168.1.10\Share\Wartungsmeldung\hinweis.txt" 
05.
	sTitel = "Hinweis !!!" 
06.
	iSek = 120 'Anzeigedauer in Sekunden 
07.
	Set WshShell = WScript.CreateObject("WScript.Shell") 
08.
	Set fso = CreateObject("Scripting.FileSystemObject") 
09.
	sText = fso.OpenTextFile(sInfoText, 1).ReadAll 
10.
	WshShell.Popup sText, iSek, sTitel, vbInformation 
11.
	Else 
12.
	End if 
13.
    Set fso = nothing 
14.
	Set wshell = CreateObject("WScript.Shell") 
15.
	temp = wshell.ExpandEnvironmentStrings("%TEMP%") 
16.
	Set oFSO = CreateObject("Scripting.FileSystemObject") 
17.
	If Not oFSO.FolderExists(temp & "\pvv\") Then 
18.
	Set objFolder = oFSO.CreateFolder(temp & "\pvv\") 
19.
	End If  
20.
		Set objFSO = CreateObject("Scripting.FileSystemObject")  
21.
		objStartFolder = (temp & "\pvv\") 
22.
 		Set objFolder = objFSO.GetFolder(objStartFolder) 
23.
		Set colFiles = objFolder.Files  
24.
		ShowSubfolders objFSO.GetFolder(objStartFolder) 
25.
			For Each objFile in colFiles 
26.
	    		If UCase(objFSO.GetExtensionName(objFile.name)) = "TXT" Then 
27.
	    			a = MsgBox("Es sind noch Daten in einem Verzeichnis vorhanden. " ,vbOKCancel + vbExclamation, "ACHTUNG ! ")    
28.
				If a = vbCancel Then 
29.
					Wscript.Echo "Es sind Daten im folgendem Verzeichnis vorhanden\                                   " & objFolder.Path &"\"& objFile.Name  
30.
					Set ShellWSH = CreateObject("WScript.Shell") 
31.
					ShellWSH.Run (temp &"\pvv\"), 1, False 
32.
					WScript.Quit 
33.
				End If 
34.
				If a = vbOK Then 
35.
 
36.
				End If 
37.
			End If 
38.
		Next 
39.
 
40.
    Dim WshShell 
41.
	Dim Quelle 
42.
	Dim Ziel1,Ziel2 
43.
	Dim HOST_NAME,HOST_NAME_file 
44.
	Dim WD_DEF 
45.
	Set WSHShell = WScript.CreateObject("WScript.Shell") 
46.
	Set fs = CreateObject("Scripting.FileSystemObject") 
47.
	Set objNetwork = CreateObject("WScript.Network") 
48.
 
49.
 
50.
 
51.
	Argument = "\\192.168.1.10\share\pvv.exe" 
52.
 
53.
	WSHShell.Run Argument, 1, False 
54.
 
55.
	Set WSHShell = Nothing 
56.
	WScript.Quit(0) 
57.
 
58.
Sub ShowSubFolders(Folder) 
59.
    For Each Subfolder in Folder.SubFolders 
60.
        Set objFolder = objFSO.GetFolder(Subfolder.Path) 
61.
        Set colFiles = objFolder.Files 
62.
        For Each objFile in colFiles 
63.
        	If UCase(objFSO.GetExtensionName(objFile.name)) = "TXT" Then 
64.
	    		a = MsgBox("Es sind noch Daten in einem Verzeichnis vorhanden." ,vbOKCancel + vbExclamation, "ACHTUNG ! ")    
65.
			If a = vbCancel Then 
66.
				Wscript.Echo "Es sind Daten im folgendem Verzeichnis vorhanden\                                   " & objFolder.Path &"\"& objFile.Name  
67.
				Set ShellWSH = CreateObject("WScript.Shell") 
68.
				ShellWSH.Run (temp &"\pvv\"), 1, False 
69.
				WScript.Quit 
70.
			End If 
71.
			If a = vbOK Then 
72.
 
73.
			End If 
74.
		End If 
75.
        Next 
76.
        ShowSubFolders Subfolder 
77.
    Next 
78.
End Sub
Mitglied: TsukiSan
05.05.2011 um 15:34 Uhr
hallo halunke,

verstehe mich nicht falsch! Aber nach deiner Beschreibung liegt dein primäres Augenmerk auf dem Starten der pw.exe
Da reicht ein Zweiteiler in VBS:
01.
set wshshell=createobject("wscript.shell") 
02.
wshshell.run(pw.exe), 3, true
Jetzt mal Spass beiseite!
Zum Durchkämmen von Ordnern geht doch eventuell sowas:
01.
Ordner = "C:\Temp\ 
02.
 
03.
ListOrdner Ordner 
04.
 
05.
Sub ListOrdner(ordner) 
06.
	Set ordner = fs.getfolder(ordner) 
07.
	For Each file In ordner.files 
08.
		Pfadangabe =file.path 
09.
 
10.
	Next 
11.
 
12.
	For Each Unterordner In Ordner.subfolders 
13.
		Listordner unterordner 
14.
	next 
15.
End Sub
Und dann an entsprechender Stelle noch die Dateiendungen filtern. Z.Bsp.:
01.
If Not Right(Pfadangabe,3) = "log" and Not Right(Pfadangabe,3) = "tmp" then 
02.
      ' Anweisung etc. 
03.
End IF
Dann musst du nur noch entscheiden, ob bei deiner Ent-Oder-Weder-Abfrage was gestartet oder gestoppt werden soll.

Gruss
Tsuki
Bitte warten ..
Mitglied: halunke
06.05.2011 um 09:46 Uhr
Erstmal besten Dank für deine Infos. Eine frage hätte ich noch was bedeutet die ,3 -> (Pfadangabe,3) ?

mfg
halunke
Bitte warten ..
Mitglied: TsukiSan
06.05.2011 um 14:46 Uhr
Hi

was bedeutet die ,3 -> (Pfadangabe,3)
Es bedeutet die Abfrage der 3 Stellen (Buchstaben oder Zahlen) von rechts nach links gezählt.

Beispiel:
Deine Datei heißt Test.tmp , dann sind die letzten 3 Stellen rechts "tmp".
Somit kann man z.Bsp. die Dateiendungen rausfiltern.

teste einfach mal in VBS:
01.
temp = "Mein Name" 
02.
msgbox Right(temp,4)
Das gleiche geht übrigens auch mit links LEFT
01.
temp = "Mein Name" 
02.
msgbox Left(temp,4)
Gruss
Tsuki
Bitte warten ..
Ähnliche Inhalte
Benchmarks
gelöst Speedmessung von Programmstarts bei Installation auf RAM-Disks (12)

Frage von Hyperion69 zum Thema Benchmarks ...

Xenserver
Remote Desktop Access - Automatischer Programmstart (14)

Frage von Ravelux zum Thema Xenserver ...

Windows Server
gelöst Netzlaufwerk RemoteApp auf Win 2012 R2 Terminalserver funktioniert nicht (12)

Frage von grenzde zum Thema Windows Server ...

Batch & Shell
gelöst Windows Ereignisse Tracen und automatisieren? (11)

Frage von Xanathos57 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 im Unternehmen? (26)

Frage von zorlayan zum Thema Windows 10 ...

Festplatten, SSD, Raid
Raid 1 2 SSD mit Windows Server 2016 (17)

Frage von jaywee zum Thema Festplatten, SSD, Raid ...

Voice over IP
Über Fritzfax over IP gehen nur einige Faxe (12)

Frage von shearer9 zum Thema Voice over IP ...