Link to home
Start Free TrialLog in
Avatar of Turkle112
Turkle112

asked on

ActiveX error on network computer

I have created an application that access an Access 97 database, to search add/update/delete records. I converted the program to a .exe. Then placed it on the main computer. The program works fine from this computer which is running XP. I placed the application in a shared folder on the network because two other computers need to access this application. Again it works fine on the main computer running XP. The other two computers are running Win 98 and do NOT have MS Access installed on them. The program was built in VB6 on my Win 98. But when I go to the shared folder from the network computers (the win98's)I get an error 429 "ActiveX component can't create object" How do I fix this. I have alreay install the VBrun60sp5.exe service pack on one of the computers and still I get the error. Any immidiate help would be greatly appreciated!
Avatar of arbert
arbert

You must also distribute the Jet engine and all the associated DAO (and possible ADO/MDAC) to the client machines.  These MUST be installed locally on all machines so the registry entries can be made.

You can use the distribution wizard that comes with VB to find most of the DLLs that you need to distribute, but I've had that hose many systems.  You're better off to get something like InstallShield to assist you with deployment.


Brett
get a copy of MDAC_typ.exe and install this. You can find it at
Program Files\Microsoft Visual Studio\VB98\Wizards\PDWizard\Redist

Be aware of the version. VB6 ships with MDAC 2.0
Today MDAC 2.7 is the current version

So in my opinion arbert was right.
Avatar of Turkle112

ASKER

I installed VB6 MDac 2.7 on one of the client machines as well as on the main computer. I am still getting the same error. Any other suggestions will be much appreciated!
You really need to see what other dependencies the VB project is using and distribute and register those on the clients!  Error 429 usually means that a DLL isn't registered....

Brett
Ok. Need more info to support.

Did you?

Run the Package and Deployment wizard from scratch?
Create a setup program?
Run the setup program?
Used third party controls? Got the licences right

create a shared folder for you database?
covered access rights from W98 to Networkfolder

In what way are you connecting to your database?(native driver or DNS)

Is your connectstring hardcoded or external configurated?
Did you use the data environment(oeps)
Did you use datacontrols(oeps)



I do not know which .dll files are missing.

As far as the P&D wizard I didn't use either. I never have, because I have heard that it's not that great. (note: I have never had this much trouble transfering a program to a another computer.) All I do is create the .exe file and copy that along with the database to a disk then copy from there to the computer it's for. (another note: No expert in VB, only a little basic knowlegde picked up in a 5 week class)

The database and .exe are on the main computer in a shared folder that is (of course) shared with the two client machines. The database was converted from an Access 2000 DB to an Access 97 DB.

Code for the ADD FORM:

Option Explicit
Dim answer As Integer
Const DBName As String = "MACS.mdb"
Dim strPath As String
Dim db As Database
Dim rsMembers As Recordset
Dim strSQL As String

Private Sub Form_Load()
strPath = "C:\Documents and Settings\AllUsers\Documents\Application\"
'open the database
Set db = OpenDatabase(strPath & DBName)
'open the recordset
Set rsMembers = db.OpenRecordset("memberdata")    
End Sub

private sub cmdAdd_click()
If answer = vbYes Then
   
'adding record and clearing form
strSQL2 = "INSERT INTO memberdata(firstname, lastname, street, city, state, zipcode, email, dob, DL_STATE, drivers, JOIN_DATE, comments_notes, comments, barred, signature)"

strSQL2 = strSQL2 & " Values('" & txtFirst.Text & "', '" & txtLast.Text & "', '" & txtStreet.Text & "', '" & txtCity.Text & "', '" & txtState.Text & "','" & txtZip.Text & "', '" & txtEmail.Text & "', '" & txtDOB.Text & "', '" & txtDstate.Text & "', '" & txtDrivers.Text & "',  '" & txtJDate.Text & "', '" & txtComments.Text & "', '" & chkCom.Value & "', '" & chkBar.Value & "', '" & chkSig.Value & "');"
   
db.Execute (strSQL2)

MsgBox "New Member has been added!", vbInformation, ""
    Me.Hide
    Unload Me
End If
end sub

I am at my wits end here and I just know it is something so simple that I am missing. Thank you guys for all the help!
Ok, you said


"I installed VB6 MDac 2.7 on one of the client machines as well as on the main computer. I am still getting the same error. Any other suggestions will be much appreciated! "


Did you also install the new JET engine?  MDAC 2.7 requires the installation of the new jet database engine (for DAO that is).


Download it here:

http://www.microsoft.com/downloads/details.aspx?FamilyID=af693865-2bab-4ae5-b001-42840473ef39&DisplayLang=en


Also, this link points you to the MDAC component checker to see what level of MDAC is installed and if it's installed correctly:


http://www.microsoft.com/downloads/details.aspx?FamilyId=8F0A8DF6-4A21-4B43-BF53-14332EF092C9&displaylang=en



Brett
Thanks Brett, I'll give that a try and see what happens
ASKER CERTIFIED SOLUTION
Avatar of PhiliP
PhiliP

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
Turkle112:
This old question needs to be finalized -- accept an answer, split points, or get a refund.  For information on your options, please click here-> http:/help/closing.jsp#1 
Experts: Post your closing recommendations!  Who deserves points here?
Avatar of DanRollins
Moderator, my recommended disposition is:

    Accept arbert's comment(s) as an answer.

DanRollins -- EE database cleanup volunteer
NoNo Give the point to AzraSound He needs them to keep his first place.

HaveFun PhiliP