Dear All,I want to evaluate smartart shape, which is already inserted in the existing word document. Where the document contain n number of smartart shapes.I alreay searched on google regarding this, but I did not find suitable one.Please review my code..What I have tried:Hide Expand
Copy Code public static bool EvaluateSmartArtShape(IQuestion question, string filename, SmartArtShapes _smartArtShape) { WordInterop.Application wordApplication = GetOrCreateWordApplication(question.ObjectStore); try { wordApplication.ScreenUpdating = false; WordInterop.WdAlertLevel displayAlertLevel = wordApplication.DisplayAlerts; wordApplication.DisplayAlerts = WordInterop.WdAlertLevel.wdAlertsNone; WordInterop.Document wordDocument = wordApplication.Documents.Open(filename); WordInterop.Shapes ws = wordDocument.Shapes; foreach(WordInterop.Shape s in ws) { if (s.HasSmartArt == MsoTriState.msoTrue) { if (s == wordApplication.SmartArtLayouts[(int)_smartArtShape]) { return true; } } } wordDocument.Close(); } catch (Exception ee) { string strError = ee.ToString(); Cleanup(question.ObjectStore, true); } return false; }
Error:Hide Copy Code
System.Runtime.InteropServices.COMException (0x80010105): The server threw an exception. (Exception from HRESULT: 0x80010105 (RPC_E_SERVERFAULT)) at Microsoft.Office.Core.SmartArtLayouts.get_Item(Object Index) at TeTec.Action.Office2013.Word.WordHelper.EvaluateSmartArtShape(IQuestion question, String filename, SmartArtShapes _smartArtShape) in C:\TETEC\Development\TeTec.Action\Office\Office2013\Word\WordHelper.cs:line 697
Can any one please help me.Thanks