Movies mit IncludeBinary?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Alves
Beiträge: 1208
Registriert: 19.04.2006 18:24
Kontaktdaten:

Movies mit IncludeBinary?

Beitrag von Alves »

Also ich wollte mit IncludeBinary ein Movie includieren und dann abspielen. Problem ist, ich habe ja nur die Speicheradresse, und CatchMovie gibt es nicht.

Wie geht es trotzdem?
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag von PBZecke »

Vor dem Abspielen temporär auf die Platte schreiben:

Code: Alles auswählen

DataSection
IB1Start:
 IncludeBinary "c:\irgendwo\movie.mpeg"
IB1End:
EndDataSection



If CreateFile(1,"c:\movie.mpeg")
   Len = ?IB1End - ?IB1Start
   WriteData(1,?IB1Start,Len) 
   CloseFile(1)
EndIf
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Aber bitte nichts ins Root von C: :freak:
Besser so:

Code: Alles auswählen

If CreateFile(1, GetTemporaryDirectory() +  "movie.mpeg") 
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Alves
Beiträge: 1208
Registriert: 19.04.2006 18:24
Kontaktdaten:

Beitrag von Alves »

Warum nicht ins Root?

Bei mir liegen da tausenden Dateien offen :roll:
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag von PBZecke »

ts-soft hat geschrieben:Aber bitte nichts ins Root von C: :freak:
Besser so:

Code: Alles auswählen

If CreateFile(1, GetTemporaryDirectory() +  "movie.mpeg") 
Is doch nur ein Beispiel gewesen...


>>Bei mir liegen da tausenden Dateien offen

Was bei Dir da rum liegt ist ja egal, aber einem Anwender Deines
Programmes solltest Du das nicht antuen :wink:
Zuletzt geändert von PBZecke am 15.07.2006 21:42, insgesamt 1-mal geändert.
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Alves hat geschrieben:Warum nicht ins Root?

Bei mir liegen da tausenden Dateien offen :roll:
1. Dateien sind in Ordnern besser geschützt, als im Root einer Partion
2. C:\ existiert nicht auf jedem System
3. dort sind für das OS "lebenswichtige" Dateien, deren Beschädigung das
Starten von Windows verhindern könnte.
4. Nicht jeder User hat unbedingt das Recht dort zu schreiben.
5. Dafür ist der Tempordner vorgesehen!

PS: Programme die temporär nach C: schreiben sind für mich ein Hinweis darauf, das der Programmierer von Windows nicht viel Ahnung hat und es evtl. Besser ist, dieses Programm zu entfernen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

>> Is doch nur ein Beispiel gewesen...
Wird leider von Anfängern so 1:1 übernommen, sonst wäre es klar.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

grundsätzlich habt ihr ja recht, aber ist das nicht völlig banane in diesem fall?

Code: Alles auswählen

DataSection
IB1Start:
 IncludeBinary "c:\irgendwo\movie.mpeg"
IB1End:
EndDataSection



If CreateFile(1,"c:\movie.mpeg")
   Len = ?IB1End - ?IB1Start
   WriteData(1,?IB1Start,Len) 
   CloseFile(1)
   LoadMovie(1,"c:\movie.mpeg")
   DeleteFile("c:\movie.mpeg")
EndIf
> Wird leider von Anfängern so 1:1 übernommen, sonst wäre es klar.
ok, isn argument

> PS: Programme die temporär nach C: schreiben sind für mich ein Hinweis darauf, das der Programmierer von Windows nicht viel Ahnung hat und es evtl. Besser ist, dieses Programm zu entfernen.

auchn argument
Zuletzt geändert von Kaeru Gaman am 15.07.2006 21:46, insgesamt 2-mal geändert.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag von PBZecke »

ts-soft hat geschrieben:>> Is doch nur ein Beispiel gewesen...
Wird leider von Anfängern so 1:1 übernommen, sonst wäre es klar.
Ja, hast recht, wie dieser Thread beweist... 8)
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Antworten