The process cannot access the file

2 respostas
T

Olá!

Tenho uma rotina q envia um email com um determinado anexo em formato excel.

Até envia o email, mas não abre o excel e gera o seguinte log:

“The process cannot access the file [excel anexo] because it is being used by another process.”

Isso dá qndo eu crio o anexo.

Attachment arq = new Attachment(filename, "application/vnd.ms-excel");

E aki é onde eu crio o filename beeem acima

string filename = endereco + "\\" + nomeRel + "_" + DateTime.Now.ToString("yyyyMMdd") + "_" + DateTime.Now.ToString("HHmmss") + ".xls";
FileStream stream = new FileStream(filename, FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite);
ExcelWriter writer = new ExcelWriter(stream);

Se eu coloco antes do Attachment stream.Close()(ou Dispose), o log informa q num pode abrir arquivo fechado. Se eu coloco stream.Flush() é a mesma coisa q nada.

Alguma sugestão?
:wink:

2 Respostas

douglaskd

classe procmon para procurar o processo do task manager e finalizar acho que resolve…

T

douglaskd

Achei o problema, era bem simples ^^.

D fato eu tinha q dar stream.Close() antes do Attachment, porém antes d fechar o arquivo, eu tinha tbm q finalizar o writer, por isso tava dando erro falando q num axava o arquivo fechado.

Mas vlw msm pela ajuda heim :wink:

Criado 13 de janeiro de 2012
Ultima resposta 13 de jan. de 2012
Respostas 2
Participantes 2