nuts Posted July 11, 2011 Share Posted July 11, 2011 In .vbs umbennen und doppelklicken sollte funktionieren. Quote Link to comment
ZappoB Posted July 11, 2011 Share Posted July 11, 2011 Wie ich schrieb: ...Wenn ich es einfach per doppelklick starte, kommt die Meldung, dass es mit cscript.exe... gestartet werden muss - dieses Programm finde ich aber nicht in der DVBViewer Installation; muss ich das separat herunterladen?... Leider geht es eben nicht (das in .vbs umbenannt werden muss, steht ja jedesmal dabei). Quote Link to comment
GruberMa Posted July 11, 2011 Author Share Posted July 11, 2011 Leider geht es eben nicht (das in .vbs umbenannt werden muss, steht ja jedesmal dabei). Hallo ZappoB! Beim Doppelklich auf die .vbs-Datei kommt nicht nur der Hinweis auf den Start mit wscript statt cscript, sondern auch der passende Befehl: cscript Update-DVBViewer-EPG.vbs /? cscript.exe ist Teil von Windows: Eingabeaufforderung öffnen (Start, Ausführen, "cmd"), dann den Befehl "cscript Update-DVBViewer-EPG.vbs /?" eingeben und Enter drücken - das gibt die Hilfe aus. cscript.exe samt dem Update Script kann zB automatisiert über den Task Scheduler ("Aufgabenplaner" oder "Aufgabenplanung") gestartet werden. LG, GruberMa Quote Link to comment
ZappoB Posted July 12, 2011 Share Posted July 12, 2011 cscript.exe ist Teil von Windows... DAS war der entscheidende Hinweis! Jetzt habe ich aber noch ein Problem mit der Ausführung: DVBViewer läuft auf dem HTPC ja immer, wie starte ich das Skript, damit es nicht abbricht? /NoUser beendet das Skript ja unmittelbar, wenn es erkennt, dass der DVBViewer läuft, mit einem manuellen "Y" (ohne Parameter) wird das Skript nach dem ersten Kanal beendet, weil es angeblich einen manuellen Senderwechsel erkennt (der aber nicht stattgefunden hat). Außerdem wird der DVBViewer nicht (wie beschrieben) minimiert gestartet, auch wenn die Option Starte im Vollbild nicht aktiviert ist (was eine von mir vermutete Fehlerquelle war). Quote Link to comment
GruberMa Posted July 12, 2011 Author Share Posted July 12, 2011 DVBViewer wird nur dann minimiert, wenn die Option NoUser bzw. NoUserInteraction übergeben wird und der DVBViewer nicht läuft (siehe auch entsprechender Hilfetext). Minimiert wird der DVBViewer nachdem der Task "Warten auf DVBViewer" beendet ist, der Standardwert liegt hierfür bei 30 Sekunden. Die Erkennung eines manuellen Kanalwechsels gibt es nur, wenn die Option NoUser bzw. NoUserInteraction nicht übergeben wurde - hier war tatsächlich ein Fehler, der in der angehängten Version bei mir nicht mehr auftritt. Danke an ZappoB für den Hinweis! Auf "Update-DVBViewer-EPG.vbs" umbenennen. Quote Link to comment
ZappoB Posted July 12, 2011 Share Posted July 12, 2011 Danke für die Fehlerbereinigung, es bleibt aber die Frage, wie man das Skript automatisiert starten kann, WENN der DVBViewer permanent läuft. Hier wäre eine Option mit NoUserYes hilfreich... Quote Link to comment
GruberMa Posted July 12, 2011 Author Share Posted July 12, 2011 Danke für die Fehlerbereinigung, es bleibt aber die Frage, wie man das Skript automatisiert starten kann, WENN der DVBViewer permanent läuft. Hier wäre eine Option mit NoUserYes hilfreich... Was spricht gegen einen Start des Scripts mit allen notwendigen Parametern, aber ohne "NoUser"? Das Script schaltet dann jeden Transponder durch und man kann trotzdem jederzeit manuell umschalten - das Script stoppt dann einfach. Eine Tonbelästigung gibt es nicht, weil das Script den DVBViewer auf lautlos stellt. Quote Link to comment
ZappoB Posted July 12, 2011 Share Posted July 12, 2011 (edited) Entschuldigt, aber wenn ich NoUser verwende, muss doch per manuellem "Y" der Start bestätigt werden, wenn der DVBViewer schon läuft - und bislang habe ich keinen Parameter gefunden, der dies umgehen würde. Das wiederum verhindert eine automatisierte Abarbeitung des Skripts. BTW: Das Minimieren des Fensters geht nicht mehr mit dem Parameter 16382, wenn EventGhost läuft - ist wohl ein bekannter Fehler, keiner weiß wieso... Edited July 13, 2011 by ZappoB Quote Link to comment
GruberMa Posted July 14, 2011 Author Share Posted July 14, 2011 Entschuldigt, aber wenn ich NoUser verwende, muss doch per manuellem "Y" der Start bestätigt werden, wenn der DVBViewer schon läuft - und bislang habe ich keinen Parameter gefunden, der dies umgehen würde. Das wiederum verhindert eine automatisierte Abarbeitung des Skripts. Ab sofort ist die aktuelle Version des EPG Update Script immer auf der ersten Seite dieses Threads zu finden: http://www.DVBViewer.tv/forum/topic/41624-weiterentwicklung-epg-update-script/page__view__findpost__p__305321 Die aktuelle Beta-Version "2011-07-13 08:30 BETA" enthält den neuen Parameter /NoUserYes, der deine Anforderung erfüllen sollte. '.) New: Parameter /NoUserYes. '.) Solved: Script differentiates between manually activated timeshift and the DVBViewer setting Automatic TimeShift. If timeshift is started manually, the script exits. Quote Link to comment
ZappoB Posted July 14, 2011 Share Posted July 14, 2011 Arbeitet wie erhofft - Danke! Quote Link to comment
Siggi0904 Posted July 23, 2011 Share Posted July 23, 2011 Hallo GruberMa, schön, dass du an dem Script weiterarbeitest. Es erfüllt alle meine Wünsche. Ich habe zwar manchmal das Gefühl, dass nicht für alle meine Favoriten (so ist das Tool eingestellt) die Daten aktualisiert werden. Ich weiß aktuell noch nicht woran das liegt, muss evtl. der ganze Transponder geöffnet werden? Anderes Thema: Ich habe die aktuelle Beta eingespielt und musste beim ersten Startversuch festtellen, das das Tool nicht mehr arbeiten wollte. Die Console zeigt aber schnell den Fehler. Du hast das Startverzeichnis für die DVBViewer.exe in die vbs Datei hardcodiert. Kannst du das über die ini konfigurierbar machen, oder besser automatisch ermitteln? Dank dir für die Arbeit. Quote Link to comment
GruberMa Posted July 23, 2011 Author Share Posted July 23, 2011 Ich habe zwar manchmal das Gefühl, dass nicht für alle meine Favoriten (so ist das Tool eingestellt) die Daten aktualisiert werden. Ich weiß aktuell noch nicht woran das liegt, muss evtl. der ganze Transponder geöffnet werden? Lösche vor Ausführung des Update Script mal deine epg.dat, dann kannst du mit SIcherheit sagen, ob EPG-Einträge fehlen oder nicht. Sollten welche fehlen, kannst du die Zeit pro Transponder höher stellen. Ob das Öffnen des gesamten Transponders Einfluss auf das EPG hat, kann ich leider nicht sagen. Du hast das Startverzeichnis für die DVBViewer.exe in die vbs Datei hardcodiert. Kannst du das über die ini konfigurierbar machen, oder besser automatisch ermitteln?<br sab="552"> Ich kenne derzeit keinen Weg, die .exe automatisch finden zu lassen. Vor allem bei mehreren Installationen ist das wahrscheinlich sowieso ein Problem. Ich werde in der nächsten Version die Konfiguration über das ini-File vorsehen. Quote Link to comment
ZappoB Posted July 24, 2011 Share Posted July 24, 2011 Evtl. wäre ein relativer Pfed besser, z. B. ..\DVBViewer.exe und die Installationsempfehlung, das Skript im Verzeichnis Scripts abzulegen, was auch sinnvoll ist. Als Fehlertoleranz könnte man noch mit if exists (ich sag das jetzt mal in Batch ) abfragen, ob der DVBViewer zu finden ist und bei einem Fehler die entsprechende Meldung ausgeben: "Bitte das Skript im Ordner Scripts ablegen..." (blabla). Quote Link to comment
nuts Posted July 24, 2011 Share Posted July 24, 2011 So könnt ihr den Pfad zur DVBViewer.exe rausfinden: Func _Get_DVBV_Path($fullpath = False) ; nuts (www.autoit.de) ; ;$fullpath: false => return DVBViewer directory ; true => return full path of DVBViewer.exe ; ;@error; 1 => path not found Local $path = RegRead('HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\DVBViewer Pro_is1', 'Inno Setup: App Path') If Not FileExists($path) Then $path = RegRead('HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall\DVBViewer Pro_is1', 'Inno Setup: App Path') If Not FileExists($path) Then Return SetError(1, 0, 0) Switch $fullpath Case False Return $path Case True $path &= '\DVBViewer.exe' If Not FileExists($path) Then Return SetError(1, 0, 0) Return $path EndSwitch #cs Beschreibung laut Lars HKLM + Software\Microsoft\Windows\CurrentVersion\Uninstall\DVBViewer Pro_is1' -> 'Inno Setup: App Path' oder HKCU + Software\Microsoft\Windows\CurrentVersion\Uninstall\DVBViewer Pro_is1' -> 'Inno Setup: App Path' oder indem man den registry zweig der registrierten COM klasse des DVBCOMServers abfragt und daraus den pfad ermittelt #ce EndFunc ;==>_Get_DVBV_Path Quote Link to comment
Siggi0904 Posted July 24, 2011 Share Posted July 24, 2011 Hallo euch alle, ja das Script im DVBViewer Ordner Scripts abzulegen ist die beste Lösung. So habe ich es auch. Ich starte dann eine BAT Datei mit der ini Datei als Parameter. Diese Batch Datei liegt im Root des DVBViewer Ordners. Den Vorschlag, den Installationsort aus der Registry zu lesen hatte ich gestern GruberMa auch schon per PN gegeben, er meinte aber, dass dies Probleme bei mehrfachinstallationen haben könnte. Ich kann mir es aber nicht vorstellen, dass jemand den DVBViewer mehrfach installiert. Geht das überhaupt? Da hakt es dann doch am COM-Service, oder? Die Pfade relativ zu lesen ist da auch nicht schlecht. Quote Link to comment
GruberMa Posted July 24, 2011 Author Share Posted July 24, 2011 Ich werde noch heute eine neue Version des Scripts veröffentlichen, die bei nicht oder falsch gesetztem Pfad zum DVBViewer die Registry zur Suche nutzt. Standardmässig wird der Pfad im Script und in der ini leer sein. Quote Link to comment
Jägermeister Posted July 31, 2011 Share Posted July 31, 2011 Moin auch, das ist ein sehr nützliches Script. Erstmal danke dafär. Es läuft gut auf meinem Client-PC (Vista Home x64 auf zwei Unicast-Devices aufsetzend). Jedoch setze ich den Recording Service (1.9.0.3) auf meinem Server ein (XP x86 SP3, DVBViewer Pro 4.8.1 ist dort ebenfalls drauf installiert für alle User) und möchte das Script dort lieber einsetzen, als auf dem Client. Der Client läuft nämlich nicht Tag und Nacht. Das Script liegt in "c:\programme\DVBViewer\scripts". Wenn ich es nun manuell auf dem Server starte, wird DVBViewer.EXE nicht gefunden und ich kriege folgende Meldung zurück: 15:50:52 ***** Start ***** 15:50:52 Script version: 2011-07-24 14:00 15:50:52 Script start date: 31.07.2011 15:50:52 OS is <=XP or Script runs UAC elevated. 15:50:52 DVBViewerExecutablePath not set, using registry to find DVBViewer. 15:50:52 Path to DVBViewer not found in registry, exiting. 15:50:52 ***** End ***** Im VBS finde ich die Suche in der Registry ca. Zeile 510ff. Es sucht bei 64-bit-Versionen von Windows in HKLM oder HKCU software\wow6432node... bei 32-bit-Versionen jedoch nur in HKCU und nicht in HKLM. Ist das beabsichtigt? Auf meinem Server befindet sich nämlich der uninstall-Zweig nur in HKLM\software... Kann mir hier jemand helfen? ----- Gruß Mike Quote Link to comment
GruberMa Posted July 31, 2011 Author Share Posted July 31, 2011 Im VBS finde ich die Suche in der Registry ca. Zeile 510ff. Es sucht bei 64-bit-Versionen von Windows in HKLM oder HKCU software\wow6432node... bei 32-bit-Versionen jedoch nur in HKCU und nicht in HKLM. Ist das beabsichtigt? Auf meinem Server befindet sich nämlich der uninstall-Zweig nur in HKLM\software... Ein Registry-Pfad war im Script falsch gesetzt, der Fehler ist in der neuen Version "2011-07-31 18:30" behoben. Quote Link to comment
Jägermeister Posted July 31, 2011 Share Posted July 31, 2011 (edited) Huhu GruberMa, WOW! Das war eine unheimlich schnelle Reaktion Ich habe deine überarbeitete Version grade ausprobiert. Leider findet das Script meine Installation immer noch nicht. Selbst, wenn ich den Pfad fest vorgebe (in der sample.ini oder im VB-Script selbst). Die Meldung bleibt die Selbe. Ich bin eher in PHP zu Hause und kenne mich mit VBS nicht so gut aus. 1. Besteht die Möglichkeit für mich, die Suche nach dem Pfad zu debuggen? Ich denke da z.B. an irgendwelche Print/Echo-Ausgaben auf der Konsole. 2. Macht VBS bei der Suche Unterschiede in Groß-/Klein-Schreibung? Herzlichst Mike PS: Mit Pfadangabe in der sampe.ini und entsprechendem Aufruf erhalte ich folgende Meldungen: C:\Programme\DVBViewer\Scripts>cscript Update-DVBViewer-EPG.vbs /ini:sample.ini Microsoft (R) Windows Script Host, Version 5.7 Copyright (C) Microsoft Corporation 1996-2001. Alle Rechte vorbehalten. 19:19:36 ***** Start ***** 19:19:36 Script version: 2011-07-31 18:30 19:19:36 Script start date: 31.07.2011 19:19:36 Argument: /ini:sample.ini 19:19:37 OS is <=XP or Script runs UAC elevated. 19:19:37 Applying settings from ini file. 19:19:37 DVBViewerExecutablePath set to wrong path, using registry to find DVBVi ewer. 19:19:37 Path to DVBViewer not found in registry, exiting. 19:19:37 ***** End ***** Edited July 31, 2011 by Jägermeister Quote Link to comment
GruberMa Posted July 31, 2011 Author Share Posted July 31, 2011 Leider findet das Script meine Installation immer noch nicht. Selbst, wenn ich den Pfad fest vorgebe (in der sample.ini oder im VB-Script selbst). Der Fehler ist gefunden und ab Version "2011-07-31 2000" behoben. Quote Link to comment
Siggi0904 Posted August 1, 2011 Share Posted August 1, 2011 Hallo GruberMa, schön, dass es hier weiter geht. Ich habe die letzte Version getestet und bei mir wollte er die exe nicht finden. Bei mir ist der Eintrag für die exe leer, sodass er in der Registry suchen soll. Leider hatte das nicht funktioniert. Ich habe mir die vbs mal angesehen und entsprechend geändert. Es betrifft den Part ab Zeile 525. So funktioniert es dann bei mir richtig. if DVBViewerExecutablePath="" or not DVBViewerExeFileObject.FileExists(DVBViewerExecutablePath) then on error resume next DVBViewerExecutablePathTemp=WshShell.RegRead("HKLM\software\wow6432node\microsoft\windows\currentversion\uninstall\DVBViewer pro_is1\inno setup: app path") if err.number <>0 and (DVBViewerExecutablePathTemp="" or DVBViewerExecutablePathTemp="0") then DVBViewerExecutablePathTemp=WshShell.RegRead("HKCU\software\wow6432node\microsoft\windows\currentversion\uninstall\DVBViewer pro_is1\inno setup: app path") end if if err.number <>0 and (DVBViewerExecutablePathTemp="" or DVBViewerExecutablePathTemp="0") then DVBViewerExecutablePathTemp=WshShell.RegRead("HKLM\software\microsoft\windows\currentversion\uninstall\DVBViewer pro_is1\inno setup: app path") end if if err.number <>0 and (DVBViewerExecutablePathTemp="" or DVBViewerExecutablePathTemp="0") then DVBViewerExecutablePathTemp=WshShell.RegRead("HKCU\software\microsoft\windows\currentversion\uninstall\DVBViewer pro_is1\inno setup: app path") end if if err.number <>0 and (DVBViewerExecutablePathTemp="" or DVBViewerExecutablePathTemp="0") then DVBViewerExecutablePathTemp="" err.clear end if on error goto 0 If DVBViewerExecutablePathTemp="" then LogMsg("Path to DVBViewer not found in registry, exiting.") LogMsg("***** End *****") wscript.quit 1 else DVBViewerExecutablePath=DVBViewerExecutablePathTemp & "\DVBViewer.exe" end if end if Vielleicht kannst du das ja verwenden. Andere Frage: Wenn du das Tool übersetzen wollen würdest, wie würdest du es machen? Wenn du nämlich keine Zeit dafür hast, würde ich mich dem annehmen. Evtl. kannst du ja den Rumpf zur Übersetzung einbauen und ich stricke den Rest fertig. Bis dann. Quote Link to comment
GruberMa Posted August 1, 2011 Author Share Posted August 1, 2011 Ich habe die letzte Version getestet und bei mir wollte er die exe nicht finden. Bei mir ist der Eintrag für die exe leer, sodass er in der Registry suchen soll. Leider hatte das nicht funktioniert. Ich habe mir die vbs mal angesehen und entsprechend geändert. Es betrifft den Part ab Zeile 525. So funktioniert es dann bei mir richtig. Danke, dein Code hat mich auf die richtige Fährte gebracht - der Fehlerspeicher innerhalb des Registry-Abfrage-Zweigs wurde nie gelöscht, sondern weitergeführt. Das Problem ist ab "2011-08-01 20:00" behoben. Andere Frage: Wenn du das Tool übersetzen wollen würdest, wie würdest du es machen? Wenn du nämlich keine Zeit dafür hast, würde ich mich dem annehmen. Evtl. kannst du ja den Rumpf zur Übersetzung einbauen und ich stricke den Rest fertig. Ich denke über eine Lokalisierung nach, allerdings hat das für mich derzeit keine hohe Prioriät. Quote Link to comment
GruberMa Posted August 18, 2011 Author Share Posted August 18, 2011 (edited) Ich denke über eine Lokalisierung nach. AKTUELLE TEST-VERSION / CURRENT TEST VERSION '########## New/Changed in "2011-08-12 21:00" ########## '.) New: Script output can bow be set do different languages by using language files. '.) New: Parameter /LanguageFile (only works from the command line). '.) New: Added files en.txt and de.txt. Sie wollen sich beteiligen und eine zusätzliche Sprachdatei zur Verfügung stellen? Bitte melden Sie sich bei mir. You want to support by providing an additional translation file? Please contact me. Download über Seite 1 dieses Themas. Download via page 1 of this thread. Edited August 18, 2011 by GruberMa Quote Link to comment
Siggi0904 Posted August 19, 2011 Share Posted August 19, 2011 Hi GruberMa, coole Sache, dass du die Sprachdateien angegangen bist. Wie muss ich den Parameter angeben? Ich habe es so: cscript.exe C:\DVBViewer\Scripts\Update-DVBViewer-EPG.vbs /UseIniFile:C:\DVBViewer\Scripts\Update-DVBViewer-EPG.ini /LanguageFile="de.txt" und da kommt als Fehler: C:\DVBViewer\Scripts\Update-DVBViewer-EPG.vbs(164, 4) Laufzeitfehler in Microsoft VBScript: Index außerhalb des gültigen Bereichs: '[number: 1]' Dank dir. Quote Link to comment
GruberMa Posted August 19, 2011 Author Share Posted August 19, 2011 (edited) cscript.exe C:\DVBViewer\Scripts\Update-DVBViewer-EPG.vbs /UseIniFile:C:\DVBViewer\Scripts\Update-DVBViewer-EPG.ini /LanguageFile="de.txt" Bitte die Parameter so übergeben, wie sie in der Hilfe beschrieben sind. Korrekt ist /LanguageFile:de.txt, analog zu /UseIniFile:abc.ini. Edited August 19, 2011 by GruberMa Quote Link to comment
Faust Posted August 22, 2011 Share Posted August 22, 2011 Hallo! Die Idee für dieses Script ist Super und genau das was ich suche, aber ich bekomme das Script nicht zum laufen. Das Starten ohne Optionen funktioniert zwar aber dann durchläuft der DVBViewer alle 55 Transponder. Das dauert zu lange und ist unnötig, weil ich ausschließlich die Favoritensender sehe. 1. Wenn ich mit " /IncludeFavoriteCategories /IncludeFavorites" starte dann passiert nichts! (Log im anhang) Das Script durchläuft zwar alle Sender, DVBViewer wechselt aber zu keinem Sender und das Script beendet sich nach 1 min. Müssen die Favoriten für dieses Script gesondert markiert werden, oder reicht es wenn man im DVBViewer die Favoritenliste erstellt? 2. (eigentlich schon ein Bug und grob fahrlässige Programmierung) Das Script endet per default mit einem Hybernate Modus !!! Ich habe Bauklötze gestaunt, als ich das Script das erste mal gestartet habe und dann plötzlich der Bildschirm schwarz wurde. Ich musste den Rechner Hardreseten weil das Hybernating auf meiner Hardware nicht so recht funktionieren will. Außerdem gingen dabei ein paar geöffnete Dateien verloren. Zu meinem Glück nichts wichtiges... Bitte per default KEINE Aktion nach dem Script ende! ARGH mfg Update-DVBViewer-EPG-1favoriten.log Quote Link to comment
GruberMa Posted August 22, 2011 Author Share Posted August 22, 2011 1. Wenn ich mit " /IncludeFavoriteCategories /IncludeFavorites" starte dann passiert nichts! (Log im anhang) Das Script durchläuft zwar alle Sender, DVBViewer wechselt aber zu keinem Sender und das Script beendet sich nach 1 min. Müssen die Favoriten für dieses Script gesondert markiert werden, oder reicht es wenn man im DVBViewer die Favoritenliste erstellt? Die Option IncludeFavoriteCategories wurde dem Script zwar übergeben, es wurden aber keine Kategorien gesetzt - sIncludeCat ist leer, was die selbe Auswirkung hat, als wäre IncludeFavoriteCategories gar nicht übergeben (das hat keine Auswirkungen auf IncludeFavorites). Das Script läuft mit Admin-Rechten oder das Betriebssystem ist XP oder kleiner. Läuft der DVBViewer normalerweise auch so bzw. sind Sender in der Favoritenliste wenn der DVBViewer mit administrativen Rechten gestartet wird? Das Script und der DVBViewer müssen mit denselben Rechten laufen, damit die benutzte COM-Schnittstellte korrekt funktioniert. Die von dir benutzte Script-Version mit den von dir beschriebenen Parametern funktioniert bei mir tadellos (Script und DVBViewer ohne UAC gestartet). Beende einmal den DVBViewer, führe das Script ohne UAC aus und lass das Script den DVBViewer starten - funktioniert es dann? 2. (eigentlich schon ein Bug und grob fahrlässige Programmierung) Das Script endet per default mit einem Hybernate Modus !!! Die Option ist im Script dokumentiert und kann dort auch geändert werden: 'How should DVBViewer be ended (Hibernate=12323, Standby=12324, Close DVBViewer=12326)? 'Default: 12323 ShutDownMode=12323 Generell empfehle ich den Einsatz einer ini-Datei, da diese bequemer zu konfigurieren ist. Quote Link to comment
Faust Posted August 22, 2011 Share Posted August 22, 2011 danke für deine Ausführung. Bevor ich das Script noch einmal Starte habe ich noch ein paar Fragen: - Wird die sample.ini von dem Script standardmäßig verwendet und die Einstellungen darin auch berücksichtigt, wenn das Script normal gestartet wird? - In den Einstellungen für "ShutDownMode" fehlt der Befehl "minimize" (minimize to tray) oder "do nothing" Bisher geht ja nur: 'How should DVBViewer be ended (Hibernate=12323, Standby=12324, Close DVBViewer=12326)? Die Option IncludeFavoriteCategories wurde dem Script zwar übergeben, es wurden aber keine Kategorien gesetzt Bedeutet das, dass extra eine Kategorie für die Favoriten zugeteilt werden muss? Also z.B. /IncludeFavoriteCategories=Fav-ordner-meiner-wahl Wenn ja dann ist dies nicht aus der Help ersichtlich. Ich bin davon ausgegangen, dass das Script die von DVBViewer "markierten" Favoritensender automatisch erkennt, und man nicht manuell noch eine Liste erstellen muss, welche die Favoritensender enthält. Das Script läuft mit Admin-Rechten oder das Betriebssystem ist XP oder kleiner. Mein OS: Win7 64bit und UAC ist deaktiviert = alles läuft als admin. Die Popupliste ist sortiert = "Zeige Favoriten" Zur ini: wäre es nicht besser immer eine ini Datei zu verwenden (z.b. default.ini) welche bei scriptstart immer verwendet wird, aber durch eine eigene ini ersetzt werden kann? (/ini=meine.ini) So ähnlich machen das auch andere Tools mfg Quote Link to comment
GruberMa Posted August 22, 2011 Author Share Posted August 22, 2011 (edited) Die ini wird nur verwendet, wenn sie dem Script auch übergeben wird, Parameter /UseIniFile. Die Nummern für den ShutDownMode kommen aus der actions.ini des DVBViewer, ich glaube, da ist auch ein "minimize" dabei. Wenn du die Option leer läßt, sollte nichts passieren. Wenn die Option /IncludeFavorites verwendet wird, genügt es, wenn die Sender in der Favoritenliste sind. Über die Option /IncludeFavoriteCategories können ergänzend zu den Favoriten ganze Kategorien von Sendern (Sender-, nicht Favoritenliste) übergeben werden. Möglicherweise funktioniert es bei dir auch nicht, weil die Sender-IDs der Favoriten bei einem Update des DVBViewer geändert, aber nicht automatisch in den Favoriten angepasst wurden - in diesem Thread gibt es eine Lösung von Siggi0904 dazu (http://www.DVBViewer.tv/forum/topic/41624-weiterentwicklung-epg-update-script/page__view__findpost__p__334605). Edited August 22, 2011 by GruberMa Quote Link to comment
Faust Posted August 22, 2011 Share Posted August 22, 2011 (edited) Ich habe jetzt mal die unveränderte sample.ini verwendet aber dann passiert das hier: 21:43:09 ***** Start ***** 21:43:09 Version des Scripts: 2011-08-19 23:00 21:43:09 Start des Scripts: 22.08.2011 21:43:09 Parameter: /IncludeFavorites 21:43:09 Betriebssystem ist <=XP oder Script läuft mit administrativen Rechten. 21:43:09 DVBViewerExecutablePath nicht gesetzt, suche in der Registry. 21:43:09 Finale Einstellungen in der Form "Variable: Wert" sind: 21:43:09 IncludeFavoriteCategories: Falsch 21:43:09 IncludeFavorites: Wahr 21:43:09 NoUserInteraction: Falsch 21:43:09 NoUserYes: Falsch 21:43:09 TestRun: Falsch 21:43:09 sIncludeCat: 21:43:09 sExcludeCat: 21:43:09 TimeToStartDVBV: 30 21:43:09 TimeToGetData: 20 21:43:09 MinTimeToNextRecord: 60 21:43:09 StartDVBV: Wahr 21:43:09 ShutDownMode: 12323 21:43:09 RunsToKeepInLog: 10 21:43:09 WaitBeforeStart: 30 21:43:09 ReceiveAdditionalEPG: Falsch 21:43:09 TimeToReceiveAdditionalEPG: 600 21:43:09 DVBViewerExecutablePath: "C:\Program Files (x86)\DVBViewer\DVBViewer.exe" 21:43:09 LanguageFile: "de.txt" 21:43:09 10 Durchläufe des Scripts in der Logdatei behalten. 21:43:09 Weniger als 10 Durchläufe in der Logdatei, es wird nichts entfernt. 21:43:09 DVBViewer läuft. Fortfahren? (j/n) 21:43:15 Antwort: j 21:43:15 DVBViewer läuft, Benutzer hat "Fortfahren" gewählt. 21:43:15 Mit COM-Objekt des bereits laufenden DVBViewer verbunden. 21:43:15 Warten auf DVBViewer. 21:43:45 Script endet. Kein DVBViewer COM-Objekt, DVBViewer nimmt auf manuelles Timeshift aktiviert. 21:43:45 Script läuft mit administrativen Rechten, bereits laufender DVBViewer wahrscheinlich nicht. 21:43:45 ***** Ende ***** Ist die sample.ini NICHT die defaut.ini ? Edited August 22, 2011 by Faust Quote Link to comment
GruberMa Posted August 22, 2011 Author Share Posted August 22, 2011 Ist die sample.ini NICHT die defaut.ini ? Die sample.ini wird mit dem Script mitgeliefert und wird zB von mir 1:1 verwendet. Der Abbruch des Scripts ist im Log erklärt: 21:43:45 Script endet. Kein DVBViewer COM-Objekt, DVBViewer nimmt auf manuelles Timeshift aktiviert. Das Script beendet sich aus Sicherheitsgründen bei manuell aktiviertem Timeshift oder wenn eine Aufnahme läuft. Vor dem nächsten Lauf: .) Manuelles Timeshift deaktivieren. .) IDs der Favoriten aktualisieren (siehe Link in meinem vorigen Post). .) Sicherstellen, dass in den nächsten Minuten keine Aufnahmen starten (Höchst zulässige Zeit bis zur nächsten Aufnahme ist definierbar. Quote Link to comment
GruberMa Posted November 28, 2011 Author Share Posted November 28, 2011 AKTUELLE VERSION / CURRENT VERSION ##### New/Changed in "2011-11-21 20:00" .) New: When DVBViewer is in standby mode when the script starts, DVBViewer will be closed (with ShutdownMode option value). .) Fixed: Sub ScanChannels did not work correctly in parameter constellations. Download über Beitrag #1 dieses Threads / Download via post #1 of this thread Quote Link to comment
Siggi0904 Posted November 30, 2011 Share Posted November 30, 2011 (edited) Hi GruperMa, funktioniert super. Hatte bloß einen Hänger da du den Aufruf der Sprachdatei geändert hast. Im alten Script hatte ich den Parameter "/LanguageFile=C:\DVBViewer\Scripts\de.txt" stehen. Mit dem neuen Script hast du da ein Doppelpunkt aus dem Istgleich gemacht. Darauf muss man erstmal kommen, ich habe mich dusselig gesucht. Aber erst der Blick ins Script gab das Ergebnis. Kannst du das Aufrufverzeichnis des Skripts allein lesen und dann auch den Pfad zur de.txt entsprechend dem Scriptverzeichnis setzen? Dachte da an: scriptname = Wscript.ScriptFullName scriptpath = fs.getparentfoldername(scriptname) Und dann das vor die de.txt setzen. So muss man nur noch die txt angeben. Oder gleich weiter gesponnen, könntest du die Betriebssystemsprache als default nehmen? Die Funktion Function GetLanguageID() DIM colItems : Set colItems = ObjWMI.ExecQuery("SELECT * FROM Win32_OperatingSystem") For Each objItem in colitems LANGID = objItem.Locale Next Select Case LANGID Case "0409" : LANGLE = "EN" : MsgBox "Language : English (American)"' Case "0407" : LANGLE = "DE" : MsgBox "Language : Deutsch (Germany)" Case "040c" : LANGLE = "FR" : MsgBox "Language : French (Standard)" Case "0c0a" : LANGLE = "ES" : MsgBox "Language : Spain (Modern Sort)" Case "040a" : LANGLE = "ES" : MsgBox "Language : Spain (Traditional Sort)" Case "0410" : LANGLE = "IT" : MsgBox "Language : Italian (Standard)" End Select End Function sollte das lösen, so ist das alles ein Parameter weniger und man muss nur noch den Pfad zur ini angeben. Hier gibts eine Tabelle aller zur Verfügung stehenden Sprachen: http://msdn.microsoft.com/en-us/goglobal/bb895996.aspx Wenn doch der Language Parameter angegeben wird oder in der ini ein Parameter für "en" definiert ist könnte man das alles umgehen und dann wieder englisch nehmen. Was denkst du? Dank dir und hoffe das waren wieder gute Tipps von mir. Das wär eine schöne Lösung. Edited November 30, 2011 by Siggi0904 Quote Link to comment
GruberMa Posted November 30, 2011 Author Share Posted November 30, 2011 Hallo Siggi0904! Hatte bloß einen Hänger da du den Aufruf der Sprachdatei geändert hast. Im alten Script hatte ich den Parameter "/LanguageFile=C:\DVBViewer\Scripts\de.txt" stehen. Mit dem neuen Script hast du da ein Doppelpunkt aus dem Istgleich gemacht. Darauf muss man erstmal kommen, ich habe mich dusselig gesucht. Aber erst der Blick ins Script gab das Ergebnis. Kannst du das Aufrufverzeichnis des Skripts allein lesen und dann auch den Pfad zur de.txt entsprechend dem Scriptverzeichnis setzen? Dachte da an: Es war immer schon ein Doppelpunkt und kein "="-Zeichen, da gibt es sogar einen Post dazu. Möglicherweise nutzt du eine alte Testversion. Es genügt vollkommen, nur den Namen der Sprachdatei anzugeben, auch ich übergebe keinen Pfad. Voraussetzung ist natürlich, dass das Script von dem Ordner aus ausgeführt wird, in dem es liegt. Der Befehl "cscript c:\scripts\Update-DVBViewer-EPG.vbs /languagefile:de.txt" funktioniert zB von "c:\temp" aus nicht, wenn de.txt nicht in c:\temp liegt. Man muss also entweder zuerst in den Pfad wechseln oder das Ausführungsverzeichnis angeben (in Batch-Files zB über pushd/popd, start /b, bei scheduled tasks "ausführen in" angeben etc.). Deinen anderen Vorschlag finde ich gut, ich werde mir das bei der nächsten Gelegenheit ansehen (wird aber dauern). GruberMa Quote Link to comment
GruberMa Posted December 29, 2011 Author Share Posted December 29, 2011 ##### New/Changed in "2011-12-29 04:00" .) Fixed: Problems with sIncludeCat and sExcludeCat solved. .) Changed: sample.ini now uses all channel every day for the EPG update per default. Quote Link to comment
Search&Destroy Posted February 4, 2012 Share Posted February 4, 2012 Könnte mir mal jemand erklären wie genau das funktioniert? Ich bekomme beim Starten nur: EPG Update Script was not started with cscript.exe, exiting. Help for EPC Update Script: cscript.exe Update-DVBViewer-EPG.vbs /? Quote Link to comment
Tjod Posted February 4, 2012 Share Posted February 4, 2012 Gib einfach im Starmenü bei Ausführen cscript.exe [pfad zum Script]Update-DVBViewer-EPG.vbs ein. Du kannst das auch in einer Verknüpfung machen. Quote Link to comment
Search&Destroy Posted February 4, 2012 Share Posted February 4, 2012 (edited) Also wenn ich das so mache, dann blitzt die Kommandozeile kurz auf - quasi ohne Feedback. DVBViewer reagiert auch nicht. Öffne ich die Kommandozeile selbst und gebe den Befehl ein, kommt: Microsoft ® Windows Script Host, Version 5.8Copyright © Microsoft Corporation 1996-2001. Alle Rechte vorbehalten. 21:08:02 File "en.txt" not found, setting language file to default value "en.txt ". 21:08:02 Default language file "en.txt" not found, exiting. Die en.txt aus dem Archiv ist allerdings im selben Ordner wie die Update-DVBViewer-EPG.vbs Den Pfad hab ich natürlich in ""-Zeichen gesetzt, da die Ordner Leerzeichen enthalten. Edited February 4, 2012 by Search&Destroy Quote Link to comment
Tjod Posted February 4, 2012 Share Posted February 4, 2012 Wenn du das über die Kommentarzeilen macht musst du glaube ich erst in das Verzeichnis wechseln in dem sich Update-DVBViewer-EPG.vbs befindet. Und bei der Verknüpfung müsstest du dann Verzeichnis dann als Arbeitsverzeichnis angeben. Quote Link to comment
Search&Destroy Posted February 4, 2012 Share Posted February 4, 2012 Ahh jetzt hat's geklappt, Danke Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.