Avatar billede boox Nybegynder
14. april 2004 - 20:46 Der er 6 kommentarer og
2 løsninger

flash load problem

jeg har indsat et flash objekt via SWFlash.ocx som er importeret og loader så min film med denne komando:

ShockwaveFlash1.Movie := 'C:\13-4ny\Movie1\11.swf';

men ideen er at applicationen skal ligge på en CD og da man ik ved om brugeren har cd-drev på D E eller andet så er det jo lidt svært at angive hvor flash filen skal loades fra, hvordan kan dette problem løses?
Avatar billede bernie Nybegynder
14. april 2004 - 20:49 #1
ShockwaveFlash1.Movie := '13-4ny\Movie1\11.swf';

så der hvor din exe fil er skal der være en mappe 13-4ny\movie1\11.swf
Avatar billede bernie Nybegynder
14. april 2004 - 20:50 #2
men husk at prøve din applaktion med ShockwaveFlash1.Movie := 'C:\13-4ny\Movie1\11.swf'; inden du brænder den ud
Avatar billede boox Nybegynder
14. april 2004 - 21:00 #3
hmm forvirret!! (0=

jeg kan ikke bruge: ShockwaveFlash1.Movie := '13-4ny\Movie1\11.swf';
så kommer der ik noget frem/0=
Avatar billede stone Forsker
14. april 2004 - 21:17 #4
så tager den filen i roden af cd'en ????
procedure TForm1.FormCreate(Sender: TObject);
var
POT : String;
begin
POT := extractfilepath(paramstr(0))+'vinlageret.swf';
ShockwaveFlash1.LoadMovie(0, POT);
ShockwaveFlash1.Play;
Avatar billede hrc Mester
15. april 2004 - 17:39 #5
Jeg forstår slet ikke problemet. Hvorfor behøver du skrive 'c:\13-4ny\Movie1\11.swf'? Kan du ikke bare skrive "\13-4ny\Movie1\11.swf' og undlade drevet. Hvis du kører programmet fra E:, så kigger programmet på E-drevet.

I øvrigt er stone's eksempel ganske anvendeligt:
  ExtractFilePath(Paramstr(0)) + '11.swf';

virker fint, men det afholder mig ikke fra at komme med denne lille variant:
  ExtractFilePath(Application.ExeName)+ '11.swf';

Begge løsninger finder jeg lige gode.

Stone: Er det dig med "Stone's Software"? - fine sager.
Avatar billede boox Nybegynder
15. april 2004 - 20:07 #6
hrc --> kan man bare nøjes med at skrive dette ???:
ExtractFilePath(Application.ExeName)+ '11.swf';

for det er jo en del nemmere i stedet for den anden med POT : string; osv.
Avatar billede hrc Mester
16. april 2004 - 07:31 #7
Nej - jeg havde bare pillet det essentielle ud fra stone's eksempel, nemlig den del der henter en absolut sti og sætter det foran det navn som du vil indlæse.

Ydermere har Stone specificeret det ud for at gøre det mere læseligt. Han kunne jo også have gjort dette:

procedure TForm1.FormCreate(Sender: TObject);
begin
  ShockwaveFlash1.LoadMovie(0, ExtractFilePath(Paramstr(0))+'11.swf');
  ShockwaveFlash1.Play;
end;

Det bliver noget mere kompakt. Min version ville se sådan ud:

procedure TForm1.FormCreate(Sender: TObject);
begin
  ShockwaveFlash1.LoadMovie(0, ExtractFilePath(Application.ExeName+'11.swf');
  ShockwaveFlash1.Play;
end;

Har du i øvrigt prøvet at skrive '\13-4ny\Movie1\11.swf':

procedure TForm1.FormCreate(Sender: TObject);
begin
  ShockwaveFlash1.LoadMovie(0, '\13-4ny\Movie1\11.swf');
  ShockwaveFlash1.Play;
end;
Avatar billede stone Forsker
07. juli 2005 - 13:59 #8
skal spørgsmålet ikke lukkes....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester