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

Bestimmte Dateien per vbs verlinken

Frage Entwicklung VB for Applications

Mitglied: superfunk

superfunk (Level 1) - Jetzt verbinden

09.09.2008, aktualisiert 10.09.2008, 5590 Aufrufe, 2 Kommentare

Ziel: Aus einem Verzeichnis mit mehren Tausend (WebCam)-Bildern sollen immer nur die ersten eines Zeitblocks (80Stk) auf eine HTML-Internet-Seite verlinkt werden.

Hallo,

unsere Webcam speichert per FTP nach einem Alarm-Ereignis jede Sekunde (80Sek lang) ein Bild auf einem Server. Auf diesem Server läuft auch ein IIS der eine Informationsseite bereitstellt. Auf dieser Seite soll nun immer nur das erste Bild einer 80er Folge als HTML-Link (vielleicht auch als kleine Bild-Vorschau) verlinkt werden. Die Bilder werden nicht älter als 21 Tage. Dafür sorgt eine kleine Batch-Datei per AT. Es wäre schön, diese Funktion gleich mit in das VB-Script zu integrieren.
Alles im Ganzen eigentlich machbar, was mich jedoch ein bisschen vor Probleme stellt ist die "erste" Datei zu finden. Der Dateiname eines Bildes lautet z.B. so: "image_080821_184850.jpg"
(image_ JahrMonatTag_StundeMinuteSekunde.jpg) und das letzte Bild dieses "80er Blocks" so: "image_080821_185010.jpg" Danach kommen weiter "80er Blocks". Die Anzahl aller Bilder zusammen in einem Zeitraum von 3 Woche erreicht schon mal locker so an die 2000. Als Programmiersprache kommt am liebsten Visual Basic Script in Frage.
Mit welcher Art bekomme ich den Dateinamen jeder "ersten" Datei eines 80er Blocks?

Bin für alle Ideen und Tipps reichlich dankbar!

Mit freundlichen Grüssen
Superfunk
Mitglied: bastla
10.09.2008 um 00:50 Uhr
Hallo superdunk!

Mit welcher Art bekomme ich den Dateinamen jeder "ersten" Datei eines 80er Blocks?
Das könnte etwa so gehen:
01.
Ordner = "D:\Verzeichnis" 
02.
Set fso = CreateObject("Scripting.FileSystemObject") 
03.
 
04.
Const adDBTimeStamp = 135 
05.
Const adVarChar = 200 
06.
Set DataList = CreateObject("ADOR.Recordset") 
07.
DataList.Fields.Append "FileName", adVarChar, 23 
08.
DataList.Fields.Append "Timestamp", adDBTimeStamp 
09.
DataList.Open 
10.
 
11.
For Each File In fso.GetFolder(Ordner).Files 
12.
    FN = File.Name 
13.
    DataList.AddNew 
14.
    DataList("FileName") = LCase(FN) 
15.
    DataList("Timestamp") = _ 
16.
        DateSerial("20" & Mid(FN,7,2), Mid(FN,9,2), Mid(FN,11,2)) + _ 
17.
        TimeSerial(Mid(FN,14,2), Mid(FN,16,2), Mid(FN,18,2)) 
18.
Next 
19.
 
20.
List = "" 
21.
Last = DateSerial(1999,1,1) 
22.
If Not DataList.EOF Then 
23.
    DataList.Sort = "FileName" 
24.
    DataList.MoveFirst 
25.
    Do Until DataList.EOF 
26.
        This = DataList.Fields.Item("Timestamp") 
27.
        If DateDiff("s", Last, This) > 1 Then 
28.
            List = List & vbCrLF & DataList.Fields.Item("FileName") 
29.
        End If 
30.
        Last = This 
31.
        DataList.MoveNext 
32.
    Loop 
33.
End If 
34.
WScript.Echo Mid(List, 3)
Es wird vorausgesetzt, dass sich ausschließlich nach dem Schema "image_JJMMTT_hhmmss.jpg" benannte Bilddateien im angegebenen Ordner befinden.

Da (als Demo) alle gefundenen Dateinamen ausgegeben werden, sollte beim Testen das Script über "cscript" gestartet werden, damit die Ausgabe in der Konsole und nicht per MsgBox erfolgt (alternativ kann natürlich die Liste auch in eine Textdatei ausgegeben oder in ein Array übernommen werden).

Grüße
bastla
Bitte warten ..
Mitglied: superfunk
10.09.2008 um 08:37 Uhr
Guten Morgen Bastla,

vielen Dank, das Script funktioniert genaus so wie ich es haben wollte.
Damit kann ich weitermachen.

Mit freundlichen Grüssen
Superfunk
Bitte warten ..
Neuester Wissensbeitrag
Microsoft

Lizenzwiederverkauf und seine Tücken

(5)

Erfahrungsbericht von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (17)

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

Windows Netzwerk
Windows 10 RDP geht nicht (16)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...