Я хочу написать программу, которая будет читать целую кучу файлов word 97 (.doc) и сохранять их как файлы .docx.Я ограничен .Net 2.0.
На данном этапе я просто хочу, чтобы он работал с моим кодом заглушки - тогда я напишу графический интерфейс и логику для открытия нескольких файлов в разных местах и т. Д..
Вот что у меня есть:
using MSWord = Microsoft.Office.Interop.Word;
using MSPPoint = Microsoft.Office.Interop.PowerPoint;
затем
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;
Насколько я могу судить, слово document открывается.Однако команда SaveAs2()
, похоже, выдает AccessViolationException
, а файл .docx не сохраняется.
Может кто-нибудь сообщить мне, что не так с приведенным выше кодом, почему он не сохраняется, и какисправить это?
Спасибо