C# file flash

lunedì 07 luglio 2008 - 02.39

danielmaz Profilo | Newbie

Salve ragazzi ho bisogno nuovamente di un piccolo aiuto. Nella mia applicazione utilizzo un file flash tramite le dll AxShockwaveFlashObjects e ShockwaveFlashObjects e carico il mio .swf con

axFlashTest.LoadMovie(0, "test.swf");

il file test.swf è contenuto all'interno della cartella dove viene eseguita l'applicazione, c'è un modo per includerlo nelle risorse? Ci sto impazzendo ma non ci riesco proprio nè riesco a trovare nulla su google. aiuuuuuuuuuuuuuuuuuuto

Enne Profilo | Junior Member

Se non ricordo male far leggere un file swf direttamente dalle risorse dà non pochi problemi, quindi la soluzione più semplice è includere il tuo file swf nelle risorse, farlo estrarre (ad esempio nella cartella temporanea di windows) quando viene eseguita la tua applicazione e successivamente farlo caricare da quella path.

Rocco Verrastro
.NET Programmer - Web Developer

danielmaz Profilo | Newbie

Hai sempre una risposta a tutto 6 assurdo!!!
Visto ke ti trovi perchè nn mi risolvi anche un altro thread ke ho aperto 1 settimana fà? Ancora nn ho capito il problema
http://www.dotnethell.it/forum/messages.aspx?ThreadID=23861
Riguardo il file flash invece è bello quello che hai detto ma come posso farlo? puoi farmi qualke esempio di codice?

aiedail92 Profilo | Expert

Ciao

Per includere il file nelle risorse devi andare nelle proprietà del progetto, cercare la tab Risorse, e selezionare Aggiungi risorsa->Aggiungi file esistente. A questo punto per accedere alla risorsa da codice devi usare Properties.Resources.nomeRisorsa.

Per copiare la risorsa (che viene salvata come un array di byte) in un file nelle cartelle temporanee, puoi fare in questo modo:

//Crea il file temporaneo e restituisce il percorso string tempFile = System.IO.Path.GetTempFileName(); //Scrivo tutti i byte del file in quello temporaneo File.WriteAllBytes(tempFile, Properties.Resources.tuaRisorsa); //Carichi il file nel controllo ShockWave: axFlashTest.LoadMovie(0, tempFile); //Alla fine, quando il file si libera, ricordati di eliminarlo!! //File.Delete(tempFile);

Luca

danielmaz Profilo | Newbie

Ho fatto come avete detto voi. Il file viene creato nella cartella temporanea però nella mia applicazione non si visualizza niente. Si vede solo tutto bianco...come diavolo è possibile?

aiedail92 Profilo | Expert

Sei sicuro che non ci sia un errore da qualche parte? Io ho fatto la prova e non mi dà nessun problema...

Luca

danielmaz Profilo | Newbie

Sembra stranissimo anke a me ma ho controllato e nn c'è nessun errore almeno credo.

Enne Profilo | Junior Member

Controlla che la proprietà EmbedMovie del controllo flash sia impostata su flase, e che quella Playing sia impostata su true.
Non ti far confondere dal fatto che il file swf essendo incluso nelle risorse è quindi embeddato per la visualizzazione nel controllo, non lo è perchè viene caricato esternamente dai file temporanei.

Rocco Verrastro
.NET Programmer - Web Developer

danielmaz Profilo | Newbie

Grazie! era quello il problema....ora funziona!

Enne Profilo | Junior Member

Mi fa piacere. Per qualche altra info puoi dare un'occhiata qui: http://activex.moonvalley.com/flash_methods.htm

Rocco Verrastro
.NET Programmer - Web Developer
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5