Salve, ho il seguente problema che mi si presenta sul server chiamando il metodo quit di Microsoft.Office.Interop.Word.
Noto che l'applicazione web sembra bloccata e in effetti il file di copia del file che credo risulta bloccato (per intenderci quello che con la tilde) e non si cancella in automatico.
In locale da me il tutto funziona, però noto che a questa riga di codice:
word.Quit(ref saveChanges, ref nullobj, ref nullobj);
si presenta una ambiguità mi dice che :
"Ambiguità tra il metodo Microsoft.Office.Interop.Word._Application.Quit(...)
e Microsoft.Office.Interop.Word.ApplicationEvents4_Events.Quit(..)"
posto un pò di codice:
string templateFileName = @"c:\AAA\DUVRI.doc";
string specificFileName = @"c:\AAA\" + idverb + "_A.doc"; // @"c:\DASC2.doc";
File.Copy(templateFileName, specificFileName, true);
DataTable dtcontr = panoramicacontratto.Tables[0];
object nullobj = System.Reflection.Missing.Value;
//Open Word
Application word = new Application();
//Make Word visible
//word.Visible = true;
//Open file
object fileName = specificFileName;
Document doc = word.Documents.Open(ref fileName, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj);
Range range = null;
//Find Bookmarks and write data
foreach (Bookmark bookmark in doc.Bookmarks)
{
......
}
//Save as document
doc.Save();
//Close Word
object saveChanges = false;
word.Quit(ref saveChanges, ref nullobj, ref nullobj);
Ripeto il problema si presenta sul server, viene creata la copia del file di partenza ma poi vienen anche creata la copia con la tilde del file e il programam si blocca e devo cancellare manualemnte il file temporaneo chiudendo prima l'applicazione.
le libreire che uso sono:
Office.dll
Microsoft.Office.Interop.Word.dll
Interop.Office.dll
grazie