Time delay of minutes when ActiveX control is loaded

G

Goran

I am using the Visio 2003 ActiveX control in a .NET 2.0 application.
The problem is a time delay of minutes on certain computers when the Visio
2003 ActiveX control is loaded. Probably caused by the control trying to
access the internet and waiting for response.

The problem does not arise when there is no network connection or access is
blocked by a software firewall.

How can I disable internet access for the ActiveX control? Or is there an
alternative solution to not have the Visio control locking my application.

Best regards

Goran
 
C

Chris [Visio MVP]

Are you loading a document with links?

How about just setting AxVisCtrl.Src = "" as a test?
 
A

Al Edlund

I haven't seen visio controls try to access the network. I have seen net 2.0
applications bring up an SVCHOST module though that appears to do DNS calls.
I'd suggest you might want to check your initialization code to see what
kind of queries happen before you open the form/host.

al
 
G

Goran

Thanks for your answer

Actually the locking happens when the Visio-control itself is initialized,
not when the drawing is loaded with AxVisCtrl.Src = "mydrawing.vsd".

In my C# application the waiting starts at the designer generated code below.

((System.ComponentModel.ISupportInitialize)(this._visioControl)).EndInit();

I also did a search for ".Src" in the designer generated code to be sure
that it is not assigned before the code above is executed.

The line of code also triggers my software firewall. If I don't deny or
allow the Visio-control internet access manually, I have to wait for approx
15 seconds on my computer before the drawing surface appear. However, on my
customers computer I had to wait for minutes (worst case so far).

Goran
 
G

Goran

Thanks for your answer. It made me investigate further:

* Created new Windows application project in VS 2005
* Built the application and executed it outside VS. The Form1 is displayed
without triggering my sw firewall.
* Added the "Microsoft Visio 11.0 Drawing Control" to the Form1.
* Built the app and executed it outside VS. The firewall is triggered. My
app is trying to contact crl.microsoft.com.

The conclusion is that it must be the Visio control trying to verify if the
certificate has expired or not. To this I found a solution elsewhere on the
net. It solves the problem globaly in Windows. Even if I can live with that
solution I would still like to stop the Visio control from accessing the
internet locally in my app. Any suggestions?

Below is the solution to stop Windows from trying the verify if a certificated
drivers certificate has expired or not:

* Start Internet explorer and click... Tools | Internet Options

* Click the Advanced tab, then scroll down to Security:

* Uncheck the boxes that say "Check for publishers certificate revocation"
and "Check for servers certificate revocation" (may require
restart)
 
A

Al Edlund

that would explain why I had not seen it, I have turned certificates off for
other reasons. As far as getting MS to change that maybe we could get it
added to the posted wish list since it obviously has severe performance
issues.
al
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top