public void RunMacro(string macroPath, MacroEntryPoint entryPoint, bool unloadAfterRun) { int err; var opts = unloadAfterRun ? swRunMacroOption_e.swRunMacroUnloadAfterRun : swRunMacroOption_e.swRunMacroDefault; if (!m_App.RunMacro2(macroPath, entryPoint.ModuleName, entryPoint.SubName, (int)opts, out err)) { throw new MacroRunFailedException((swRunMacroError_e)err); } }
public virtual void Run(MacroEntryPoint entryPoint, MacroRunOptions_e opts) { swRunMacroOption_e swOpts = swRunMacroOption_e.swRunMacroDefault; switch (opts) { case MacroRunOptions_e.Default: swOpts = swRunMacroOption_e.swRunMacroDefault; break; case MacroRunOptions_e.UnloadAfterRun: swOpts = swRunMacroOption_e.swRunMacroUnloadAfterRun; break; } int err; if (!m_SwApp.RunMacro2(m_Path, entryPoint.ModuleName, entryPoint.ProcedureName, (int)swOpts, out err)) { string errDesc; switch ((swRunMacroError_e)err) { case swRunMacroError_e.swRunMacroError_InvalidArg: errDesc = "Invalid argument"; break; case swRunMacroError_e.swRunMacroError_MacrosAreDisabled: errDesc = "Macros are disabled"; break; case swRunMacroError_e.swRunMacroError_NotInDesignMode: errDesc = "Not in design mode"; break; case swRunMacroError_e.swRunMacroError_OnlyCodeModules: errDesc = "Only code modules"; break; case swRunMacroError_e.swRunMacroError_OutOfMemory: errDesc = "Out of memory"; break; case swRunMacroError_e.swRunMacroError_InvalidProcname: errDesc = "Invalid procedure name"; break; case swRunMacroError_e.swRunMacroError_InvalidPropertyType: errDesc = "Invalid property type"; break; case swRunMacroError_e.swRunMacroError_SuborfuncExpected: errDesc = "Sub or function expected"; break; case swRunMacroError_e.swRunMacroError_BadParmCount: errDesc = "Bad parameter count"; break; case swRunMacroError_e.swRunMacroError_BadVarType: errDesc = "Bad variable type"; break; case swRunMacroError_e.swRunMacroError_UserInterrupt: throw new MacroUserInterruptException(m_Path, err); case swRunMacroError_e.swRunMacroError_Exception: errDesc = "Exception"; break; case swRunMacroError_e.swRunMacroError_Overflow: errDesc = "Overflow"; break; case swRunMacroError_e.swRunMacroError_TypeMismatch: errDesc = "Type mismatch"; break; case swRunMacroError_e.swRunMacroError_ParmNotOptional: errDesc = "Parameter not optional"; break; case swRunMacroError_e.swRunMacroError_UnknownLcid: errDesc = "Unknown LCID"; break; case swRunMacroError_e.swRunMacroError_Busy: errDesc = "Busy"; break; case swRunMacroError_e.swRunMacroError_ConnectionTerminated: errDesc = "Connection terminated"; break; case swRunMacroError_e.swRunMacroError_CallRejected: errDesc = "Call rejected"; break; case swRunMacroError_e.swRunMacroError_CallFailed: errDesc = "Call failed"; break; case swRunMacroError_e.swRunMacroError_Zombied: errDesc = "Zombied"; break; case swRunMacroError_e.swRunMacroError_Invalidindex: errDesc = "Invalid index"; break; case swRunMacroError_e.swRunMacroError_NoPermission: errDesc = "No permission"; break; case swRunMacroError_e.swRunMacroError_Reverted: errDesc = "Reverted"; break; case swRunMacroError_e.swRunMacroError_TooManyOpenFiles: errDesc = "Too many open files"; break; case swRunMacroError_e.swRunMacroError_DiskError: errDesc = "Disk error"; break; case swRunMacroError_e.swRunMacroError_CantSave: errDesc = "Cannot save"; break; case swRunMacroError_e.swRunMacroError_OpenFileFailed: errDesc = "Open file failed"; break; default: throw new UnknownMacroRunFailedException(m_Path); } throw new MacroRunFailedException(m_Path, err, errDesc); } }