Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Access Runtime with VB proj

Status
Not open for further replies.

echan

Programmer
Apr 3, 2001
15
AU
1) Does anyone know the capabilities and features of Access 97 Runtime Version?
2) My problem is thus:
I have set up Access Runtime on a computer without full version of Access. There was an error in setup "comcat.dll could not register" although I don't know if this is the problem. I have compiled a VB (6.0) project as an EXE file which uses an Access database file *.mdb which is placed in the computer. The program is a simple report generating system using Pass-Thro queries thro Access to SQL server. On pressing the option of bringing up the report, the error:
"Run-time error '-2147.....'
Automation error
The object universal unique identifier (UUID) was not found."
Can anyone help me out?





 
NOt sure about the details but, in general, using VB to execute Ms. Access Reports & forms cannot be done. You CAN instantiate an instance of MS. Access, (or the MDE) which can then execute the forms and reports - but you would then need to use something like DDE to send messages to Ms. Access to tell it WHAT to do (e.g. which report to run ...)


MichaelRed
redmsp@erols.com

There is never time to do it right but there is always time to do it over
 
From your VB project, click on Project/References.

Add a reference to the Microsoft Access 9.0 Object Library
(or whatever version of the Object Library you have installed.)

In the declarations section of the VB form you use to call your Access reports, enter the following declaration:

Private MyAxs As Access.Application

In the sub routine on your VB form that you use to call your reports, place the following code:

Set MyAxs = CreateObject("Access.Application")
MyAxs.OpenCurrentDatabase("c:\path\YourDatabaseName.Mdb")
MyAxs.DoCmd.OpenReport "YourReportName"
MyAxs.Quit

I've used Access reports called from VB in dozens of applications. This should work like a champ for you. If you have any questions, let me know.

 
No
the problem is not with VB
the conflict arises when the exe is used on a PC with only runtime version of access.
hope that clarifies the problem.
 
Almost none of my users that run apps using Access Reports have any form of Access actually installed on their machines. The standard where I work is MS Office Standard Addition, i.e., Word, Excel and PowerPoint. A special request needs to be submitted to actually get Access installed. The only thing I've ever done is place the MDB on my users machine and let VB handle all the rest, so I guess I don't understand why you have installed a runtime version of Access if you are using VB as the front end.
 
Hackster,

To belabor the point. You cannot execute Ms. Access forms/reports w/o instantiating Ms. Access. If you are using the code presented above, you ARE instantiating an instance of Ms. Access. In your case, the instance appears to be on your machine (the one running the VB app). For echan to do the same, he would need to have .MDB files for Ms. Access to work with AND at least one copy of Ms. Access to instantiate.


MichaelRed
redmsp@erols.com

There is never time to do it right but there is always time to do it over
 
echan,

Sounds like you don't have the runtime registered correctly. Package & deployment wizard should take care of it, but you can try this:

For each suspect support file, i.e. Comcat.dll, run
Regsvr32 <filename> on the client.(Check MsJet35.dll)

Check your documentation for the distribution license.

-Don



 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top