Performance problems for network profiles

Add-in Express™ Support Service
That's what is more important than anything else

Performance problems for network profiles
 
Erik Csokas


Guest


We have two performance issues on customer PCs using network profiles.
a) Registration - it tooks 3-10 minutes.
b) Word startup - dozen of seconds up to minutes.

We use registration with "regsvr32 adxloader.dll" in our setup and time is lost somewhere between starting regsvr32 and the first call into constructor of our addin.

Problem does not occur if we login as local user. Location of setup program (network/local disk) has no measurable impact.

We tried to build also dummy addin without any custom code (with only one toolbar button as demo)but this did not helped us. We also checked if perfomance problems are not caused by antivirus software.

Is it possible to obtain Addin Express version with some extra logs to resolve where is bottle neck?

Standard adxloader.log does not show problem. However, I have not example now - it is only on customer environment.

We use:
- Add-in Express 2008 for Microsoft Office and .net, Professional
- MS Office 2003
Posted 25 Nov, 2008 05:57:41 Top
Eugene Astafiev


Guest


Hello Erik,

You can find the adxloader.log file in the <My Documents>\Add-in Express folder. Please have a look at the time of events in this file. Does it reflect the delay?

BTW What version and build number of Add-in Express do you use?
Posted 25 Nov, 2008 06:41:02 Top
Juraj Hajek




Posts: 6
Joined: 2008-12-04
We use Add-in Express 2008 for .NET Professional, build 1912 Public Release.

Log data for registration:

adxloader.log:
Add-in Express Loader Log File: 11/25/2008 17:51:51

Startup directory: Loader version: 4.4.1912.0C:\Program Files\CompanyName\Product
------------------
17:51:51 2716 Start.
17:51:51 2716 Reading the registry key 'HKEY_CLASSES_ROOT\CLSID\{3C52D5CE-D28B-48B3-8680-D649FCA788FE}'
17:51:51 2716 Success. The registry key 'HKEY_CLASSES_ROOT\CLSID\{3C52D5CE-D28B-48B3-8680-D649FCA788FE}' is closed.
17:51:51 2716 Converting the '{4BA250A6-8BCA-46A6-982A-F340081187C3}' CLSID from string.
17:51:51 2716 Success.
17:51:51 2716 Attempting to get the class object by the '{4BA250A6-8BCA-46A6-982A-F340081187C3}' CLSID.
17:51:51 2716 Success.
17:51:51 2716 Creating a new instance of the add-in loader.
17:51:51 2716 Success.
17:51:51 2716 Loading the configuration from the system registry.
17:51:51 2716 Getting the lates CLR version.
17:51:51 2716 The latest CLR version is 'v2.0.50727'.
17:51:51 2716 The configuration has been loaded successfully.
17:51:51 2716 Runtime version: v2.0.50727.
17:51:51 2716 Assembly name: Xpars.Host.OL2003-3.2, PublicKeyToken=922407A0DCD99066.
17:51:51 2716 Class name: CompanyName.Product.AddInModule.
17:51:51 2716 Attempting to create a new instance of the managed add-in class: CLR - v2.0.50727
17:51:51 2716 Loading CLR: v2.0.50727.
17:51:51 2716 The CLR v2.0.50727 has been initialized successfully.
17:51:51 2716 Creating a new domain setup.
17:51:51 2716 Success.
17:51:51 2716 Getting the add-in directory.
17:51:51 2716 Success. The directory is 'C:\Program Files\CompanyName\Product\'
17:51:51 2716 The 'shadow copy' is enabled.
17:51:51 2716 Creating a new application domain.
17:51:51 2716 Success.
17:52:35 2716 Unwrapping the managed class.
17:52:50 2716 Success.
17:52:50 2716 Querying the add-in extensibility.
17:52:50 2716 Querying the custom task panes.
17:52:50 2716 Querying the ribbon extensibility.
17:52:51 2716 Success.
17:52:51 2716 Querying the form regions.
17:52:51 2716 Success.
17:52:51 2716 The managed add-in class has been created successfully.

We have also worse cases than only 1 minute per addin. Consider than we deploy 2 addins. This means that simple setup can hang for 5 minutes or more.
Posted 04 Dec, 2008 10:18:44 Top
Juraj Hajek




Posts: 6
Joined: 2008-12-04
Here are also results from profiler for slow word startup. Profiled addin was generated by wizard and does not contain any custom functionality. Only one toolbar button was added for demonstrating that addin is loaded:

100.00 % Root - 46902 ms - 0 calls
100.00 % Thread #2243360 - 46902 ms - 0 calls
71.08 % CreateInstance - 33338 ms - 1 call - System.AppDomain.CreateInstance(String, String)
71.08 % CreateInstance - 33338 ms - 1 call - System.Activator.CreateInstance(String, String)
red1 call - System.Activator.CreateInstance(String, String, Boolean, BindingFlags, Binder, Object [], CultureInfo, Object [], Evidence, StackCrawlMark &)
2.49 % CreateInstance - 1166 ms - 1 call - System.Activator.CreateInstance(Type, BindingFlags, Binder, Object [], CultureInfo, Object [])
2.48 % CreateInstanceImpl - 1165 ms - 1 call - System.RuntimeType.CreateInstanceImpl(BindingFlags, Binder, Object [], CultureInfo, Object [])
2.47 % CreateInstance - 1158 ms - 1 call - System.Activator.CreateInstance(Type, Boolean)
2.47 % CreateInstanceImpl - 1157 ms - 1 call - System.RuntimeType.CreateInstanceImpl(Boolean, Boolean, Boolean)
2.46 % CreateInstanceSlow - 1156 ms - 1 call - System.RuntimeType.CreateInstanceSlow(Boolean, Boolean)
2.44 % AddinModule..ctor - 1142 ms - 1 call - AddinByWizard.AddinModule..ctor()
1.05 % ADXAddinModule..ctor - 493 ms - 1 call - AddinExpress.MSO.ADXAddinModule..ctor()
0.08 % InitializeComponent - 38 ms - 1 call - AddinExpress.MSO.ADXAddinModule.InitializeComponent()
0.04 % SortedList..ctor - 18 ms - 7 calls - System.Collections.SortedList..ctor()
0.00 % CreateConnectionPoint - 2 ms - 2 calls - AddinExpress.MSO.ADXAddinModule.CreateConnectionPoint(Guid, ConnectionFactory)
0.00 % FindSink - 1 ms - 2 calls - AddinExpress.MSO.ADXAddinModule.FindSink(Guid)
0.00 % FindItem - 1 ms - 2 calls - AddinExpress.MSO.TaggedObjectList.FindItem(Object)
0.00 % IndexOf - 0 ms - 2 calls - System.Collections.ArrayList.IndexOf(Object)
0.00 % IndexOf - 0 ms - 2 calls - System.Array.IndexOf(Array, Object, Int32, Int32)
0.00 % Equals - 0 ms - 1 call - AddinExpress.MSO.TaggedObject.Equals(Object)
0.00 % Equals - 0 ms - 1 call - System.String.Equals(String, String)
0.00 % ToUpper - 0 ms - 2 calls - System.String.ToUpper(CultureInfo)
0.00 % ToString - 0 ms - 2 calls - System.Guid.ToString()
0.00 % get_CurrentCulture - 0 ms - 2 calls - System.Threading.Thread.get_CurrentCulture()
0.00 % ToString - 0 ms - 2 calls - System.Guid.ToString()
0.00 % ToUpper - 0 ms - 2 calls - System.String.ToUpper(CultureInfo)
0.00 % Add - 0 ms - 2 calls - System.Collections.ArrayList.Add(Object)
0.00 % ConnectionPoint..ctor - 0 ms - 2 calls - AddinExpress.MSO.ConnectionPoint..ctor(IConnectionPointContainer, Guid, ConnectionFactory)
0.00 % get_CurrentCulture - 0 ms - 2 calls - System.Threading.Thread.get_CurrentCulture()
0.00 % GetFields - 0 ms - 1 call - System.RuntimeType.GetFields(BindingFlags)
0.00 % set_Interval - 0 ms - 1 call - System.Windows.Forms.Timer.set_Interval(Int32)
0.00 % Consts..cctor - 0 ms - 1 call - AddinExpress.MSO.Consts..cctor()
0.00 % Guid..ctor - 0 ms - 2 calls - System.Guid..ctor(String)
0.00 % SortedList..cctor - 0 ms - 1 call - System.Collections.SortedList..cctor()
0.00 % Timer..ctor - 0 ms - 1 call - System.Windows.Forms.Timer..ctor()
0.00 % set_Enabled - 0 ms - 1 call - System.Windows.Forms.Timer.set_Enabled(Boolean)
0.00 % add_Tick - 0 ms - 1 call - System.Windows.Forms.Timer.add_Tick(EventHandler)
0.86 % Log - 403 ms - 2 calls - AddinByWizard.AddinModule.Log(String)
0.85 % WriteLine - 398 ms - 2 calls - System.Diagnostics.Trace.WriteLine(String)
0.01 % Format - 5 ms - 2 calls - System.String.Format(String, Object)
0.03 % InitializeComponent - 14 ms - 1 call - AddinByWizard.AddinModule.InitializeComponent()
0.01 % ADXCommandBarButton..ctor - 4 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton..ctor(IContainer)
0.01 % ADXCommandBarControl..ctor - 3 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl..ctor(IContainer)
0.01 % Add - 2 ms - 1 call - System.ComponentModel.Container.Add(IComponent)
0.00 % InitializeComponent - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.InitializeComponent()
0.00 % ToString - 0 ms - 1 call - System.Guid.ToString()
0.00 % NewGuid - 0 ms - 1 call - System.Guid.NewGuid()
0.00 % Container..ctor - 0 ms - 1 call - System.ComponentModel.Container..ctor()
0.00 % Component..ctor - 0 ms - 1 call - System.ComponentModel.Component..ctor()
0.00 % Color..cctor - 0 ms - 1 call - System.Drawing.Color..cctor()
0.00 % get_Transparent - 0 ms - 1 call - System.Drawing.Color.get_Transparent()
0.01 % Add - 3 ms - 1 call - AddinExpress.MSO.ADXBaseControlCollection.Add(ADXCommandBarControl)
0.00 % Add - 1 ms - 1 call - System.Collections.CollectionBase.Add(Object) (from System.Collections.IList)
0.00 % OnInsertComplete - 1 ms - 1 call - AddinExpress.MSO.ADXCommandBarControlCollection.OnInsertComplete(Int32, Object)
0.00 % SetCollection - 1 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.SetCollection(ADXBaseControlCollection)
0.00 % set_Temporary - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.set_Temporary(Boolean)
0.00 % get_Owner - 0 ms - 2 calls - AddinExpress.MSO.ADXCommandBarControlCollection.get_Owner()
0.00 % get_Temporary - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.get_Temporary()
0.00 % set_AddinModule - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.set_AddinModule(ADXAddinModule)
0.00 % get_AddinModule - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.get_AddinModule()
0.00 % Add - 0 ms - 1 call - System.Collections.ArrayList.Add(Object)
0.00 % OnValidate - 0 ms - 1 call - System.Collections.CollectionBase.OnValidate(Object)
0.00 % OnInsert - 0 ms - 1 call - System.Collections.CollectionBase.OnInsert(Int32, Object)
0.00 % get_Count - 0 ms - 1 call - System.Collections.ArrayList.get_Count()
0.00 % Contains - 0 ms - 1 call - System.Collections.CollectionBase.Contains(Object) (from System.Collections.IList)
0.00 % ADXCommandBar..ctor - 2 ms - 1 call - AddinExpress.MSO.ADXCommandBar..ctor(IContainer)
0.00 % Add - 2 ms - 1 call - System.ComponentModel.Container.Add(IComponent)
0.00 % InitializeComponent - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.InitializeComponent()
0.00 % ToString - 0 ms - 1 call - System.Guid.ToString()
0.00 % NewGuid - 0 ms - 1 call - System.Guid.NewGuid()
0.00 % Container..ctor - 0 ms - 1 call - System.ComponentModel.Container..ctor()
0.00 % Component..ctor - 0 ms - 1 call - System.ComponentModel.Component..ctor()
0.00 % set_CommandBarName - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.set_CommandBarName(String)
0.00 % Equals - 0 ms - 1 call - System.String.Equals(String, String)
0.00 % get_IsConnected - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.get_IsConnected()
0.00 % set_Caption - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.set_Caption(String)
0.00 % get_IsConnected - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.get_IsConnected()
0.00 % ADXWordAppEvents..ctor - 0 ms - 1 call - AddinExpress.MSO.ADXWordAppEvents..ctor(IContainer)
0.00 % Add - 0 ms - 1 call - System.ComponentModel.Container.Add(IComponent)
0.00 % Container..ctor - 0 ms - 2 calls - System.ComponentModel.Container..ctor()
0.00 % Component..ctor - 0 ms - 1 call - System.ComponentModel.Component..ctor()
0.00 % set_ControlTag - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.set_ControlTag(String)
0.00 % Equals - 0 ms - 1 call - System.String.Equals(String, String)
0.00 % get_IsConnected - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.get_IsConnected()
0.00 % CtorClosed - 0 ms - 6 calls - System.MulticastDelegate.CtorClosed(Object, IntPtr)
0.00 % set_Temporary - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.set_Temporary(Boolean)
0.00 % get_Owner - 0 ms - 2 calls - AddinExpress.MSO.ADXCommandBarControlCollection.get_Owner()
0.00 % get_Temporary - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.get_Temporary()
0.00 % set_CommandBarTag - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.set_CommandBarTag(String)
0.00 % Equals - 0 ms - 1 call - System.String.Equals(String, String)
0.00 % add_WindowActivate - 0 ms - 1 call - AddinExpress.MSO.ADXWordAppEvents.add_WindowActivate(ADXHostWindow_EventHandler)
0.00 % Combine - 0 ms - 1 call - System.Delegate.Combine(Delegate, Delegate)
0.00 % Container..ctor - 0 ms - 1 call - System.ComponentModel.Container..ctor()
0.00 % add_DocumentBeforeClose - 0 ms - 1 call - AddinExpress.MSO.ADXWordAppEvents.add_DocumentBeforeClose(ADXHostBeforeAction_EventHandler)
0.00 % Combine - 0 ms - 1 call - System.Delegate.Combine(Delegate, Delegate)
0.00 % add_DocumentOpen - 0 ms - 1 call - AddinExpress.MSO.ADXWordAppEvents.add_DocumentOpen(ADXHostActiveObject_EventHandler)
0.00 % Combine - 0 ms - 1 call - System.Delegate.Combine(Delegate, Delegate)
0.00 % add_NewDocument - 0 ms - 1 call - AddinExpress.MSO.ADXWordAppEvents.add_NewDocument(ADXHostActiveObject_EventHandler)
0.00 % Combine - 0 ms - 1 call - System.Delegate.Combine(Delegate, Delegate)
0.00 % add_DocumentChange - 0 ms - 1 call - AddinExpress.MSO.ADXWordAppEvents.add_DocumentChange(EventHandler)
0.00 % Combine - 0 ms - 1 call - System.Delegate.Combine(Delegate, Delegate)
0.00 % add_Click - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.add_Click(ADXClick_EventHandler)
0.00 % Combine - 0 ms - 1 call - System.Delegate.Combine(Delegate, Delegate)
0.00 % get_Transparent - 0 ms - 1 call - System.Drawing.Color.get_Transparent()
0.00 % set_ImageTransparentColor - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.set_ImageTransparentColor(Color)
0.00 % get_Controls - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.get_Controls()
0.00 % set_AddinName - 0 ms - 1 call - AddinExpress.MSO.ADXAddinModule.set_AddinName(String)
0.00 % set_UpdateCounter - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.set_UpdateCounter(Int32)
0.00 % set_UpdateCounter - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.set_UpdateCounter(Int32)
0.00 % set_SupportedApps - 0 ms - 1 call - AddinExpress.MSO.ADXAddinModule.set_SupportedApps(ADXOfficeHostApp)
0.03 % IsCurrentContextOK - 12 ms - 1 call - System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(Type, Object [], Boolean)
0.81 % InternalLoad - 381 ms - 1 call - System.Reflection.Assembly.InternalLoad(String, Evidence, StackCrawlMark &, Boolean)
0.04 % ResolvePolicy - 19 ms - 1 call - System.Security.SecurityManager.ResolvePolicy(Evidence, PermissionSet, PermissionSet, PermissionSet, PermissionSet &, Int32 &, Boolean)
27.13 % OnStartupComplete - 12726 ms - 1 call - AddinExpress.MSO.ADXAddinModule.OnStartupComplete(Array &) (from Extensibility.IDTExtensibility2)
24.48 % Install - 11482 ms - 1 call - AddinExpress.MSO.ADXAddinModule.Install()
24.39 % InternalAddCmdBar - 11440 ms - 1 call - AddinExpress.MSO.ADXAddinModule.InternalAddCmdBar(ADXCommandBar, Boolean)
16.58 % FindCommandBarObj - 7774 ms - 1 call - AddinExpress.MSO.ADXAddinModule.FindCommandBarObj(String)
16.57 % ForwardCallToInvokeMember - 7774 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % IndexOf - 0 ms - 1 call - System.Globalization.CompareInfo.IndexOf(String, String, CompareOptions)
0.00 % get_CompareInfo - 0 ms - 1 call - System.Globalization.CultureInfo.get_CompareInfo()
6.42 % InternalAddControl - 3013 ms - 1 call - AddinExpress.MSO.ADXAddinModule.InternalAddControl(ADXCommandBarControl, ADXCommandBar, ADXCommandBarPopup, Boolean, Boolean)
5.98 % FindControlObj - 2807 ms - 1 call - AddinExpress.MSO.ADXAddinModule.FindControlObj(Object, String)
5.98 % ForwardCallToInvokeMember - 2807 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.38 % SetProperties - 179 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.SetProperties(String, Boolean)
0.38 % UpdateProperties - 179 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.UpdateProperties(String, Boolean)
0.38 % UpdateProperties - 179 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.UpdateProperties(String, Boolean)
0.38 % UpdateControlObj - 179 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.UpdateControlObj(ADXAddinModule)
0.31 % InitButton - 145 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.InitButton()
0.01 % set_Style - 3 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.set_Style(ADXMsoButtonStyle)
0.00 % ForwardCallToInvokeMember - 2 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % get_IsConnected - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.get_IsConnected()
0.00 % ForwardCallToInvokeMember - 0 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % set_HyperlinkType - 1 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.set_HyperlinkType(ADXMsoCommandBarButtonHyperlinkType)
0.00 % get_IsConnected - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.get_IsConnected()
0.00 % ForwardCallToInvokeMember - 0 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % ForwardCallToInvokeMember - 0 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % set_State - 1 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.set_State(ADXMsoButtonState)
0.00 % get_IsConnected - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.get_IsConnected()
0.00 % ForwardCallToInvokeMember - 0 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % ForwardCallToInvokeMember - 0 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % PutImage - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.PutImage()
0.00 % get_AddinModule - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.get_AddinModule()
0.00 % Equals - 0 ms - 1 call - System.String.Equals(String, String)
0.06 % UpdateControlObj - 30 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.UpdateControlObj(ADXAddinModule)
0.03 % set_HelpContextID - 16 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.set_HelpContextID(Int32)
0.03 % ForwardCallToInvokeMember - 16 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % get_IsConnected - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBarControl.get_IsConnected()
0.00 % ForwardCallToInvokeMember - 0 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.03 % set_ControlObj - 13 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.set_ControlObj(Object)
0.03 % Connect - 13 ms - 1 call - AddinExpress.MSO.ADXCommandBarButton.Connect(Object)
0.02 % GetEventProvider - 10 ms - 1 call - System.__ComObject.GetEventProvider(Type)
0.02 % CreateEventProvider - 10 ms - 1 call - System.__ComObject.CreateEventProvider(Type)
0.02 % CreateInstance - 9 ms - 1 call - System.Activator.CreateInstance(Type, BindingFlags, Binder, Object [], CultureInfo)
0.02 % CreateInstance - 9 ms - 1 call - System.Activator.CreateInstance(Type, BindingFlags, Binder, Object [], CultureInfo, Object [])
0.02 % CreateInstanceImpl - 9 ms - 1 call - System.RuntimeType.CreateInstanceImpl(BindingFlags, Binder, Object [], CultureInfo, Object [])
0.00 % Invoke - 1 ms - 1 call - System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags, Binder, Object [], CultureInfo)
0.00 % InvokeConstructor - 0 ms - 1 call - System.RuntimeMethodHandle.InvokeConstructor(Object [], SignatureStruct, RuntimeTypeHandle)
0.00 % _ICommandBarButtonEvents_EventProvider..ctor - 0 ms - 1 call - AddinExpress.MSO._ICommandBarButtonEvents_EventProvider..ctor(Object)
0.00 % GetOneTimeFlags - 0 ms - 1 call - System.Reflection.MethodBase.GetOneTimeFlags()
0.00 % CheckArguments - 0 ms - 1 call - System.Reflection.MethodBase.CheckArguments(Object [], Binder, BindingFlags, CultureInfo, Signature)
0.00 % RunClassConstructor - 0 ms - 1 call - System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor(RuntimeTypeHandle)
0.00 % get_Signature - 0 ms - 3 calls - System.Reflection.RuntimeConstructorInfo.get_Signature()
0.00 % op_Implicit - 0 ms - 1 call - System.Signature.op_Implicit(Signature)
0.00 % get_TypeHandle - 0 ms - 2 calls - System.RuntimeType.get_TypeHandle()
0.00 % get_Arguments - 0 ms - 1 call - System.Signature.get_Arguments()
0.00 % get_Value - 0 ms - 1 call - System.RuntimeTypeHandle.get_Value()
0.00 % GetConstructors - 0 ms - 1 call - System.RuntimeType.GetConstructors(BindingFlags)
0.00 % FilterApplyMethodBaseInfo - 0 ms - 1 call - System.RuntimeType.FilterApplyMethodBaseInfo(MethodBase, BindingFlags, String, CallingConventions, Type [], Boolean)
0.00 % BindToMethod - 0 ms - 1 call - System.DefaultBinder.BindToMethod(BindingFlags, MethodBase [], Object [] &, ParameterModifier [], CultureInfo, String [], Object &)
0.00 % CreateInstanceCheckThis - 0 ms - 1 call - System.RuntimeType.CreateInstanceCheckThis()
0.00 % CopyTo - 0 ms - 1 call - System.Collections.ArrayList.CopyTo(Array)
0.00 % IsAssignableFrom - 0 ms - 1 call - System.Type.IsAssignableFrom(Type)
0.00 % get_DefaultBinder - 0 ms - 1 call - System.Type.get_DefaultBinder()
0.00 % Add - 0 ms - 1 call - System.Collections.ArrayList.Add(Object)
0.00 % ArrayList..ctor - 0 ms - 1 call - System.Collections.ArrayList..ctor(Int32)
0.00 % get_DeclaringType - 0 ms - 1 call - System.Reflection.RuntimeConstructorInfo.get_DeclaringType()
0.00 % get_Count - 0 ms - 1 call - System.Collections.ArrayList.get_Count()
0.02 % ForwardCallToInvokeMember - 8 ms - 3 calls - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
1.21 % SetProperties - 568 ms - 1 call - AddinExpress.MSO.ADXCommandBar.SetProperties(String, Boolean)
1.15 % UpdateCommandBarObj - 537 ms - 1 call - AddinExpress.MSO.ADXCommandBar.UpdateCommandBarObj(ADXAddinModule)
1.14 % set_Visible - 534 ms - 1 call - AddinExpress.MSO.ADXCommandBar.set_Visible(Boolean)
1.14 % ForwardCallToInvokeMember - 534 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % get_Enabled - 0 ms - 2 calls - AddinExpress.MSO.ADXCommandBar.get_Enabled()
0.00 % get_IsConnected - 0 ms - 2 calls - AddinExpress.MSO.ADXCommandBar.get_IsConnected()
0.00 % ForwardCallToInvokeMember - 0 ms - 2 calls - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % ForwardCallToInvokeMember - 0 ms - 2 calls - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % get_IsConnected - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.get_IsConnected()
0.00 % ForwardCallToInvokeMember - 0 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.04 % IsKeyChanged - 20 ms - 1 call - AddinExpress.MSO.ADXCommandBar.IsKeyChanged(String)
0.04 % CreateKey - 19 ms - 1 call - AddinExpress.MSO.ADXRegistry.CreateKey(String)
0.04 % CreateSubKey - 19 ms - 8 calls - Microsoft.Win32.RegistryKey.CreateSubKey(String)
0.00 % Split - 0 ms - 1 call - System.String.Split(Char [], Int32, StringSplitOptions)
0.00 % Add - 0 ms - 8 calls - System.Collections.ArrayList.Add(Object)
0.00 % Free - 0 ms - 1 call - AddinExpress.MSO.ADXRegistry.Free()
0.00 % Clear - 0 ms - 1 call - System.Collections.ArrayList.Clear()
0.00 % get_Count - 0 ms - 1 call - System.Collections.ArrayList.get_Count()
0.02 % ApplyChanges - 10 ms - 1 call - AddinExpress.MSO.ADXCommandBar.ApplyChanges(String)
0.02 % SetValue - 8 ms - 3 calls - Microsoft.Win32.RegistryKey.SetValue(String, Object)
0.00 % CreateKey - 1 ms - 1 call - AddinExpress.MSO.ADXRegistry.CreateKey(String)
0.00 % CreateSubKey - 1 ms - 8 calls - Microsoft.Win32.RegistryKey.CreateSubKey(String)
0.00 % Split - 0 ms - 1 call - System.String.Split(Char [], Int32, StringSplitOptions)
0.00 % Add - 0 ms - 8 calls - System.Collections.ArrayList.Add(Object)
0.00 % Free - 0 ms - 1 call - AddinExpress.MSO.ADXRegistry.Free()
0.00 % Clear - 0 ms - 1 call - System.Collections.ArrayList.Clear()
0.00 % get_Count - 0 ms - 1 call - System.Collections.ArrayList.get_Count()
0.00 % get_CommandBarName - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.get_CommandBarName()
0.00 % get_IsConnected - 0 ms - 1 call - AddinExpress.MSO.ADXCommandBar.get_IsConnected()
0.00 % ForwardCallToInvokeMember - 0 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % ForwardCallToInvokeMember - 0 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.00 % Dispose - 0 ms - 1 call - AddinExpress.MSO.ADXRegistry.Dispose() (from System.IDisposable)
0.00 % Free - 0 ms - 1 call - AddinExpress.MSO.ADXRegistry.Free()
0.00 % Close - 0 ms - 8 calls - Microsoft.Win32.RegistryKey.Close()
0.00 % Dispose - 0 ms - 8 calls - Microsoft.Win32.RegistryKey.Dispose() (from System.IDisposable)
0.00 % get_Item - 0 ms - 8 calls - System.Collections.ArrayList.get_Item(Int32)
0.00 % Clear - 0 ms - 1 call - System.Collections.ArrayList.Clear()
0.00 % get_Count - 0 ms - 1 call - System.Collections.ArrayList.get_Count()
0.00 % SuppressFinalize - 0 ms - 1 call - System.GC.SuppressFinalize(Object)
0.09 % ForwardCallToInvokeMember - 42 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.04 % FindDebris - 20 ms - 1 call - AddinExpress.MSO.ADXAddinModule.FindDebris()
0.04 % InvokeMember - 18 ms - 2 calls - System.RuntimeType.InvokeMember(String, BindingFlags, Binder, Object, Object [], ParameterModifier [], CultureInfo, String [])
0.00 % OpenKey - 2 ms - 2 calls - AddinExpress.MSO.ADXRegistry.OpenKey(String, Boolean)
0.00 % OpenSubKey - 2 ms - 14 calls - Microsoft.Win32.RegistryKey.OpenSubKey(String, Boolean)
0.00 % Free - 0 ms - 4 calls - AddinExpress.MSO.ADXRegistry.Free()
0.00 % Close - 0 ms - 12 calls - Microsoft.Win32.RegistryKey.Close()
0.00 % Dispose - 0 ms - 12 calls - Microsoft.Win32.RegistryKey.Dispose() (from System.IDisposable)
0.00 % Clear - 0 ms - 4 calls - System.Collections.ArrayList.Clear()
0.00 % get_Item - 0 ms - 12 calls - System.Collections.ArrayList.get_Item(Int32)
0.00 % get_Count - 0 ms - 4 calls - System.Collections.ArrayList.get_Count()
0.00 % Split - 0 ms - 2 calls - System.String.Split(Char [], Int32, StringSplitOptions)
0.00 % Add - 0 ms - 12 calls - System.Collections.ArrayList.Add(Object)
0.00 % GetRegKey - 0 ms - 2 calls - AddinExpress.MSO.ADXAddinModule.GetRegKey(ADXOfficeHostApp, String)
0.00 % IndexOfApp - 0 ms - 2 calls - AddinExpress.MSO.Globals.IndexOfApp(ADXOfficeHostApp)
0.00 % ToString - 0 ms - 2 calls - System.Enum.ToString()
0.00 % GetFields - 0 ms - 2 calls - System.RuntimeType.GetFields(BindingFlags)
0.00 % GetField - 0 ms - 2 calls - System.RuntimeType.GetField(String, BindingFlags)
0.00 % IndexOf<T> - 0 ms - 2 calls - System.Array.IndexOf<T>(T [], T)
0.00 % Format - 0 ms - 2 calls - System.String.Format(IFormatProvider, String, Object [])
0.00 % ToString - 0 ms - 1 call - System.Convert.ToString(Object, IFormatProvider)
0.00 % Dispose - 0 ms - 2 calls - AddinExpress.MSO.ADXRegistry.Dispose() (from System.IDisposable)
0.00 % Free - 0 ms - 2 calls - AddinExpress.MSO.ADXRegistry.Free()
0.00 % Clear - 0 ms - 2 calls - System.Collections.ArrayList.Clear()
0.00 % get_Count - 0 ms - 2 calls - System.Collections.ArrayList.get_Count()
0.00 % SuppressFinalize - 0 ms - 2 calls - System.GC.SuppressFinalize(Object)
0.00 % Concat - 0 ms - 2 calls - System.String.Concat(String, String)
1.87 % InvokeMember - 875 ms - 5 calls - System.RuntimeType.InvokeMember(String, BindingFlags, Binder, Object, Object [], ParameterModifier [], CultureInfo, String [])
0.51 % ADXAddinModule.InternalMessaging..ctor - 238 ms - 1 call - AddinExpress.MSO.ADXAddinModule.InternalMessaging..ctor(String, ADXAddinModule)
0.26 % CreateHandle - 122 ms - 1 call - System.Windows.Forms.NativeWindow.CreateHandle(CreateParams)
0.14 % CreateWindowEx - 64 ms - 1 call - System.Windows.Forms.UnsafeNativeMethods.CreateWindowEx(Int32, String, String, Int32, Int32, Int32, Int32, Int32, HandleRef, HandleRef, HandleRef, Object)
0.14 % IntCreateWindowEx* - 64 ms - 1 call - System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx*(Int32, String, String, Int32, Int32, Int32, Int32, Int32, HandleRef, HandleRef, HandleRef, Object)
0.14 % Callback - 64 ms - 1 call - System.Windows.Forms.NativeWindow.WindowClass.Callback(IntPtr, Int32, IntPtr, IntPtr)
0.12 % AssignHandle - 58 ms - 1 call - System.Windows.Forms.NativeWindow.AssignHandle(IntPtr)
0.01 % Callback - 5 ms - 1 call - System.Windows.Forms.NativeWindow.Callback(IntPtr, Int32, IntPtr, IntPtr)
0.00 % WndProc - 1 ms - 1 call - AddinExpress.MSO.ADXAddinModule.InternalMessaging.WndProc(Message &)
0.00 % WndProc - 1 ms - 1 call - System.Windows.Forms.NativeWindow.WndProc(Message &)
0.00 % RegisterWindowMessage* - 0 ms - 1 call - System.Windows.Forms.SafeNativeMethods.RegisterWindowMessage*(String)
0.00 % get_IsAlive - 0 ms - 1 call - System.WeakReference.get_IsAlive()
0.00 % get_Target - 0 ms - 1 call - System.WeakReference.get_Target()
0.00 % Create - 0 ms - 1 call - System.Windows.Forms.Message.Create(IntPtr, Int32, IntPtr, IntPtr)
0.04 % Create - 21 ms - 1 call - System.Windows.Forms.NativeWindow.WindowClass.Create(String, Int32)
0.07 % NativeWindow..cctor - 32 ms - 1 call - System.Windows.Forms.NativeWindow..cctor()
0.04 % ConnectTo - 19 ms - 1 call - AddinExpress.MSO.ADXAddinModule.WordApplicationEvents_BaseLogic.ConnectTo(Object, Object)
0.00 % Advise* - 1 ms - 1 call - System.Runtime.InteropServices.ComTypes.IConnectionPoint.Advise*(Object, Int32 &)
0.00 % FindConnectionPoint* - 0 ms - 1 call - System.Runtime.InteropServices.ComTypes.IConnectionPointContainer.FindConnectionPoint*(Guid &, IConnectionPoint &)
0.00 % Guid..ctor - 0 ms - 1 call - System.Guid..ctor(String)
0.00 % DoStartup - 0 ms - 1 call - AddinExpress.MSO.ADXWordAppEvents.DoStartup()
0.00 % GetGUID - 0 ms - 1 call - AddinExpress.MSO.ADXAddinModule.WordApplicationEvents4_SinkHelper.GetGUID()
0.00 % __ComObject..ctor - 0 ms - 1 call - System.__ComObject..ctor()
0.03 % GetAppCommandBars - 13 ms - 1 call - AddinExpress.MSO.ADXAddinModule.GetAppCommandBars()
0.03 % InvokeMember - 13 ms - 1 call - System.RuntimeType.InvokeMember(String, BindingFlags, Binder, Object, Object [], ParameterModifier [], CultureInfo, String [])
0.03 % GetRegKey - 13 ms - 2 calls - AddinExpress.MSO.ADXAddinModule.GetRegKey(ADXOfficeHostApp, String)
0.03 % IndexOfApp - 12 ms - 2 calls - AddinExpress.MSO.Globals.IndexOfApp(ADXOfficeHostApp)
0.02 % ToString - 8 ms - 2 calls - System.Enum.ToString()
0.00 % IndexOf<T> - 2 ms - 2 calls - System.Array.IndexOf<T>(T [], T)
0.00 % GetField - 1 ms - 2 calls - System.RuntimeType.GetField(String, BindingFlags)
0.00 % GetFields - 0 ms - 2 calls - System.RuntimeType.GetFields(BindingFlags)
0.78 % CreateDomain - 366 ms - 1 call - System.AppDomain.CreateDomain(String, Evidence, AppDomainSetup)
0.53 % SetupDomain - 249 ms - 1 call - System.AppDomain.SetupDomain(Boolean, String, String)
0.27 % OnConnection - 128 ms - 1 call - AddinExpress.MSO.ADXAddinModule.OnConnection(Object, ext_ConnectMode, Object, Array &) (from Extensibility.IDTExtensibility2)
0.11 % SetHostApplication - 51 ms - 1 call - AddinExpress.MSO.ADXAddinModule.SetHostApplication()
0.08 % InvokeMember - 39 ms - 2 calls - System.RuntimeType.InvokeMember(String, BindingFlags, Binder, Object, Object [], ParameterModifier [], CultureInfo, String [])
0.01 % GetValue - 3 ms - 1 call - System.Reflection.MdFieldInfo.GetValue(Object)
0.00 % IndexOf - 1 ms - 6 calls - System.Globalization.CompareInfo.IndexOf(String, String, CompareOptions)
0.00 % ToString - 0 ms - 1 call - System.Convert.ToString(Object, IFormatProvider)
0.00 % GetFields - 0 ms - 1 call - System.RuntimeType.GetFields(BindingFlags)
0.00 % Globals..cctor - 0 ms - 1 call - AddinExpress.MSO.Globals..cctor()
0.00 % get_InvariantCulture - 0 ms - 1 call - System.Globalization.CultureInfo.get_InvariantCulture()
0.00 % get_CompareInfo - 0 ms - 6 calls - System.Globalization.CultureInfo.get_CompareInfo()
0.06 % ForwardCallToInvokeMember - 28 ms - 1 call - System.RuntimeType.ForwardCallToInvokeMember(String, BindingFlags, Object, Int32 [], MessageData &)
0.11 % GetCOMIUnknown - 52 ms - 1 call - System.Runtime.Remoting.Proxies.RemotingProxy.GetCOMIUnknown(Boolean)
0.04 % get_ConfigurationFile - 17 ms - 1 call - System.AppDomainSetup.get_ConfigurationFile()
0.02 % PermissionSet..cctor - 8 ms - 1 call - System.Security.PermissionSet..cctor()
0.01 % SetDefaultDomainManager - 5 ms - 1 call - System.AppDomain.SetDefaultDomainManager(String, String [], String [])

Maybe this is caused by same reason as slow installation. Word is unusable with such delays during each startup.
Posted 04 Dec, 2008 10:29:56 Top
Juraj Hajek




Posts: 6
Joined: 2008-12-04
Sorry, identation was lost. Focus on this part at the beginning:
100.00 % Root - 46902 ms - 0 calls
  100.00 % Thread #2243360 - 46902 ms - 0 calls
    71.08 % CreateInstance - 33338 ms - 1 call - System.AppDomain.CreateInstance(String, String)
      71.08 % CreateInstance - 33338 ms - 1 call - System.Activator.CreateInstance(String, String)
        71.08 % CreateInstance - 33337 ms - 1 call - System.Activator.CreateInstance(String, String, Boolean, BindingFlags, Binder, Object [], CultureInfo, Object [], Evidence, StackCrawlMark &)
          2.49 % CreateInstance - 1166 ms - 1 call - System.Activator.CreateInstance(Type, BindingFlags, Binder, Object [], CultureInfo, Object [])
            2.48 % CreateInstanceImpl - 1165 ms - 1 call - System.RuntimeType.CreateInstanceImpl(BindingFlags, Binder, Object [], CultureInfo, Object [])
              2.47 % CreateInstance - 1158 ms - 1 call - System.Activator.CreateInstance(Type, Boolean)
                2.47 % CreateInstanceImpl - 1157 ms - 1 call - System.RuntimeType.CreateInstanceImpl(Boolean, Boolean, Boolean)
                  2.46 % CreateInstanceSlow - 1156 ms - 1 call - System.RuntimeType.CreateInstanceSlow(Boolean, Boolean)
                    2.44 % AddinModule..ctor - 1142 ms - 1 call - AddinByWizard.AddinModule..ctor()
                      1.05 % ADXAddinModule..ctor - 493 ms - 1 call - AddinExpress.MSO.ADXAddinModule..ctor()
Posted 04 Dec, 2008 10:33:26 Top
Andrei Smolin


Add-in Express team


Posts: 18816
Joined: 2006-05-11
Hello Juraj,

The delay may have different reasons. All of them lie outside of the Add-in
Express code. I know this for sure because a) we examined our start-up code
too many times and b) both VSTO and Shared add-ins experience the same
problem:
- http://social.msdn.microsoft.com/Forums/en-US/vsto/thread/02fbc3be-02f3-45b0-a6d0-05767a58d9e8
- http://social.msdn.microsoft.com/Forums/en-US/vsto/thread/9ef75426-7736-4d7e-af9d-8900397e70cf/
-http://social.msdn.microsoft.com/Forums/en-US/vsto/thread/235732b9-00ee-40e7-b0ae-ff7cc7c96713/

In your case, the delay occurs when the loader calls CreateInstance in the
following code:

  
IfFailReturn(CreateLocalAppDomain());        
IfFailReturn(m_pLocalDomain->CreateInstance(CComBSTR(szAssemblyName), CComBSTR(szClassName), &pObjHandle));
p_Proxy->InitManagedDisp();
WriteToLog("Unwrapping the managed class.", "");


In the code above, CreateLocalAppDomain generates the following lines in your log (and returns):

17:51:51 2716 Creating a new application domain.
17:51:51 2716 Success.


InitManagedDisp is just a pure Win32 API call.

Then why does the delay occur? Who knows.

Last August, we had a case which was resolved successfully with the help of
the following link: http://office.microsoft.com/en-us/ork2003/HA011403081033.aspx.

Earlier, we had a case when some antivirus software caused a delay.

But mostly, delays are invincible. There have been some 6-8 such cases this year.

In this post, you can find a number of reasons of an Excel 2007 slow startup: http://www.asap-utilities.com/blog/index.php/2007/07/09/fix-the-slow-startup-of-excel-2007/.

Outlook delays are described at http://support.microsoft.com/kb/q155048/.

I believe I provided all information I have on this issue.

Oh, there may be a delay at the first start of any Office application. This delay is caused by initalizing the .NET Framework.


Andrei Smolin
Add-in Express Team Leader
Posted 04 Dec, 2008 13:48:38 Top
Cs?k?s Erik




Posts: 1
Joined: 2008-12-24
Our customers reported several performance degradation after installing nternet Explorer Security-Patch MS08-078 http://www.microsoft.com/technet/security/bulletin/ms08-078.mspx - It is taking several minutes to open Outlook , Word, Excel or PPT. Are there any advices how to proceed?
Posted 24 Dec, 2008 04:57:59 Top
Andrei Smolin


Add-in Express team


Posts: 18816
Joined: 2006-05-11
Hello Erik,

You can try http://office.microsoft.com/en-us/ork2003/HA011403081033.aspx.


Andrei Smolin
Add-in Express Team Leader
Posted 24 Dec, 2008 11:38:41 Top