Batch-Dateien im Capture-Plugin übergeben ?

Bei Problemen mit der Bedienung von TV-Browser, bitte hier posten.
Benutzeravatar
bodo
Site Admin
Beiträge: 19635
Registriert: 03 Dez 2003, 19:37
Wohnort: Köln
Kontaktdaten:

Beitrag von bodo »

Las den User die ID doch einfach im TV-Browser eingeben. Es gibt im Plugin die möglichkeit, einem Kanal einen Wert zu geben. Dann kannst du diesen Wert an deine Bat-Datei übergeben und gut ist. Eine automatische Zuordnung von Name => ID ist nich empfehlenswert. Wer weiß wie der User den Kanal nennt ;) ...

Und die IDs einzutragen kann man von dem User doch verlangen...
Benutzeravatar
fingerhut
Platin Member
Beiträge: 2923
Registriert: 03 Feb 2005, 10:18
Wohnort: Nürnberg

Beitrag von fingerhut »

hi


bei cmd konnst du keine sonderzeichen übergeben auch nicht &

und warum kannst du die skipe nicht verwenden ??
versehe es nicht kann man doch anpassen.

Und diese Id kann man doch in TV browser speichern unter Sender
notfalls mit Channal Leerzeichen und ID ~> zwei parameter
oder meinst du mit ID die Sationsnr oder Channalnr ?

wenn du willst helfe ich dir dabei es umzusetzen.

in VB skript &
diese .task datei einach vor der Aufnahme zu aktualisieren bzw zu erstellen.

-> alle Info werden im TB-Browser und in der TV-Software gespeichert
und nur diese Programme muss man Sendername und diese ID geichhalten.

Da es mich interesiert hat habe ich mal die ID ausgelesen

test.vbs und die info.txt waren in G:\test gespeichert und gesucht habe ich nach RTL

Code: Alles auswählen

Set objFSO = wscript.CreateObject("Scripting.FileSystemObject")
 
 v_strPath = "G:\test"
 v_datei   = "info.txt"
 v_channal = "RTL"
 v_strText1 = ""
 v_strText2 = ""
 

 strFullName = objFSO.BuildPath( v_strPath , v_datei)

 Set objFile = objFSO.OpenTextFile(strFullName ,1 )
 Do While objFile.AtEndOfStream <> True
    v_strText2 = v_strText1
    v_strText1 = objFile.ReadLine
    v_laenge = len(v_strText1) 
    v_laenge1 = v_laenge - 8
    if 0 < v_laenge1 THEN
       v_strTextNew = right(v_strText1,v_laenge1)
       IF v_strTextNew = v_channal THEN
         v_laenge = len(v_strText2) 
         v_laenge2 = v_laenge - 4
         v_id = right(v_strText2,v_laenge2)
         Wscript.Echo v_id
         v_run = 1 
         Exit Do
       END IF  
    END IF 
  Loop

 objFile.Close

 if 1 = v_run Then
   Wscript.Echo "found id "
 ELSE
   Wscript.Echo "not found id "
 END IF
Gast

Beitrag von Gast »

Problem (selber) gelöst. Keine Replys mehr nötig.
Gast

Beitrag von Gast »

bodo hat geschrieben:Las den User die ID doch einfach im TV-Browser eingeben. Es gibt im Plugin die möglichkeit, einem Kanal einen Wert zu geben. Dann kannst du diesen Wert an deine Bat-Datei übergeben und gut ist. Eine automatische Zuordnung von Name => ID ist nich empfehlenswert. Wer weiß wie der User den Kanal nennt ;) ...

Und die IDs einzutragen kann man von dem User doch verlangen...
Deine Antwort lese ich jetzt erst (ach da ist noch ne zweite Seite ?)

Ich hab das Problem gelöst. Der PVR (PersonalVideoRecorder) legt ne ini Datei an und dort kann ich die Infos bekommen die ich brauche.
Gast

Beitrag von Gast »

fingerhut hat geschrieben:hi


bei cmd konnst du keine sonderzeichen übergeben auch nicht &

und warum kannst du die skipe nicht verwenden ??
versehe es nicht kann man doch anpassen.

Und diese Id kann man doch in TV browser speichern unter Sender
notfalls mit Channal Leerzeichen und ID ~> zwei parameter
oder meinst du mit ID die Sationsnr oder Channalnr ?

wenn du willst helfe ich dir dabei es umzusetzen.

in VB skript &
diese .task datei einach vor der Aufnahme zu aktualisieren bzw zu erstellen.

-> alle Info werden im TB-Browser und in der TV-Software gespeichert
und nur diese Programme muss man Sendername und diese ID geichhalten.

Da es mich interesiert hat habe ich mal die ID ausgelesen

test.vbs und die info.txt waren in G:\test gespeichert und gesucht habe ich nach RTL

Code: Alles auswählen

Set objFSO = wscript.CreateObject("Scripting.FileSystemObject")
 
 v_strPath = "G:\test"
 v_datei   = "info.txt"
 v_channal = "RTL"
 v_strText1 = ""
 v_strText2 = ""
 

 strFullName = objFSO.BuildPath( v_strPath , v_datei)

 Set objFile = objFSO.OpenTextFile(strFullName ,1 )
 Do While objFile.AtEndOfStream <> True
    v_strText2 = v_strText1
    v_strText1 = objFile.ReadLine
    v_laenge = len(v_strText1) 
    v_laenge1 = v_laenge - 8
    if 0 < v_laenge1 THEN
       v_strTextNew = right(v_strText1,v_laenge1)
       IF v_strTextNew = v_channal THEN
         v_laenge = len(v_strText2) 
         v_laenge2 = v_laenge - 4
         v_id = right(v_strText2,v_laenge2)
         Wscript.Echo v_id
         v_run = 1 
         Exit Do
       END IF  
    END IF 
  Loop

 objFile.Close

 if 1 = v_run Then
   Wscript.Echo "found id "
 ELSE
   Wscript.Echo "not found id "
 END IF
Ich hatte noch nie etwas mit VBscript zu tun, aber mir scheint so als ob das Programm nicht tut was ich will. Nämlich die Zeile suchen in der "RTL" steht und dann das Textfile ab Zeile x-8 (oder so) abscannen wobei dann 12 Zeilen eingelesen werden.

Dann habe ich den Textbaustein den ich haben will.

Als Batchdatei sieht das so aus:

@echo off

REM *** Suche nach den Daten des gewünschten Senderkanals innerhalb der .ini Datei
REM ******************************************************************************

set datei=%tverz%\textdatei.ini

findstr>temp.txt /I /N Caption=%8 %datei%

REM *** In dieser Zeile stehen die gesuchten Daten
REM **********************************************

FOR /F "delims=:" %%i IN (temp.txt) DO set sender=%%i

set /A sender=sender-9


REM *** Hole die Daten per Schleife
REM *******************************

set a=0

FOR /F "skip=%sender% delims== tokens=1,2" %%i IN (%datei%) DO call PVR-sub.bat %%i %%j

end




Subroutine PVR-sub.bat

set /A a=a+1

if %a% LSS 11 echo>>%tmptask% %1=%2



Und das funktioniert so wie ich es will und auch der PVR übernimmt das so.

Trotzdem Danke daß du dich da so hineingehängt hast. Wenn ich noch mehr Fragen habe komme ich auf Dich zurück. :)

Gruß
Michael
Benutzeravatar
fingerhut
Platin Member
Beiträge: 2923
Registriert: 03 Feb 2005, 10:18
Wohnort: Nürnberg

Beitrag von fingerhut »

wenn das alles so funktioniert wäre es schön wenn du noch mals alles zusammen noch einmal postes mit einbischen beschreibung so das man es vielleicht ins Handbuch übernehmen könnte.
und wenn du das mit diesen task dateien noch euinmal erklärest wäre schön


mit dem skript geht schon in Ordnung arbeite grade mit meinem Bruder an einem andern Projekt in VBS wo dass alles vorkommt.
amiga

Beitrag von amiga »

fingerhut hat geschrieben:wenn das alles so funktioniert wäre es schön wenn du noch mals alles zusammen noch einmal postes mit einbischen beschreibung so das man es vielleicht ins Handbuch übernehmen könnte.
und wenn du das mit diesen task dateien noch euinmal erklärest wäre schön

Wird gemacht. Ich schreibe dazu noch eine Installationsanweisung und dann kann es hier oder sonstwo veröffentlicht werden.

Kann ich das ganze auch per zip packen und hier bei euch downloadbar machen ? Oder braucht es dazu einen link auf meine Homepage ?

? Michael
Benutzeravatar
fingerhut
Platin Member
Beiträge: 2923
Registriert: 03 Feb 2005, 10:18
Wohnort: Nürnberg

Beitrag von fingerhut »

bis jetzt machen wir das so

http://wiki.tvbrowser.org/index.php/Cap ... gurationen

kann jeder bearbeiten
Gast

Beitrag von Gast »

fingerhut hat geschrieben:bis jetzt machen wir das so

http://wiki.tvbrowser.org/index.php/Cap ... gurationen

kann jeder bearbeiten
Ahja. Bin jetzt auch drinne.
Benutzeravatar
fingerhut
Platin Member
Beiträge: 2923
Registriert: 03 Feb 2005, 10:18
Wohnort: Nürnberg

Beitrag von fingerhut »

sieht gut aus


wenn duch noch einen link zu schtasks.exe und waketask.exe machst wäre das gut


[[schtasks.exe]] und waketask.exe http://www.huebert.info/waketask/

( noch ein tipp) ;-)
wenn du in den .bat Dateien <BR> (eingerückt) in deine Leerzeilen schreibst werden die Ramen geschlossen bzw. nicht unterbrochen.
Das einrücken ist nämlich das Zeichen das so ein Rahmen entsteht.
Antworten