[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now


msaccess 2010 with msaccess runtime 2k7

Posted on 2010-11-28
Medium Priority
Last Modified: 2012-05-10
I have a new system that has office 2010 installed. I have an access app that is installed as a runtime app that was created in access 2007. when I run the app I get the error  "..missing or broken reference to the file 'MSCAL.OCX' version 7.0".
I know that this .OCX file does not ship with office 2010 but I thought that the runtime library included everything needed to run the app and would ignore any other access installation.
Question by:jsgould
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 4
  • 2
  • +1
LVL 65

Assisted Solution

rockiroads earned 400 total points
ID: 34226508
Sounds like it does not. I would of thought you might of had an installer for your access app that copies your libs and registers them

Have you tried to copy MSCAL.OCX from an existing working pc (would most likely be under windows\system32), copy it onto the new pc

you might need to register it, if so run this command in dos

regsvr32 \windows\system32\mscal.ocx

Author Comment

ID: 34226579
I use the access 2007 Packager to create a windows installer package, which creates the runtime library and installation package. then install on the office 2010 system
LVL 58
ID: 34226692
<<I know that this .OCX file does not ship with office 2010 but I thought that the runtime library included everything needed to run the app and would ignore any other access installation.>>

  It does not.  It only includes the base items needed to run Access.  The 'runtime' version is nothing more then the full version with design functions disabled.

  So anything you add to a default Access intall (like 3rd party controls), you need to include in your setup in some way.

  Beyond that, not everything that can be used with Access may be distributable legally with the runtime.  For example, if you use calls to some of the Access Wizard code, your not allowed to distribute those the runtime.

  According to the EULA, they are only usable if you have a full retail copy.

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

LVL 58

Assisted Solution

by:Jim Dettman (Microsoft MVP/ EE MVE)
Jim Dettman (Microsoft MVP/ EE MVE) earned 400 total points
ID: 34226701
BTW, in the past, MSCAL.OCX was not distributable unless you had purchased a license:

OFFXPDEV: Cannot Redistribute Calendar Control Unless You Have a Microsoft Office Developer License

  That's probably changed at this point though as starting with A2007, they started giving the runtime away for free.

LVL 85
ID: 34226882
I have not been able to find anything that says you can distribute the Calendar control if you ONLY have Access 2007. However, if you own earlier versions of the Developer Edition you will have distribution rights. Depending on exactly which of these your are using, you may alos have distribution rights if you own a copy of VB 5/6, or perhaps even one of the early versions of one of the .NET languages.

Note also that these controls will not work reliably on the 64-bit platforms.

Author Comment

ID: 34269819
This question is NOT abandoned or inactive. I have not been able to try any of the recommendations yet.

Author Comment

ID: 34438996

tried the copy and register as u suggested, but same error. any other thoughts?
LVL 85
ID: 34439037
<tried the copy and register as u suggested, but same error. any other thoughts? >

Again: Unless you have the rights to distribute this control - and there's been no indication from you that you have this right - the we cannot assist you with deploying that control. The mscal.ocx file is a copyrighted Microsoft control.

2007 and 2010 have a builtin date picker. Could you not use this instead of the calendar control?

In fact, are you certain that you need the mscal.ocx control, since your app was originally written in 2007? You can try removing the reference and compiling the project (i.e. from the VB Editor, click Debug - Compile AFTER removing that reference). Make a backup of your app before doing this, of course.


Author Comment

ID: 34439269

I'm not familiar with the "date picker". I see a calendar control 12.0 in the activex list of controls in a2007. Is this the "date Picker"?  Is it essentially the same thing and if I change to it, is it backward compatible to a2003?
LVL 85
ID: 34439451
It's not an ActiveX control. In 2007/2010, if you add a field that is bound to a Date field to a form, you can set that form control to automatically show the Date picker whenever the user enters the control:


Author Comment

ID: 34439537

Thank you!
do u have any recommendations/suggestions for 3rd party controls that are similar to mscal.ocx?
LVL 85

Accepted Solution

Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 1200 total points
ID: 34439895
The only ones that might work would be the ones from FMS (Total Access Controls). I'm not sure they work in the 2010 environment, however, and as we move into the 64-bit world you'll find that most Ax controls (which are 32-bit) won't work in that environment. Better to avoid the use of those in Access, if you're going to be working with 2010.

You can use API calls to build these, or just use an Access form that looks like a calendar: http://www.granite.ab.ca/access/calendars.htm

Author Closing Comment

ID: 34458450
Thanks for all ur help!

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes two methods for creating a combo box that can be used to add new items to the row source -- one for simple lookup tables, and one for a more complex row source where the new item needs data for several fields.
If you need a simple but flexible process for maintaining an audit trail of who created, edited, or deleted data from a table, or multiple tables, and you can do all of your work from within a form, this simple Audit Log will work for you.
In Microsoft Access, learn the trick to repeating sub-report headings at the top of each page. The problem with sub-reports and headings: Add a dummy group to the sub report using the expression =1: Set the “Repeat Section” property of the dummy…
In Microsoft Access, when working with VBA, learn some techniques for writing readable and easily maintained code.

649 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question