How to get smartart index from existing word document C#

Apr 30 2017 10:23 AM
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:

 public static bool EvaluateSmartArtShape(IQuestion question, string filename, SmartArtShapes _smartArtShape)         {             WordInterop.Application wordApplication = GetOrCreateWordApplication(question.ObjectStore);               try             {                 //Avoid screen flickering or unwanted alerts while initializing                 wordApplication.ScreenUpdating = false;                 WordInterop.WdAlertLevel displayAlertLevel = wordApplication.DisplayAlerts;                 wordApplication.DisplayAlerts = WordInterop.WdAlertLevel.wdAlertsNone;                   WordInterop.Document wordDocument = wordApplication.Documents.Open(filename);                 //WORD                 WordInterop.Shapes ws = wordDocument.Shapes;                 foreach(WordInterop.Shape s in ws)                 {                     if (s.HasSmartArt == MsoTriState.msoTrue)                     {                         if (s == wordApplication.SmartArtLayouts[(int)_smartArtShape])//line 697                         {                             return true;                         }                     }                 }                 wordDocument.Close();                              }             catch (Exception ee)             {                 string strError = ee.ToString();                 Cleanup(question.ObjectStore, true);             }             return false;         }


Error:
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

Answers (1)