Gente, nuevamente acá ando preguntando. Tengo una aplicación donde abro un
documento de word e intento exportarlo a PDF. El punto es que me dice que no
puede exportar porque no hay un documento abierto, pero cuando intenta abrir no
da ninguna excepción.
Esto si uso el sitio hosteado en IIS local, si uso el servidor Web del Visual
Studio 2010, funciona bien.
Alguien tiene idea que puede ser?
Cordialmente.
Javier.
A continuación el código y lo que puedo ver como excepción.
Se detectó System.Runtime.InteropServices.COMException
HelpLink=wdmain11.chm#37016 Message=El comando no está disponible porque no
hay ningún documento abierto. Source=Microsoft Word ErrorCode=-2146824040
StackTrace: en
Microsoft.Office.Interop.Word.ApplicationClass.get_ActiveDocument()
static void ConvertToPDF(object filePathWord, object filePathPDF){Application
wordApplication = new Application();Document wordDocument = null;object
doNotSaveChanges = WdSaveOptions.wdSaveChanges;object OriginalFormat = new
object();object RuteDocumento = new object();object paramSourceDocPath =
filePathWord.ToString();object paramMissing = Type.Missing;object oQuit =
System.Reflection.Missing.Value;object fieldEmpty =
WdFieldType.wdFieldEmpty;object fileExportFormat =
Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatPDF;object _fileEncoding =
Encoding.UTF8;
try {wordApplication.WindowState =
WdWindowState.wdWindowStateMinimize;wordApplication.ShowWindowsInTaskbar =
false;wordApplication.DisplayAlerts =
WdAlertLevel.wdAlertsNone;wordApplication.Visible = false;
wordDocument = wordApplication.Documents.Open(ref paramSourceDocPath, ref
paramMissing, ref paramMissing,
ref paramMissing, ref paramMissing, ref paramMissing,
ref paramMissing, ref
paramMissing, ref paramMissing,
ref paramMissing, ref paramMissing, ref paramMissing,
ref paramMissing, ref
paramMissing, ref paramMissing,
ref paramMissing);
// Al ejecutar la linea que sigue es donde pincha.
wordApplication.ActiveDocument.ExportAsFixedFormat(filePathPDF.ToString(),
WdExportFormat.wdExportFormatPDF, false,
WdExportOptimizeFor.wdExportOptimizeForPrint,WdExportRange.wdExportAllDocument,
0, 0, WdExportItem.wdExportDocumentContent, true, true,
WdExportCreateBookmarks.wdExportCreateNoBookmarks, true, true, false, ref
paramMissing);
}catch (Exception ex){CloseWordInstances();throw
ex;}finally{wordApplication.Documents.Close(ref doNotSaveChanges, ref
paramMissing, ref paramMissing);wordApplication.Quit(ref oQuit, ref oQuit, ref
oQuit);}}