in

SharePoint Blogs

The Best Place for SharePoint-related Blogs

The Mossman

Adventures in Sharepoint 2007 Customization

Fixing the name.dll ActiveX Problem the Mossman Way

Have you seen this message on public facing SharePoint sites:

The Web site wants to run the following add-on: 'Name ActiveX Control' from 'Microsoft Corporation'. If you trust the Web site and the add-on and want to allow it to run, click here...

For an example of one (at least until they fix it), check out:

http://www.mseventseurope.com/teched/07/itforum/content/Pages/Default.aspx 

There are quite a few nice examples of internet facing SharePoint 2007 sites on the interwebs these days, however many of them seem to be plagued by this minor annoyance that seems to have slipped through the Microsoft cracks. The problem is compounded by the fact that most developers won't even notice the issue until their portal is available to internet users. This is due to the fact that the problem is seen only in Internet Explorer 7 and only when you are visiting a WSS v3 website that is NOT in your trusted site list for IE. You will not see the message most of the time in your local environment because, by default IE knows you are visiting an intranet site and auto-magically puts the site in your trusted list... then as soon as you visit the site with an external domain name, boom, your see the warning pop up.

Apparently, SharePoint is trying to access "Presence" information that is available in Office, and for some reason they decided to name this ActiveX "name.dll", which really couldn't sound more like a trojan horse. Asking for more information on the ActiveX control doesn't help either. Most end users get immediately turned off to your website, and generally its just not a very professional way to present your portal.

So, I'm sure your thinking "Mossman, how do I correct this problem?" Microsoft has a knowledgebase article on the topic here: http://support.microsoft.com/kb/931509. But, at least for me, this never works, since the "InitNoPresence.js" seems to always load after my custom .js in a SharePoint publishing site. What I do instead is include my own custom javascript file in the PlaceHolderAdditionalPageHead of my master page which overrides the offending out of the box javascript line. This ensure2 that our javascript is always loaded last in the chain (which is key). I have no idea if this is an approved way of tackling the problem, but it effectively does the same thing described in the kb article, only it actually works. So, without further fanfare, I will show you my code. You are free to use it in your sites but please leave in my comments.

In your master page, place a reference to my custom javascript file in your <head> section after a PlaceHolderAdditionalPageHead, like this:

<head runat="server">
    <asp:ContentPlaceHolder id="PlaceHolderAdditionalPageHead" runat="server"/>
    <script type="text/javascript" src="/_catalogs/masterpage/custom_activex_override.js"></script>
</head>

Now upload the following javascript file to the "_catalogs/masterpage" directory of your SharePoint site. Also, you might as well Publish and Approve the uploaded file as well (since anonymous users won't be able to see it otherwise).

custom_activex_override.js

Basically, this javascript file overrides the out of the box "ProcessDefaultOnLoad" and comments out the call to "ProcessImn()" which causes the ActiveX to be called.

Please, feel free to try it out and let me know if you experience any problems or if you have any suggestions on better ways to tackle this problem.

 

Comments

 

Michael Gannotti said:

Great post. Just referenced to it sharepoint.microsoft.com/.../Post.aspx

September 16, 2007 6:24 AM
 

Henk Hooiveld's blog said:

When you&#39;re an internet explorer 7 user and you&#39;re accessing a MOSS 2007 built internet facing

September 17, 2007 8:42 AM
 

Blogger Loser » Blog Archive » Fix for ActiveX name.dll problem said:

Pingback from  Blogger Loser  &raquo; Blog Archive   &raquo; Fix for ActiveX name.dll problem

September 17, 2007 9:10 AM
 

Blogger Loser » Blog Archive » Fix for ActiveX name.dll problem said:

Pingback from  Blogger Loser  &raquo; Blog Archive   &raquo; Fix for ActiveX name.dll problem

September 18, 2007 7:38 AM
 

Karen Breeze said:

We are using WSS 2.0 and we just had a report of an IE 7.0 user with this problem.  How would we fix this on the SharePoint server?

October 17, 2007 7:12 AM
 

mossman said:

Karen, I'm not sure what to tell you on that one. I've never used WSS 2.0 but its my understanding that it does not have master pages... so I don't think my fix will work for you.

November 4, 2007 12:12 AM
 

Steve Walsh said:

Hey, thanks for this! I tried the Microsoft KB and was getting JavaScript errors. Tried your way and bang it worked perfect. Thanks for this fix!

January 6, 2008 2:49 PM
 

Dave Ginn said:

SharePoint 2007 Name ActiveX Control in IE7

January 26, 2008 1:16 PM
 

The Mossman said:

Dave Ginn recently tried out my name.dll fix ( read more about it in my previous post ) and ran into

January 28, 2008 8:17 PM
 

Michael Ciba said:

This works a treat the only thing I have found is that you must make sure you place a reference on your master page to the init.js file and then reclare your override after it, or moss will add a reference to the init.js after your override file and foil all your changes.

February 22, 2008 10:58 AM
 

Ancient Order of SharePoint Benders » Blog Archive » SharePoint 2007 Name ActiveX Control in IE7 said:

Pingback from  Ancient Order of SharePoint Benders  &raquo; Blog Archive   &raquo; SharePoint 2007 Name ActiveX Control in IE7

March 3, 2008 9:12 PM
 

Ancient Order of SharePoint Benders » Blog Archive » SharePoint 2007 Name ActiveX Control in IE7 said:

Pingback from  Ancient Order of SharePoint Benders  &raquo; Blog Archive   &raquo; SharePoint 2007 Name ActiveX Control in IE7

March 3, 2008 9:12 PM
 

Denjoh said:

I am experiencing the same problem with IE6. It doesn't prompt to install the activex but each time the page loads I get a javascript error "Library not registered".

March 13, 2008 6:06 AM
 

Skiblezyryonk said:

What is "Presence" information, and why would anyone want to allow SharePoint to gather it from their system? I haven't found any detailed info about what Microsoft's name.dll actually does, but I found information about a trojan named name.dll, so for all the average user knows, SharePoint could be asking them to install a trojan. The real problem here is IE7's information bar not giving the user the option to permanently deny the site access to install that ActiveX control.

April 3, 2008 8:45 PM
 

Ancient Order of SharePoint Benders » Blog Archive » SharePoint 2007 Name ActiveX Control in IE7 said:

Pingback from  Ancient Order of SharePoint Benders  &raquo; Blog Archive   &raquo; SharePoint 2007 Name ActiveX Control in IE7

April 11, 2008 11:38 PM
 

Ancient Order of SharePoint Benders » Blog Archive » SharePoint 2007 Name ActiveX Control in IE7 said:

Pingback from  Ancient Order of SharePoint Benders  &raquo; Blog Archive   &raquo; SharePoint 2007 Name ActiveX Control in IE7

April 11, 2008 11:38 PM
 

Corey's .NET Tip of the Day said:

I am astonished with how many public facing SharePoint sites are out there without this problem fixed

May 5, 2008 1:38 PM
 

Mirrored Blogs said:

I am astonished with how many public facing SharePoint sites are out there without this problem fixed

May 5, 2008 3:03 PM
 

jo said:

I got the Microsoft fix to work.  I think it may be that in their sample they just have the function line commented out - I commented (added // to) each line.

Hope it helps.  Thanks for the post!

June 12, 2008 8:14 PM
 

The hoops of Internet-enabling a SharePoint site - Part 2 | blog.jesskim.com said:

Pingback from  The hoops of Internet-enabling a SharePoint site - Part 2 | blog.jesskim.com

July 13, 2008 7:34 AM
 

Geoff said:

Jo said:

"I got the Microsoft fix to work.  I think it may be that in their sample they just have the function line commented out - I commented (added // to) each line.

Hope it helps.  Thanks for the post!"

That was exactly the problem with mine. Otherwise I was receiving the error "return statement outside of function".

Thanks!

July 15, 2008 11:45 PM
 

Gianfranco said:

It works fine! thanks!

August 7, 2008 4:35 AM
 

Rik said:

I was able to use this solution but I did need to chance the placement of the call to the javascript, so that it appears below the init.js script in the source.

the init.js call appears in the body of the page, so i just moved this line of code: <script type="text/javascript" src="/_catalogs/masterpage/custom_activex_override.js"></script>

just below it.

Works like a charm!

September 3, 2008 10:11 AM
 

Karl said:

Thanks! This worked for me!

September 19, 2008 7:19 AM

Leave a Comment

(required )  
(optional )
(required )  
Add

About mossman

The Mossman: Heroic Spy and Master of Camouflage. With his 'fur' of forest green, he fools & frustrates the wicked foe.

Need SharePoint Training? Attend a SharePoint Bootcamp!

Posts (c) their respective authors. Everything else (c) 2007 SharePoint Experts