sto ottenendo l'eccezione di cui sopra e di errore sul seguente codice, che è destinata a riprodurre un file mp3 selezionato da isolato bagagli:Ottenere IsolatedStorageException: Operation not permitted on IsolatedStorageFileStream
using (var isf = IsolatedStorageFile.GetUserStoreForApplication())
{
using (var isfs = isf.OpenFile(selected.Path, FileMode.Open))
{
this.media.SetSource(isfs);
isfs.Close();
}
isf.Dispose();
}
L'errore è così vago che non sono veramente sicuro di cosa potrebbe essere sbagliato ... Qualche idea o almeno le fonti più comuni di questo errore che potrei potenzialmente verificare?
EDIT: l'eccezione viene gettata a: using(var isfs = isf.OpenFile(...))
EDIT 2: L'analisi dello stack ...
at System.IO.IsolatedStorage.IsolatedStorageFileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, IsolatedStorageFile isf)
at System.IO.IsolatedStorage.IsolatedStorageFileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, IsolatedStorageFile isf)
at System.IO.IsolatedStorage.IsolatedStorageFileStream..ctor(String path, FileMode mode, IsolatedStorageFile isf)
at Ringify.Phone.PivotContent.RingtoneCollectionPage.MediaIconSelected(Object sender, GestureEventArgs e)
at MS.Internal.CoreInvokeHandler.InvokeEventHandler(Int32 typeIndex, Delegate handlerDelegate, Object sender, Object args)
at MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName)
ho capito anche che l'errore non si verifica se gioco una canzone quindi fermalo (c'è un pulsante play e pause nell'interfaccia utente), quindi riproduci un altro brano. Succede quando suono una canzone, la interrompo e tento di suonare di nuovo la stessa canzone.
Quale istruzione sta attivando l'errore, isf.OpenFile? Se è così, assicurati che il file esista. È possibile controllare chiamando 'isf.FileExists (selected.Path)' prima di aprire il file –
Sì, è quella linea. Ho fatto un controllo informale scrivendo per consolare i risultati di 'isf.FileExists (selected.Path)' poiché pensavo che fosse il caso, ma lo fa e inserire un'effettiva istruzione if non risolve il problema. –
Non riesco a pensare a nessuna ragione per cui questo codice genererebbe un'eccezione con un file esistente. Puoi mostrarci il valore di 'selected.Path'? –