Tap Programmierung > Abfrage des aktuellen Play Dateinamen
- FireBird
- Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru

- Beiträge: 25358
- Registriert: Fr 9. Dez 2005, 09:59
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
Nein. Wird Franklin Gothic von einem TAP geliefert? Sonst könnte das ein Stolperstein sein.
- Gerti
- Nicht mehr bei Topfield-Europe

- Beiträge: 15714
- Registriert: Fr 9. Dez 2005, 00:16
- Kontaktdaten:
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
Hi!
Nein, das meinte ich damit aber auch.
Es betrifft halt die Ermittlung der Ausgabebreite im Bezug auf die Schrift.
Gruß,
Gerti
Nein, das meinte ich damit aber auch.
Es betrifft halt die Ermittlung der Ausgabebreite im Bezug auf die Schrift.
Gruß,
Gerti
Topfield Wikipedia - Gesammeltes Wissen zum Topfield...
Meine TAPs für den TMS
Kein Support per PN (Private Nachricht) oder eMail!
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
das mit dem Font hatte ich schon gesehen.
Ich werde mich mal morgen dransetzen, da ich nen Tag frei habe.
Ich melde mich wieder !
Olaf
Ich werde mich mal morgen dransetzen, da ich nen Tag frei habe.
Ich melde mich wieder !
Olaf
SRP 2401 CI+ ECO / SRP 2401 CI+
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
[quote=""FireBird""]Du kannst natürlich auch das .inf vom Dateinamen abschneiden, die daraus gewonnen .rec öffnen und schon hast Du die Größe. Es gibt nur ein Problem: Du kennst das Verzeichnis nicht, aus der die Datei abgespielt wird.[/quote]
Man kann ja alle Verzeichnisse nach dem Namen durchsuchen .
Das hat aber einen Haken.
Wenn man zwei Files mit dem selben Namen hat, erwischt man auch mal das falsche
Bei "StPBTools" hat es Bickabunk ja irgendwie hinbekommen das aktuelle Verzeichnis zu kennen.
Aber wie
Olaf
Man kann ja alle Verzeichnisse nach dem Namen durchsuchen .
Das hat aber einen Haken.
Wenn man zwei Files mit dem selben Namen hat, erwischt man auch mal das falsche
Bei "StPBTools" hat es Bickabunk ja irgendwie hinbekommen das aktuelle Verzeichnis zu kennen.
Aber wie
Olaf
SRP 2401 CI+ ECO / SRP 2401 CI+
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
- FireBird
- Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru

- Beiträge: 25358
- Registriert: Fr 9. Dez 2005, 09:59
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
Du solltest Dir in Ruhe einen Überblick über die tap.h und libFireBird.h verschaffen. Dann wärest Du vielleicht auch über die
gestolpert.
Code: Alles auswählen
HDD_GetAbsolutePathByTypeFile(TYPE_File *File, char *AbsFileName);
Zuletzt geändert von FireBird am Sa 15. Mär 2014, 09:45, insgesamt 1-mal geändert.
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
[quote=""FireBird""]Du solltest Dir in Ruhe einen Überblick über die tap.h und libFireBird.h verschaffen. Dann wärest Du vielleicht auch über die
gestolpert.[/quote]
Vielen Dank
Ich hatte mir Dein Meisterwerk schon mehrfach angesehen.
Aber das habe ich übersehen.
Was wäre die TAP Topfield Welt ohne Deine LIB
Funktioniert einfach Klasse !
Kleine Nachfrage:
Bei Deinem "HDD_Delete" muss ich im richtigen Path sein ?
Ich habe mal probiert das Ergebnis von "HDD_GetAbsolutePathByTypeFile" einfach an "HDD_Delete"
zu übergeben, aber das ging nicht.
Das Du die Endungen ( inf usw) bei "HDD_Delete" abschneidest ist Klasse !
Olaf
Code: Alles auswählen
HDD_GetAbsolutePathByTypeFile(TYPE_File *File, char *AbsFileName);Vielen Dank
Ich hatte mir Dein Meisterwerk schon mehrfach angesehen.
Aber das habe ich übersehen.
Was wäre die TAP Topfield Welt ohne Deine LIB
Funktioniert einfach Klasse !
Kleine Nachfrage:
Bei Deinem "HDD_Delete" muss ich im richtigen Path sein ?
Ich habe mal probiert das Ergebnis von "HDD_GetAbsolutePathByTypeFile" einfach an "HDD_Delete"
zu übergeben, aber das ging nicht.
Das Du die Endungen ( inf usw) bei "HDD_Delete" abschneidest ist Klasse !
Olaf
Zuletzt geändert von omue am So 16. Mär 2014, 07:13, insgesamt 1-mal geändert.
SRP 2401 CI+ ECO / SRP 2401 CI+
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
- FireBird
- Suspekter verdächtiger Zauberküchenchef, TAP & Firmware-Guru

- Beiträge: 25358
- Registriert: Fr 9. Dez 2005, 09:59
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
Ja, HDD_Delete() erwartet den Dateinamen ohne Pfad. Bei HDD_GetAbsolutePathByTypeFile() musst Du noch aufpassen, da es den absoluten Linux-Pfad, also inklusive "/mnt/hd" am Anfang, zurückliefert.
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
[quote=""FireBird""]Ja, HDD_Delete() erwartet den Dateinamen ohne Pfad. Bei HDD_GetAbsolutePathByTypeFile() musst Du noch aufpassen, da es den absoluten Linux-Pfad, also inklusive "/mnt/hd" am Anfang, zurückliefert.[/quote]
Das hatte ich schon bemerkt.
Mit Hilfe Deiner LIB funktioniert es jetzt auch wie es soll.
Danke nochmal !
Olaf
Das hatte ich schon bemerkt.
Mit Hilfe Deiner LIB funktioniert es jetzt auch wie es soll.
Danke nochmal !
Olaf
SRP 2401 CI+ ECO / SRP 2401 CI+
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
[quote=""FireBird""]Du kannst natürlich auch das .inf vom Dateinamen abschneiden, die daraus gewonnen .rec öffnen und schon hast Du die Größe. Es gibt nur ein Problem: Du kennst das Verzeichnis nicht, aus der die Datei abgespielt wird.[/quote]
So nun klappt die Anzeige der Filegröße der laufenden Wiedergabe.
Lösung:
1. Name des Playfiles nehmen.
2. mit "HDD_GetAbsolutePathByTypeFile" Path angeben lassen
3. Path entwuseln und setzen
4. vom Namen .inf entfernen
5. Mit "TYPE_File" Size abfragen.
Ich bin stolz auf mich
Vielen Dank an FireBird und alle anderen, die geduldig meine Anfängerfragen beantwortet haben !
Olaf
So nun klappt die Anzeige der Filegröße der laufenden Wiedergabe.
Lösung:
1. Name des Playfiles nehmen.
2. mit "HDD_GetAbsolutePathByTypeFile" Path angeben lassen
3. Path entwuseln und setzen
4. vom Namen .inf entfernen
5. Mit "TYPE_File" Size abfragen.
Ich bin stolz auf mich
Vielen Dank an FireBird und alle anderen, die geduldig meine Anfängerfragen beantwortet haben !
Olaf
Zuletzt geändert von omue am So 16. Mär 2014, 15:14, insgesamt 1-mal geändert.
SRP 2401 CI+ ECO / SRP 2401 CI+
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
- Twilight
- Zauberküchencheflehrling mit extra Butter

- Beiträge: 59994
- Registriert: Fr 9. Dez 2005, 09:17
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
[quote=""omue""]
Ich bin stolz auf mich
[/quote]kannst auch sein
twilight
Ich bin stolz auf mich
[/quote]kannst auch sein
twilight
AW: Tap Programmierung > Abfrage des aktuellen Play Dateinamen
Hi,
ich bin jetzt endlich mal dazugekommen die Ausgabe zu schreiben.
Vielen Dank nochamal an Gerti !
Du hast mir eine Menge Nachdenken abgenommen.
Die Routine läuft aber nicht immer ganz sauber.
Im Original wurde immer mal ein CR nicht ausgewertet. Die Änderungen in Fettschrift.
Olaf
ich bin jetzt endlich mal dazugekommen die Ausgabe zu schreiben.
Vielen Dank nochamal an Gerti !
Du hast mir eine Menge Nachdenken abgenommen.
Die Routine läuft aber nicht immer ganz sauber.
Im Original wurde immer mal ein CR nicht ausgewertet. Die Änderungen in Fettschrift.
Code: Alles auswählen
int texttolines (char *description )
{
char *ptr;
char delimiter[] =[b] " \n";[/b]
int line = 0;
int foundlines = 0;
int addline=0;
int linelength=0;
ptr = strtok(description, delimiter);
lines[0][0]=0x00;
while (ptr != NULL && line < 220)
{
addline = FMUC_GetStringWidth( ptr, &Calibri_12_FontDataUC);
// naechsten Abschnitt erstellen
if ( addline + linelength > 555 )
{
line++;
TAP_SPrint(lines[line],"%s",ptr);
linelength=FMUC_GetStringWidth( lines[line], &Calibri_12_FontDataUC );
[b]if ( ptr[(strlen(ptr)-1)] == 0x0D )
{
line++;
lines[line][0]=0x00;
linelength=0;
}[/b]
}
else
{
if (linelength == 0)
{
TAP_SPrint(lines[line],"%s",ptr);
}
else
{
TAP_SPrint(lines[line],"%s %s",lines[line],ptr);
}
linelength=FMUC_GetStringWidth( lines[line], &Calibri_12_FontDataUC);
if ( ptr[(strlen(ptr)-1)] == [b]0x0D[/b] )
{
line++;
lines[line][0]=0x00;
linelength=0;
}
}
ptr = strtok(NULL, delimiter);
}
foundlines=line;
line++;
while (line < 220)
{
lines[line][0]=0x00;
line++;
}
return foundlines;
}Olaf
Zuletzt geändert von omue am Do 17. Jul 2014, 17:44, insgesamt 2-mal geändert.
SRP 2401 CI+ ECO / SRP 2401 CI+
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band
68,28,23,19,16,16KA,13,10,9,7,5,3 OST
24,5,4,1 WEST 16 OST KA Band

