' vault-license v1.1" ' zum Auslesen wieviele Vault-Lizenzen vergeben sind ' und an welchen User ' Damit die Ausgabe auf der Konsole funktioniert ' starten als "cscript.exe vault-license.vbs" ' getestet mit Vault Workgroup 2011 SP2 und Windows7x64 + Vistax86 ' '*************************************************************************** '* Copyright (C) 2012 by Michael Numberger * '* m.numberger@gmx.de * '* www.numberger.de.vu * '* * '* STLto3DPDF is free software; you can redistribute it and/or modify * '* it under the terms of the GNU General Public License as published by * '* the Free Software Foundation; either version 3 of the License, or * '* (at your option) any later version. * '* * '* This program is distributed in the hope that it will be useful, * '* but WITHOUT ANY WARRANTY; without even the implied warranty of * '* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * '* GNU General Public License for more details. * '* * '* You should have received a copy of the GNU General Public License * '* along with this program; if not, write to the * '* Free Software Foundation, Inc., * '* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * '*************************************************************************** ' der Pfad C:\ProgramData\Autodesk\VaultServer\FileStore freigeben PfadLogfile = "C:\ProgramData\Autodesk\VaultServer\FileStore\" Dim objFSO Dim objTdatei Dim zwischenspeicher() Const ForReading=1, ForWriting=2, ForAppending=8 DIM ergebniszaehler Set WshShell = Wscript.CreateObject("Wscript.Shell") ergebniszaehler=0 jahr= Year(date) mon = Month(date) tag = Day(date) 'Tag und Monat auf zweistellige Zahl erweitern, wenn nötig If mon < 10 Then mon = "0" & mon If tag < 10 Then tag = "0" & tag NameLogfile = "vlog-" & jahr & mon & tag & ".txt" Set objFSO=Wscript.CreateObject("Scripting.FileSystemObject") If (objFSO.FolderExists(PfadLogfile)) Then strDateiname=objFSO.BuildPath(PfadLogfile,NameLogfile) 'msgbox "-" & strDateiname & "-" If (objFSO.FileExists(strDateiname)) Then 'Log-Datei öffnen Set objTdatei=objFSO.OpenTextFile(strDateiname,ForReading) 'Datei lesen, Zeile für Zeile i=0 Do zeile=objTdatei.Readline() 'if InStr(zeile,"license") > 0 Then if InStr(zeile,"Lizenz") > 0 Then 'WScript.Echo zeile zeile=Replace(zeile,CHR(34),"") 'objectarray=Split(zeile," ") 'WScript.Echo objectarray (0) & vbCrLf & objectarray (1) & vbCrLf & objectarray (2) & vbCrLf & objectarray (3) & vbCrLf & objectarray (4) & vbCrLf & objectarray (5) & vbCrLf & objectarray (6) & vbCrLf & objectarray (7) 'if InStr(1,objectarray(0),"0") <> 1 Then 'test 'End If i=i+1 ReDim Preserve zwischenspeicher(i+1) zwischenspeicher(i)=zeile End If Loop Until objTdatei.AtEndofStream AnzahlZeilen=i 'Datei schließen objTdatei.Close 'i=1 If i>0 then Do zeile=Replace(zwischenspeicher(i),CHR(34),"") objectarray=Split(zeile," ") 'WScript.Echo objectarray (0) & vbCrLf & objectarray (1) & vbCrLf & objectarray (2) & vbCrLf & objectarray (3) & vbCrLf & objectarray (4) & vbCrLf & objectarray (5) & vbCrLf & objectarray (6) & vbCrLf & objectarray (7) x=i gefunden=0 if objectarray (2) = "Erworbene" Then DO if InStr(zwischenspeicher(x),"Releasing") > 0 AND InStr(zwischenspeicher(x),objectarray (6)) > 0 AND InStr(zwischenspeicher(x),objectarray (7)) > 0 Then gefunden=1 'WScript.Echo "Entsprechung gefunden" & vbCrLf & zwischenspeicher(i) & vbCrLf & zwischenspeicher(x) End If x=x+1 Loop Until zwischenspeicher(x)= "" IF gefunden=0 Then 'WScript.Echo "Keine Entsprechung gefunden" & vbCrLf & zwischenspeicher(i) ergebnis = Ergebnis & vbCrLf & objectarray (1) & " " & objectarray (5) & " " & objectarray (7) ergebniszaehler = ergebniszaehler +1 End IF End If i=i+1 Loop Until zwischenspeicher(i)= "" End If IF ergebniszaehler > 0 Then ergebnis="Vault-Lizenzen in Gebrauch:" & ergebnis & vbCrLf & ergebniszaehler & " Lizenzen in Gebrauch" ELSE ergebnis = "0 Lizenzen in Gebrauch" End IF Set WshShell = Wscript.CreateObject("Wscript.Shell") WScript.Echo ergebnis Else WScript.Echo "Datei fehlt" End If Else WScript.Echo "Pfad nicht gefunden" End If