I get an exception trying to save a picture on a CameraCaptureTask callback. Why is that ? I’m debugging through WPConnect.exe, and I do have to capability ID_CAP_MEDIALIB.
void photoChooserTask_Completed(object sender, PhotoResult e)
{
if (e.TaskResult == TaskResult.OK)
{
string fileName = adViewModel.Id + DateTime.Now.Ticks + ".jpg";
using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication())
{
if (myIsolatedStorage.FileExists(fileName))
{
myIsolatedStorage.DeleteFile(fileName);
}
IsolatedStorageFileStream fileStream = myIsolatedStorage.CreateFile(fileName);
BitmapImage bitmap = new BitmapImage();
bitmap.SetSource(e.ChosenPhoto);
WriteableBitmap wb = new WriteableBitmap(bitmap);
wb.SaveJpeg(fileStream, wb.PixelWidth, wb.PixelHeight, 0, 85);
fileStream.Close();
fileStream = myIsolatedStorage.OpenFile(fileName, FileMode.Open, FileAccess.Read);
MediaLibrary library = new MediaLibrary();
// this line throw the exception
Picture pic = library.SavePictureToCameraRoll(fileName, fileStream);
}
}
}
According to this MSDN entry SavePicture will throw an exception if the phone is tethered to the computer. I imagine SavePictureToCameraRoll will be the same.