jwandmrsquared
asked on
Dynamically changing a library to match a version of Access
I am preparing to deploy a tool to users who have access versions ranging from 2007 to 2013. My primary development is in 2010. I've seen some code snippets that check for libraries and change the library, but none have worked for me. Does anyone have a snippet that will inventory the libraries used for the version in 2010 and change them for 2007 and 2013?
ASKER
I should also mention that I called the above module from an OnLoad event property when my Main Menu loads.
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Excellent advice Scott. Way too many professional developers forget that simple maxim.
I almost drove myself crazy (OK, I know it's only a short putt) trying to get an installation that would work in multiple environments for a product that was sold to the public. In the end, I required that they have a minimum of Office 2007 installed (we recently changed our minimum to O2010) since the app interfaced with Outlook, Word, and Excel. I do my final testing on an O2007 PC (I'm developing with A2013 currently) and have SageKey build the installation package in that version of Access.
I also toyed with distributing the Access runtime and still do but give the users an option if they have a full version of Access installed so I include two installation options. The product isn't "shrink-wrapped" so there are a limited number of installations and we do have some influence over the environment. Our policy is that you use the runtime at your own risk and the customer MUST have at least one installed full copy of Access in case we need to log in and do any work on their system remotely.
I almost drove myself crazy (OK, I know it's only a short putt) trying to get an installation that would work in multiple environments for a product that was sold to the public. In the end, I required that they have a minimum of Office 2007 installed (we recently changed our minimum to O2010) since the app interfaced with Outlook, Word, and Excel. I do my final testing on an O2007 PC (I'm developing with A2013 currently) and have SageKey build the installation package in that version of Access.
I also toyed with distributing the Access runtime and still do but give the users an option if they have a full version of Access installed so I include two installation options. The product isn't "shrink-wrapped" so there are a limited number of installations and we do have some influence over the environment. Our policy is that you use the runtime at your own risk and the customer MUST have at least one installed full copy of Access in case we need to log in and do any work on their system remotely.
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
First, Nick, thanks for confirming that I am not, indeed, crazy or incompetent. I am not a professional developer, but more of a hack with skills :)
I think I will take the advice of having the final version be published from the lowest common denominator of 2007 to avoid many of the issues. The audience for what I've done will be widespread, but small enough to be controllable, and is NOT the general public (I personally do not like dealing with the general public) but b2b users.
Thanks again!
I think I will take the advice of having the final version be published from the lowest common denominator of 2007 to avoid many of the issues. The audience for what I've done will be widespread, but small enough to be controllable, and is NOT the general public (I personally do not like dealing with the general public) but b2b users.
Thanks again!
ASKER
Public Sub CheckReference()
Dim chkRef As Reference ' A reference.
Dim foundWord As Boolean
foundWord = False
' Check through the selected references in the References dialog box.
For Each chkRef In References
' If the reference is broken, send the name to the Immediate Window.
If chkRef.IsBroken Then
Debug.Print chkRef.Name
End If
If InStr(UCase(chkRef.FullPat
foundWord = True
End If
If InStr(UCase(chkRef.FullPat
References.Remove chkRef
End If
Next
If (foundWord = False) Then
References.AddFromFile ("c:\Program Files\VBRM\MSWORD.OLB")
End If