Bir sürü kelime 97 dosya (.doc) okuyacak ve bunları .docx dosyaları olarak kaydedecek bir program yazmak istiyorum. Net 2.0 ile sınırlıyım. İşte C# Word Interop AccessViolationException, kaydederken
Ben bugüne kadar ne var ... o zaman vb GUI ve birden fazla yerde birden fazla dosya açmak için mantık, yazacak - Bu aşamada , sadece benim saplama kodu ile çalışma olsun istiyorum : Söyleyebileceğimusing MSWord = Microsoft.Office.Interop.Word;
using MSPPoint = Microsoft.Office.Interop.PowerPoint;
sonra
OpenFileDialog ofd = new OpenFileDialog()
{
CheckFileExists = true,
};
if (ofd.ShowDialog() != DialogResult.OK)
return;
MSWord.Application app = new MSWord.Application();
MSWord.Document doc = new MSWord.Document();
doc = app.Documents.Open(ofd.FileName);
try
{
doc.SaveAs2(ofd.FileName + ".docx", MSWord.WdSaveFormat.wdFormatDocument);
}
catch (Exception ex)
{
MessageBox.Show("Could not save because:\r\n" + ex.Message,
ex.GetType().ToString());
}
doc.Close();
app.Quit();
return;
Bildiğim kadarıyla, word belgesi açılıyor. Ancak,
SaveAs2()
komutu, bir
AccessViolationException
atıyor ve .docx kaydedilmez gibi görünüyor.
Birisi, lütfen yukarıdaki kodda neyin yanlış olduğunu, neden tasarruf etmediğini ve nasıl düzeltileceğini bana bildirebilir mi?
Teşekkürler
Tam istisnayı (ayrıntılar ile) gönderme hakkında ne düşünüyorsunuz? – steinar