Link to home
Start Free TrialLog in
Avatar of jpgeorge
jpgeorge

asked on

Access 2003. Microsoft Office Document Imaging Viewer Control ocx fail with "There is no object in this control"

I'm using the ocx "Microsoft Office Document Imaging Viewer Control" for displaying faxes in an Access 2003 form.

Since one week the ocx fail to show anything (on all the pc I test). Accessing the ocx from vba code give the following error message : "There is no object in this control".

I tried to register MDIVWCTL.DLL (the ocx file) without success.

Office 2003 is patched with SP3 and the last autoupdate patches.

Does have anybody any idea ?

Thanks for your help
Avatar of Gustav Brock
Gustav Brock
Flag of Denmark image

You may have met the pleasures of the "Compatibility Flag". These are listed in the registry:
HKLM\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\

It is about how Internet Explorer blocks many ActiveX (OCX) controls in Access 2003+.
The error message in Access is that "Access doesn't support this control" or that "object cannot be found" or a similar useless message.

So how to deal with this if a long running application refuses to run?
On your machine 500+ controls may be listed but only by their GUID.
This excellent tool, ActiveXHelper, comes to rescue:

  http://www.nirsoft.net/utils/axhelper.html 

On Vista you, of course, have to run it as administrator.

/gustav
Avatar of jpgeorge
jpgeorge

ASKER

Not this time :-)

I tested with the program you provide a link to and the control is "enabled" and without missing file.



Then the only options left are some licensing issue or that it shouldn't be registered properly in your app.

Go to Tools, References and check that no one is marked MISSING. If so, correct; if not, remove a reference and add it back.

/gustav
No reference is marked as missing, and I had already tested removing / adding the reference without luck.

I also tried to make a new database, create a form, drop the control and open the form. It's enough to have the error message : "There is no object in this control".

I also regsvr32 all the dll in C:\Program Files\Common Files\Microsoft Shared\MODI\11.0 without much success.

I also add that this problem on all the pc which use this program (~10).
Last line of my previous comment must read as:

I also have this problem on all the pc on which this program is used (~10).
It may not be enough to register the control. If part of MS Office, a repair of the installation may be needed.

Still, the most likely thing is that the machines have had IE updated and the compatibility flag has been set.
I would doublecheck the setting in the registry. Note you need admin rights to modify.

/gustav
Thanks for your help.

OK, I will double check the compatibility flag and try a repair, but will need some time to do it.
The activex control "Microsoft Office Document Imaging Viewer" (GUID : {EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}) doesn't appear in HKLM\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility. So shouldn't have been blocked by ie.

Office 2003 Repair doesn't solve the problem either.
Strange. The controls doesn't seem to exist in the registry at all.

I created a simple form with the control with no issues.

The control exists as well as a separate download:
http://www.microsoft.com/downloads/details.aspx?FamilyID=8f93e445-b1cf-4477-a373-e17417d616bc&displaylang=en

Apart from that I'm out of ideas.

/gustav
Try cutting then pasting the control back in.  You will often see this message when there is a versioning problem.  I'd also make sure you only have one instance of the lib and it's the one that is registered.
JimD.
@Gustav

The control exists in the registry under HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}.

My DLL version is 11.0.8166.2, what's your working one ? Maybe the last patch from ms broke it ?

The link you provide give only two html files, it's only documentation on the use of MODI.

Out of ideas too ...
@JimD

As stated above I tried to create a new database, with a new form, and the non working control without success ... So cut and paste could have been a solution, but not in this case.

I made a search of MDIVWCTL.DLL and find three:
one in C:\Program Files\Common Files\Microsoft Shared\MODI\11.0 (registry confirmed that's it's the used one)
one in C:\WINDOWS\Installer\$PatchCache$\Managed\9040110900063D11C8EF10054038389C\11.0.5614
and on in C:\WINDOWS\Installer\$PatchCache$\Managed\9040110900063D11C8EF10054038389C\11.0.8173

The last two are used by office installer so I hope they are safe to keep (at least they are unsafe to delete ...).

Thanks for your suggestion.

As it's 9PM, I hope that tomorrow will come with solutions !
Yep, it is there, but it is version 12 as you can see.
Don't know why the search didn't reveal it first time.

My versions are:
11: 11.0.8166.2
12: 12.0.6421.1000

Both can be referenced. However, in design mode ver. 12 is used, I guess, since it is the registered version.

/gustav
Windows Registry Editor Version 5.00
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}]
@="Microsoft Office Document Imaging Viewer Control 12.0"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\AuxUserType]
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\AuxUserType\2]
@="MODI Viewer"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\AuxUserType\3]
@="Microsoft Office Document Imaging Viewer Control"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\Control]
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\InprocServer32]
@="C:\\PROGRA~1\\FLLESF~1\\MICROS~1\\MODI\\12.0\\MDIVWCTL.DLL"
"ThreadingModel"="Apartment"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\Insertable]
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\MiscStatus]
@="0"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\MiscStatus\1]
@="131473"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\ProgID]
@="MiDocViewer.MiDocView.1"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\Programmable]
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\ToolboxBitmap32]
@="C:\\PROGRA~1\\FLLESF~1\\MICROS~1\\MODI\\12.0\\MDIVWCTL.DLL, 101"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\TypeLib]
@="{A5EDEDF4-2BBC-45F3-822B-E60C278A1A79}"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\Version]
@="12.0"
 
[HKEY_CLASSES_ROOT\CLSID\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}\VersionIndependentProgID]
@="MiDocViewer.MiDocView"

Open in new window

Well, I tried on my Vista machine with A2007 to add the Compatibility Flag for the control and that does take control.

Try to add the key below. When the value is set as shown (0) the control is operational; when set to 400 it is blocked.

/gustav
Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{EF347A62-BA21-42E4-94A0-1C0A6D7FDFE7}]
"Compatibility Flags"=dword:00000000

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of Graham Mandeno
Graham Mandeno
Flag of New Zealand image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Security update KB973507 is installed on my machine so at least in some cases its presence has no impact.

Could it be that security in your IE is set to block any and all ActiveX components?

/gustav
Hi Gustav
No, my IE certainly allows ActiveX components.  I'm waiting to see if someone at MS can confirm/deny this theory.  
I know it worked for me
  • create form with MDIVWCTL - it works
  • install KB973507 - it breaks
  • uninstall KB973507 - it works again
--
Cheers,
Graham
Interesting. However, I had George's IE in mind.

/gustav
Hi Graham

Removing KB973507 solved the problem on my pc !

I still have to check on the pc of my customers to be sure. I will do this test tomorrow.

JP
Hi Gustav,

Thanks for your help.

Just for the record.

I'll try to add ActiveX compatibility flag as you said, but it doesn't make any good.

Maybe it works on your pc, because your use Vista with Office 2007 and 2003. So the activex you used was the one of Office 2007 and was not break by KB973507.

I'm still using WinXP and Office 2003, so maybe KB973507 breaks the activex only in this situation.

JP
No, on my IntelliStation at work I have WinXP with all updates including KB973507 and Access 2003 (well, in fact any version between 2.0 and 2007) and IE8.

Did you check the ActiveX settings in IE?
Which version of IE do you run?

/gustav
Hi JP
Excellent!  I'm glad to have been able to help out.
I'm not generally a fan for uninstalling security patches, but I can't see a way around this one... yet!
I haven't been around EE for long enough to know for sure, but I guess I can post back here if a solution turns up, even after the question is closed.  I assume the solution will be in the form of an Office update.
--
Graham
You can. Please do.

/gustav
HI Gustav,

I'm using IE 8.

I made some tests:

Remove KB973507
Control is working
Added the HKLM\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\Compatibility Flags with value of 0x400 (to break it)
Control is not working (as expected)
Change the value of the Compatibility Flags to 0
Controls is working
Install KB973507
Control is not working
Check that the compatibility flag is still set to 0. It is.
Add the value HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Ext\Stats\{CLSID}\iexplore\AllowedDomains\* (as written in the pdf you linked to)
Control is not working
The error message is always the same : "There is no object in this control"

I never had a chance to see the control in IE8.ManageAddOns.

So if I understand it well, you have two pcs, one with vista, the other with xp. Both have at least Access 2003 and Access 2007. Both use version 12 of the control.

So I think that version 11 is broken with KB973507 and version 12 works.

I made more or less the same test on 3 customers pcs, which used IE 6 (which I upgraded to IE8 after tests), IE 7 and IE8.

All those pcs used WinXP and Office 2003.

Removing KB973507 on all pcs solved the problem. I agree with Graham that it's not a so great solution, but I think it will be the right one for the moment until MS provides a patch for Office.

Thanks for your help.

If I have news I will post them here.
Complete is partially, beacause it consists of uninstalling a patch. So hopefully another patch will make the answer complete
> So I think that version 11 is broken with KB973507 and version 12 works.

That seems likely.
Thanks for the feedback.

/gustav