Welcome to WebmasterWorld Guest from

Forum Moderators: ocean10000

Message Too Old, No Replies

ActiveX and MS-SQL clash on the same server

1:36 am on Mar 25, 2013 (gmt 0)

Preferred Member

10+ Year Member Top Contributors Of The Month

joined:May 27, 2005
posts: 428
votes: 3

We have an app that takes a screenshot of web pages and creates a resized image. The app is basically loading a web page that calls an ActiveX to load a web page using IE resources and take the screenshot. This app has been running on a Windows Server 2003 without any problems for a couple of years.

But now that we have upgraded to Windows Server 2008, the screenshot action is timing out. From tests I can see that it successfully takes a screenshot of any web page hosted on the Internet... but it is failing when capturing any pages hosted on the same server that call MS-SQL.

From testing I have narrowed down the reason for failure being due to the page being populated from a MS-SQL database record on the same server as the one taking the screenshot. The same page generated on a remote server captures ok. I have further established that the error is not peculiar to the ACASystems DLL that we use because it also affects another DLL for creating MHT files from web pages. This DLL (Chilkat.MHT) also uses IE to load and assemble the web page on the fly and then saves it as a.mht file.

Any ideas as to what can be causing this and how to fix it?
5:03 am on Mar 25, 2013 (gmt 0)

Full Member from NZ 

10+ Year Member

joined:July 28, 2003
posts: 309
votes: 6

Could it be that the application pool has "Enable 32 bit apps" set to False and this is a 32 bit apps?

Is the domain name set to on your hosts file? Otherwise the browser might resolving the domain to the public IP and having problems reaching it...

Also, off topic, but I would consider loading a web page (even your own) a security risk. It would be better to have this running on a separate server.
5:44 am on Mar 25, 2013 (gmt 0)

Preferred Member

10+ Year Member Top Contributors Of The Month

joined:May 27, 2005
posts: 428
votes: 3

The capture DLL and site are all set to 32-bit. There is no conflict there because the DLL will capture a page on its own site when that page does not call MS-SQL. It's only when the page to be captured is being populated from SQL an query.

I did this afternoon find a work around for this problem. What I did was populate a form from the database and then submit all page input via the form. So the page that assembles and captures the result no longer queries against the database. Instead it populates the page from request input. This seems to work.

But It would be nice to know what the issue is. This same app and site have been running on Windows Server 2003 for 4 years without a problem.
11:41 pm on Mar 25, 2013 (gmt 0)

Preferred Member

10+ Year Member Top Contributors Of The Month

joined:May 27, 2005
votes: 3

There is no solution for this without editing the ActiveX code. Since the DLLs in question are third party resources, such editing is not possible.

After testing 3 different ActiveX that load a web page that either take a screenshot or save as .mht, it was found that they all failed when loading a page that was querying SQL on the same server. After contacting the 3 DLL developers we were informed by all of them that their ActiveX has no impact on MS-SQL.

Unfortunately, our tests tell us otherwise. At this stage we are left guessing however this article about in-process vs out-process execution may be related... [consultingblogs.emc.com ]

The workaround for us to solve this problem was to assemble the page to be captured from request queries passed to the page rather than populate from SQL queries. This alternate works perfectly.

Join The Conversation

Moderators and Top Contributors

Hot Threads This Week

Featured Threads

Free SEO Tools

Hire Expert Members