Bouquets Andere löschen ...

Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
roma

Bouquets Andere löschen ...

Beitrag von roma »

Kleine Utility löscht alle Sender von Bouquets Andere.

#include "windows.h"
#include <stdio.h>

int main(int argc, char* argv[])
{
char* pos;
char sid[5], bid[5];
char sonid[5], bonid[5];
char servbuf[512], bouqbuf[512];
FILE *bouquet, *services, *newservices;
if ((bouquet = fopen("bouquets.xml", "r")) == NULL)
return 1;
if ((services = fopen("services.xml", "r")) == NULL)
return 1;
if ((newservices = fopen("newservices.xml", "w")) == NULL)
return 1;
while (fgets( servbuf, 512, services ) != NULL)
{
bool found = false;
fpos_t fpos = 0;
if( fsetpos( bouquet, &fpos ) != 0 )
perror( "fsetpos error" );

if ((pos = strstr( servbuf, "onid=")) != NULL)
{
strncpy(sonid, pos+6,4);
sonid[4] = 0;
fputs(servbuf, newservices);
continue;
}
if ((pos = strstr( servbuf, "service_id=")) != NULL)
{
strncpy(sid, pos+12,4);
sid[4] = 0;
while (fgets( bouqbuf, 512, bouquet ) != NULL)
{
if ((pos = strstr( bouqbuf, "serviceID=")) != NULL)
{
strncpy(bid, pos+11,4);
bid[4] = 0;
if (!strcmp(sid, bid))
{
pos = strstr( bouqbuf, "onid=");
strncpy(bonid, pos+6,4);
bonid[4] = 0;
if (!strcmp(sonid, bonid))
{
found = true;
break;
}
}
}
}
if (found)
fputs(servbuf, newservices);
}
else
fputs(servbuf, newservices);
}
fclose(bouquet);
fclose(services);
fclose(newservices);
return 0;
}
thegoodguy
Erleuchteter
Erleuchteter
Beiträge: 465
Registriert: Mittwoch 14. August 2002, 20:45

Neue zapit.conf option: makeRemainingChannelsBouquet

Beitrag von thegoodguy »

Hi!

Ab sofort (04.10/Release von alexw) kann - sofern gewuenscht - die Erstellung des Bouquets "Andere"/"Alle Kanaele" in der zapit.conf manuell abgeschaltet werden.

Viele Gruesse!

P.S. Bislang ist mir erst ein kleiner, unbedeutender Fehler in diesem Zusammenhang aufgefallen. Mal sehen ob den jemand findet ...

P.P.S. Schliesslich ist mit #include "windows.h" nicht jedem geholfen :wink: