Question : Access2007 Runtime - running an app without Office 2007 installed

Hello all,
About a year in making, I've come close to completing an app for a client who intends to distribute it. On top of the "nice-to-have" features list is compatibility of the application with Access 2007 Runtime, i.e., the ability to run it on a PC without an Office 2007 installation.
 
Anyone reading this probably knows that Microsoft has continued with their tradition of providing a runtime within which an Access 2007 app can run, albeit with some restrictions.
Using MS Access Developer Extensions, Ive converted the accdb (leaving aside accdes for the sake of simplicity, though it has the same problems) into an accdr and created an installable package. The installation runs without a problem. However, thats where the good news end. Once the file is opened on a vanilla XPPro SP3 installation, with no other software but the Access Runtime and my app, the problems begin.

Please take a look at the images and the code below to see some of the problems. To summarize, there is a host of problems with the Ribbon and the VBA code works sporadically with some of the even simplest pieces of code throwing a runtime error. In others words, the problem is not only with the ribbon and the code snippet below, even something as simple as a docmd.openform can raise a runtime error.

The strange thing is that, when I run the app via Access simulated runtime mode (with the /runtime switch), there are no problems.

That there may be broken DLL references is one of the first points that spring to mind when dealing with such problems. Ive checked, rechecked, and then checked again all the dlls installed on both (dev and target) machines to make sure that the DLLs are registered and are the same versions.

The problem with the Ribbon is emphatically- not a case of the image files missing. They are there in the directory in which the app is installed.

Finally, Ive also tried decompiling with the /decompile switch and recompiling the app before converting to .accdr. No joy.

So, whats going on? Is anyone else having such strange problems? What are your experiences with the runtime? Am I the only unhappy camper?

Thanks, and with regards,
Rusk.
Code Snippet:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
Dim rstAssemblies As Recordset
Dim lngCustomerID As Long
Dim strWhere As String
Dim lngAssemblyID As Long
Dim lngWDID As Long
 
If IsNull(Form_frmCustomerDetails.tblCustomersCustomerID) Then
    MsgBox "Cannot create assembly for an empty customer record.", , "BAT Database"
    Exit Sub
End If
 
lngCustomerID = Form_frmCustomerDetails.tblCustomersCustomerID
strWhere = "tblAssembliesCustomerID =" & lngCustomerID
 
Set rstAssemblies = CurrentDb.TableDefs("tblAssemblies").OpenRecordset
With rstAssemblies
    .AddNew
    .Fields!tblAssembliesCustomerID = lngCustomerID
    .Fields!tblAssembliesSerNum = "New Record"
    lngWDID = First_Assm(lngCustomerID)
    If lngWDID > -1 Then
        .Fields!tblAssembliesWaterDistrictID = First_Assm(lngCustomerID)
    End If
    .Update
    .Bookmark = .LastModified
    lngAssemblyID = .Fields!tblAssembliesAssemblyID
End With
Me.Requery
Form_frmCustomerList.Requery
DoCmd.OpenForm "frmAssemblyDetails", , , strWhere, , , lngAssemblyID

Answer : Access2007 Runtime - running an app without Office 2007 installed

I have made no progress on this issue. My gut tells me that I am trying to get the runtime to do things that it just was not designed for, and though the errors I am getting are certainly weird and should not be there, I have given up the quest for a solution.
Random Solutions  
 
programming4us programming4us