Jump to content

Problemas com ficheiros


kombypetras
 Share

Recommended Posts

Boas Pessoal.

Estou a criar uma aplicação e numa fase da utilização o utilizador pode alterar a foto do seu perfil, o problema surge quando altera a imagem mais do que uma vez da erro e diz que não pode alterar  dando o seguinte erro

O processo não pode aceder ao ficheiro 'filepath' porque está a ser utilizado por outro processo.

if (File.Exists(filepath))
{
         if (File.Exists("newfilepath"))
         {
                    File.Delete(filepath);
         }
          File.Copy(filepath, newfilepath);
}

será que alguem me consegue ajudar com este problema?????

Link to comment
Share on other sites

Sim pelo que já pesquisei tb já obtive essa conclusão mas nao tenho a certeza.

public BitmapImage LoadImage(String s)
        {
            BitmapImage bitmap = new BitmapImage();
            bitmap.BeginInit();
            bitmap.UriSource = new Uri(s);
            bitmap.EndInit(); 
            return bitmap;
        }

e num objecto do tipo Image faço

image1.source = LoadImage(path);

Penso que o problema está nesta fase ficando o ficheiro a ser utilizado e não sendo fechado

Como eu faço isso de libertar o ficheiro para novas utilizações.

Link to comment
Share on other sites

Experimenta assim:

        public BitmapImage LoadImage(String s)
        {
            BitmapImage bitmap = new BitmapImage();
            bitmap.BeginInit();
            bitmap.CacheOption=BitmapCacheOption.OnLoad; //Copia a imagem para a cache (memoria) na fase de loading.
            bitmap.UriSource = new Uri(s);
            bitmap.EndInit();
            return bitmap;
        }

Podes ter alguns problemas se trabalhares com imagens grandes, pois vai demorar mais tempo a fazer loading e vai ocupar o tamanho da imagem na memória... mas com imagens relativamente pequenas não há problema.

cumps.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.